Commit Graph
86 Commits
Author SHA1 Message Date
Tor Hedin Brønner f011c6e0e9 Cleanup and some comments 2018-06-27 11:28:23 +02:00
Tor Hedin Brønner db19ac1376 Simply keybindings somewhat
Only use one instance of the wrapped functions.
2018-06-25 16:50:44 +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 5306316929 Add column reordering 2018-06-25 16:50:44 +02:00
Tor Hedin Brønner 49e4596e24 Add spatial navigation with arrow keys 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 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 2e23a8aa78 <Super>Home/End: activate first/last window 2018-05-29 14:22:35 +02:00
Tor Hedin Brønner 19695dfbfa disable: reset our own keybindings 2018-05-29 13:46:12 +02:00
Tor Hedin Brønner e48fef508f Restore restore-shortcuts binding 2018-05-27 21:30:25 +02:00
Ole Jørgen Brønner 39ddd6b4ca Restore built-in mutter keybindings on disable 2018-05-26 19:58:56 +02:00
Tor Hedin Brønner 6094bd46f8 Bind <Super>Up to toggleMaximizeHorizontally 2018-05-24 18:15:22 +02:00
Tor Hedin Brønner 7c70da6e66 Bind <Super>Right/Left to switch-next/previous
Don't think it's possible to rebind these keys on disable.
2018-05-24 17:52:59 +02:00
Ole Jørgen Brønner 1bc2075e84 Display notification on errors in user.js 2018-05-20 17:24:23 +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
Tor Hedin Brønner 08ba7c89df bindings: Use a custom handler on restore-shortcuts
Haven't looked at restoration at disable, but this will at least restore things
on restart.

Also remove killKeybinding and restoreKeybindings as they worked out really
badly.
2018-05-11 15:45:19 +02:00
Tor Hedin Brønner 132f0a4b3f Always run native keybinding code on enable/disable
This should avoid reverting back to default keybinding in a buggy disable/enable
cycle.
2018-05-03 20:49:20 +02:00
Tor Hedin Brønner e909e17ab6 Make it possible for the user to override eg. the close keybinding
Run module.enable after keybind setup.
2018-05-02 10:47:42 +02:00
Ole Jørgen Brønner 3b18b3882f Load rc/user-config after full init and catch errors in enable/disable
Ref: #51
2018-05-01 17:20:56 +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 839527bcdb Always log init, enable and disable 2018-05-01 15:48:01 +02:00
Ole Jørgen Brønner e394767e6c Cosmetic: snake to camelCase 2018-05-01 13:56:04 +02:00
Tor Hedin Brønner 42aedba3b6 Use var for all top level declarations to avoid warnings
We're assessing all top level declarations from outside the original scope when
we're evaluating code. So everything should be `var`.

Classes are `let` bound so we should use var for `ClickOverlay` too, but there's
a bug in gnome-shell-mode making such statements not evaluate. We therefor wait
for that to be fixed.
2018-04-30 00:03:08 +02:00
Tor Hedin Brønner 0fc371d1a7 Remove hard coded <super>Space binding 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
Tor Hedin Brønner efa637fc63 Move PreviewedWindowNavigator into new navigator module 2018-04-09 15:19:07 +02:00
Tor Hedin Brønner 83c2428507 disable -> enable: Reuse the old ordering if available
This is useful in the case of nothing changing between a disable and enable. For
instance when locking the screen. Having windows move around in that case is
pretty bad.

We do create a new spaces however as we want to support editing the `Space`
definition and getting the changes when we do a reload (this should work as long
as `Space` is an Array).
2018-04-09 15:19:07 +02:00
Tor Hedin Brønner 666aac0411 Move tiling specific enable functionality to tiling 2018-04-09 15:19:07 +02:00
Tor Hedin Brønner 769142f727 Repurpose the activity label as a worspace indicator
Introduces a topbar module.
2018-04-04 13:39:41 +02:00
Tor Hedin Brønner 2223ca20af Disable default '<super>escape' binding 2018-03-22 05:28:38 +01:00
Tor Hedin Brønner 4e5007e544 bindings: Don't overwrite already registered actions 2018-02-26 20:26:33 +01:00
Tor Hedin Brønner 9191f0677f binding: <super><shift>tab should be reversed 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 769b66307d Load rc file on enable 2018-02-25 10:36:40 +01:00
Tor Hedin Brønner fc453fb7a7 Automate module init/enable/disable 2018-02-17 21:52:46 +01:00
Tor Hedin Brønner c0a65058b8 Add a kludge module to monkey patch around gnome shell oddities 2018-02-17 21:52:31 +01:00
Tor Hedin Brønner f811dfdb33 More robust init guard
`initCount` would be reset when reloading `extension.js`, this change should
handle those cases.
2018-02-05 23:08:58 +01:00
Tor Hedin Brønner ec5c54bb49 Fix broken alt-tab binding after gdm lock
For some reason locking the screen with GDM kills the live-alt-tab binding.
2018-02-05 17:54:47 +01:00
Tor Hedin Brønner ab9d4c6a99 scratch: Add scratch toggle to alt-space menu
This makes it possible, with some work, to use a combination of above and
minimized to detect scratch windows. Leaving always visible on all workspaces
functional for multimonitor use.

As mentioned we need to use a combination of above and minimized since minimized
windows can't be above.
2018-01-11 14:11:55 +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 06ca7eecaa Pass settings object to killKeybinding
Restoration require the same settings object to be available due to the use of
Map. Indexing on the canonical name of the schema is probably a better solution.
2018-01-10 09:59:10 +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 33dd6932d3 Add kill and restore binding functions
This isn't fully robust as a crash will lose user set values. A solution would
be to store the user values in gsettings as not to lose them.
2017-12-08 09:43:44 +01:00
Tor Hedin Brønner 984791d6b7 Make paperActions non global 2017-12-05 01:59:22 +01:00
Tor Hedin Brønner 185b5a867d Move window.paperActions into init()
Since it's not possible to reload action registration it's better to have it in
init where it will never run more than once.
2017-12-05 01:20:02 +01:00
Tor Hedin Brønner 135b83d6be disable/enable: Move Tiling specific enable/disable to its own module
Use module.enable/disable.
2017-12-01 22:21:44 +01:00
Tor Hedin Brønner 1ef583dfd1 disable/enable: Fully disable stackoverlays
Also just have an enable/disable function in the stackoverlay module.
2017-12-01 21:23:13 +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
Tor Hedin Brønner 4a8b2bb045 Move binding registration to init as there's no way to disable
As far as I know there's no to disable a custom key handler, so it makes sense
to do this in init which is meant to be run only once.
2017-12-01 06:58:49 +01:00