Commit Graph

40 Commits

Author SHA1 Message Date
Tor Hedin Brønner
75e66de782 keybind: super-t take window and place at final destination
This also fixes the rather strange behavior of super-ctrl-above_tab which
actually didn't move to the previous workspace.
2019-01-09 11:51:04 +01:00
Ole Jørgen Brønner
d5a7c81895 keybindings: cycle window height <super><shift>r 2019-01-05 12:52:52 +01:00
Tor Hedin Brønner
529102add1 Add animation-time setting 2018-12-17 22:21:57 +01:00
Ole Jørgen Brønner
3927af08c3 Cleanup: remove bitrotted tile-visible action 2018-12-08 16:09:40 +01:00
Tor Hedin Brønner
719d01e1f9 Add only-scratch-in-overview setting, defaults to false
Only show scratch windows in the overview, toggled by `only-scratch-in-overview`
setting.

see discussion:
https://paperwm.zulipchat.com/#narrow/stream/174110-design/subject/limit.20overview.20to.20scratch.20windows
2018-12-06 10:02:54 +01:00
Tor Hedin Brønner
b295e9d00d Add default-background preference
Not exposed in the preference ui yet.

Can be set with dconf or in `user.js` like this:

var settings = Extension.imports.convenience.getSettings();
settings.set_string('default-background', '/path/to/image.jpg');

ref #83
2018-10-19 11:16:36 +02:00
Tor Hedin Brønner
78740e76ce Disable the hot corner by default
Having the hot corner activate the overview works rather poorly with scrolling
through the workspaces.

We disable the functionality by default. The preference `override-hot-corner`
controls the functionality, so set it to false if you want it back.

A possibility is having the hot-corner force the top bar to be visible when
a fullscreen window has focus, but it's not yet implemented.
2018-08-28 01:24:04 +02:00
Michael Mogenson
ff732d93ea Fix some minor typos/spelling in documentation 2018-08-17 16:50:06 +02:00
Tor Hedin Brønner
02eccb50db keybindings: Document center horizontally and default to <Super>C 2018-08-02 13:01:29 +02:00
Tor Hedin Brønner
800f582a0a Simplify binding summaries 2018-07-11 18:47:56 +02:00
Tor Hedin Brønner
819b0d7066 Add relocatable workspace schema 2018-07-07 21:20:58 +02:00
Tor Hedin Brønner
18b116c2c1 Don't let the selection highlight protrude into the top bar 2018-07-03 18:05:45 +02:00
Tor Hedin Brønner
895b1915cd Add our own actions for all bindings
While we might need to steal some actions from gnome, we should support using
both actions if the user wants it.

Also add all the correct default bindings to the schema, and don't touch gesettings
at all. This should make it simpler to get #66 done.
2018-07-03 17:16:21 +02:00
Tor Hedin Brønner
4c9b7706bf Rename schema path to /org/gnome/shell/extensions/paperwm/
Also add /org/gnome/shell/extensions/paperwm/keybindings

NB! This is a breaking change to any existing config.
2018-07-03 17:01:57 +02:00
Tor Hedin Brønner
d47e731aae Add slurp-[i]n/barf-[o]ut bindings
`<super>i` and `<super>o` as default bindings.
2018-06-25 16:50:44 +02:00
Tor Hedin Brønner
a079300af3 Add `switch-left/right/up/down actions
Use `Super Page_Up/Down' for workspace movement
2018-06-25 16:50:44 +02:00
Ole Jørgen Brønner
cca3038957 Center window function (with mouse warp)
I find myself centering the focus window quite often since it's more
comfortable looking straight ahead.
2018-06-21 22:21:26 +02:00
Tor Hedin Brønner
293f2d18cd Add missing <Super><Ctrl>Left/Right binding 2018-05-29 18:32:43 +02:00
Tor Hedin Brønner
50158d6f91 <Super>Up/Down: bind to workspace mru stack
Also add <Super><Ctrl>Down/UP
2018-05-29 18:30:35 +02:00
Tor Hedin Brønner
6942df947f Monitor preference changes
Introduces `prefs.js` with simple `settings::change` signal handling.

Also put workspace colors in the schema and draw them from there.
2018-05-15 16:31:01 +02:00
Tor Hedin Brønner
d23ae6f7ac Use custom handler for extra close methods
This avoids overriding the default close binding (alt-f4).
2018-05-14 15:22:57 +02:00
Ole Jørgen Brønner
ba21e6859c Implement rcfile/user-config as module (#51)
Fixes #51
2018-05-01 17:07:05 +02:00
Tor Hedin Brønner
30fa4959c4 Bind <super>Escape to toggle scratch layer 2018-04-29 23:59:23 +02:00
Tor Hedin Brønner
92d5c112fb Use native mutter actions to override keybindings
This means that we won't kill keybindings on disable (which could be worked
around) or crashes (which would be much harder to work around).

NB: it's necessary to go into dconf and restore
`switch-applications[-backward]`, `switch-group[-backward]` to get the
keybindings working again.
2018-04-29 23:57:39 +02:00
Ole Jørgen Brønner
2afbe05911 Cleanup: remove unused schema keys
Comes from the first example file :)
2018-04-15 11:23:29 +02:00
Tor Hedin Brønner
425f4077d1 bindings: Add Ctrl bindings for moving windows 2018-04-05 17:41:38 +02:00
Tor Hedin Brønner
47dc3298d7 Bind <super>above_tab to previous-workspace 2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
1e3b841f94 Add compiled schema
Makes it less likely to trigger crashes due to missing schema keys. Also makes
it easier to install for other people.
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
fa0a0db195 Add scratch window toggle
Binding `<Super><Ctrl>Escape>`.

Schema change
2018-02-25 10:36:40 +01:00
Tor Hedin Brønner
56708fee15 Super+n: Global new window binding
Add a new window action, bound to Super+n by default. This clashes with the
`focus-active-notification` so we kill it.

Schema change!
2018-01-10 10:00:03 +01:00
Tor Hedin Brønner
3d2e86fe11 Use custom action for live alt tab
We kill the regular actions which uses super-tab (and super above_tab, which is
strictly not necessary).

NB: Require schema compilation.
2017-12-08 09:44:03 +01:00
Tor Hedin Brønner
2898fb2062 bindings: Add arrow keybindings
Super-right/left to switch to the next/previous window. Same with moving the
window.

Of course these keys are already taken so might not work.
2017-12-08 07:31:55 +01:00
Tor Hedin Brønner
01a1b8428f Use custom actions for workspace movement
Since we're using mru order on the workspaces it's cleaner to just use our own
actions. In addition this might make it easier to handle enable/disable by
blanking the bindings on disable (not sure if it's possible to set the bindings
without touching dconf/gsettings though).

Schema change, so require recompilation.
2017-12-01 07:52:35 +01:00
Ole Jørgen Brønner
f0741fe543 New action: simple tiling of all partially visible windows
Tentative keybinding: <super>t

Probably need some more work to be useful: Almost fully hidden windows
should probably be excluded for instance. Could also utilize
minimum-width per window-class, historic window size, heuristics to
determine how many of the windows to tile.

The name could be better since we're always tiled in some sense.
"distribute", "reallocate", etc.

Might be that a `tile-neighbour`[1] is better, or that a couple more
resize commands would make it quick enough to allocate space more
manually:
- `expand-width`: increase the the width of the current window by the
   amount available from partially visible windows. If/when we make
   resize commands work in "super-mode" one could quickly reallocate
   space without messing up the MRU list too.
- `slurp`: squeeze the fist partially visible window fully into the
   view port, probably stealing at least some space from the existing
   windows.

[1] need two bindings though
2017-10-15 15:59:28 +02:00
Ole Jørgen Brønner
c335cb68a7 New action: cycle-width
Cycle through 3 predefined window widths

Note: if we made this a mini mode, maybe 'center' could be the first
state we cycle through? Without a mode it becomes a bit annoying to
keep track of which state we're in. eg. need to remember the original
size to cycle properly.
2017-10-14 23:54:47 +02:00
Ole Jørgen Brønner
a08d6e0be7 Some development utils: eg. update global variables command: Super-Insert
+ A function to visualize the window boxes (frame_rect and buffer_rect)
2017-09-29 16:09:40 +02:00
Tor Hedin Brønner
c4439cdaa6 Declare margin and gaps in schema
Makes it possible to customize in dconf.
2017-09-24 20:39:38 +02:00
Ole Jørgen Brønner
deb9492e9d Use our own keybinding-actions to switch next/previous window in the space
NB: The user need to reset the switch-windows and switch-windows-backward
bindings using eg. dconf-editor

See the notes.org changes for some insight in why certain things is changed.
2017-09-23 23:16:46 +02:00
Ole Jørgen Brønner
cf433f9210 Actions: move_left/right (<meta><shift>,/.)
Moves the focused window left/right in the tiling
2017-09-11 20:21:42 +02:00
Ole Jørgen Brønner
e600299a9d Custom schema (let us create new keybindings/actions)
The path to the schema dir have to be set adhoc until we create a proper
extension.
2017-09-11 18:02:55 +02:00