Commit Graph
939 Commits
Author SHA1 Message Date
Tor Hedin Brønner 6a860a7a4a selectSpace: Don't restart animations 2018-08-01 22:59:22 +02:00
Tor Hedin Brønner eac88ac2fd workspace scroll: Add smooth scroll for touchpads 2018-08-01 22:58:43 +02:00
Tor Hedin Brønner 7173f2fa15 Refactor _initWorkspaceStack out of selectSpace 2018-08-01 22:58:37 +02:00
Tor Hedin Brønner 0746432d05 workspace scroll: Intergrate properly with keybindings 2018-07-29 13:04:59 +02:00
Tor Hedin Brønner e672a86a52 navigator: Only create a single navigator 2018-07-29 13:04:59 +02:00
Ole Jørgen Brønner 5697f3a84c Bugfix: schemaless keybindings 2018-07-26 12:26:45 +02:00
Tor Hedin Brønner bad680975c layout: Center correctly
Subtract the last added gap
2018-07-24 18:20:38 +02:00
Ole Jørgen Brønner 34fd715b77 Proper disable of schema-less actions/keybindings 2018-07-23 21:59:58 +02:00
Tor Hedin Brønner 1b03c6177d Fix "Guard against moving windows while changing monitors"
`monitor.index` is a number, not a function. So the guard doesn't seem to work
as it just happened to prevent moving windows to other monitors/workspaces.
2018-07-23 18:15:38 +02:00
Tor Hedin Brønner c349e068d1 Another fix for clipping in the overview 2018-07-21 15:11:38 +02:00
Tor Hedin Brønner 051d778d78 Show the window actors when leaving the overview 2018-07-20 10:48:35 +02:00
Tor Hedin Brønner 9e97ba77c8 Avoid showing any clipping when the overview is active 2018-07-19 12:59:54 +02:00
Tor Hedin Brønner 5e89005a5d Set a max width for tiled windows 2018-07-19 10:31:17 +02:00
Tor Hedin Brønner df100d0828 Pass the navigator object to the action handler 2018-07-19 10:31:17 +02:00
Tor Hedin Brønner cea275d222 Guard against moving windows while changing monitors 2018-07-19 10:31:17 +02:00
Tor Hedin Brønner 371b9f2c0e spaces: rebuild the stack on monitors-changed 2018-07-19 10:31:17 +02:00
Ole Jørgen Brønner 164a509c10 Change workspace by scrolling over workspace indicator 2018-07-19 10:31:17 +02:00
Tor Hedin Brønner a4b827d187 Separate the navigator from the keyhandler
This makes it easier to get the standard init and destroy behavior without
dealing with the switcherpopup weirdness.
2018-07-18 23:08:23 +02:00
Tor Hedin Brønner a2b5a26838 Expose the workspace preview in Tiling.inPreview
Might not be ideal, but having it on spaces can cause trouble if ensureVievport
is called before spaces is constructed fully.
2018-07-18 23:08:23 +02:00
Tor Hedin Brønner 07ab295d28 Add move functionality to spaces.selectSpace 2018-07-18 23:08:23 +02:00
Tor Hedin Brønner 222421d694 Insert new windows into the correct space when navigating 2018-07-18 23:08:23 +02:00
Tor Hedin Brønner 6008051a39 liveAltTab: basic integration with actions 2018-07-18 23:08:23 +02:00
Tor Hedin Brønner 1529fd86f4 switch-first/last: Integrate properly into the navigator 2018-07-18 22:37:34 +02:00
Tor Hedin Brønner 3b81029533 Simple fix for the minimap 2018-07-18 22:37:34 +02:00
Tor Hedin Brønner 73b028e423 Apply actions to the correct space 2018-07-18 22:37:34 +02:00
Tor Hedin Brønner 0ed2cd32bf Refactor workspace selection from navigator to spaces
This is a bit cleaner, and makes it possible to deal with previous-workspace
etc. the same way as switch-next etc. ie. mostly handled through it's action
handler, instead of special casing in navigator.js.

Another benefit is that we now actually keep track of the workspace mru
directly, eg. empty workspaces doesn't just drop off for no reason.
2018-07-18 22:37:34 +02:00
Tor Hedin Brønner b7eda1957d Move switch-workspace handling to Spaces 2018-07-18 22:37:34 +02:00
Tor Hedin Brønner 25d9f3092f Only register actions in registerAction
enableAction is run on enable.
2018-07-18 22:37:34 +02:00
Tor Hedin Brønner f8119ae0bf Record overrides in the actionIdMap
This means we can get rid of more cases in the ugly switch in navigator.

Guard against non mutter action names, but apply the override even when we can't
get the id.

For some reason restore-shortcuts (`<Super>Escape`) returns
KeybindingsAction.NONE.

Also remove setKeybinding
2018-07-18 22:37:34 +02:00
Tor Hedin Brønner 34f3166d7a keybindings: actually record and use the actionIdMap 2018-07-18 22:37:34 +02:00
Ole Jørgen Brønner a64860bb47 Remove utils.as_key_handler 2018-07-18 22:37:34 +02:00
Ole Jørgen Brønner 39e0a68d3c Refactor switch-next/previous 2018-07-18 22:37:34 +02:00
Ole Jørgen Brønner 0b551114b3 Refactor move-left/right/up/down 2018-07-18 22:37:34 +02:00
Ole Jørgen Brønner 61290f142d Prepare for navigator refactor + refactor switch-left/right/up/down 2018-07-18 22:37:34 +02:00
Tor Hedin Brønner bc6e4da22f clickoverlays: don't show while the overview is active
fixes #72
2018-07-18 13:49:02 +02:00
Tor Hedin Brønner ef40954e20 readme: We've support shared monitors a while now 2018-07-17 11:19:46 +02:00
Tor Hedin Brønner fcaedb0004 prefs: Fix tooltip 2018-07-16 14:03:02 +02:00
Tor Hedin Brønner 2a4199029d minimap: Respect window-gap properly
There were some hardcoded values left which really should've observed the
`window-gap` preference.
2018-07-15 20:39:44 +02:00
Tor Hedin Brønner 9132979916 Add tooltip describing conflicts
Also add a reset toggle.
2018-07-15 20:35:04 +02:00
Tor Hedin Brønner cdbf2a662c Add every custom Gnome Shell handler 2018-07-13 11:40:03 +02:00
Tor Hedin Brønner ca4c78779d Only hijack needed actions when needed
We listen on the relevant schemas and redo all hijacked keybindings.
2018-07-13 11:40:03 +02:00
Tor Hedin Brønner b12bc2bb52 Add key conflict machinery to settings.js
This is the common functions needed for both the extension side and prefence UI
side, so it goes in `settings.js`.

`Settings.findConflicts` searches for keycombo conflicts between our own
bindings and the built in Gnome Shell and mutter bindings, returning an array
like this:
```
[{ name: our own action name,
   conflicts: array of conflicting names
   settings: the settings schema the conflicting are part of
   combo: the key combo as generated by keystrToKeycombo},
 ...]
```

keystrToKeycombo now handles `Above_Tab` properly.
2018-07-13 11:40:03 +02:00
Tor Hedin Brønner fc260da22d Consistently declare and use screen and display
Makes things shorter and removes language warnings of using undeclared
variables.
2018-07-12 16:14:26 +02:00
Ole Jørgen Brønner 8c39bb2e21 Filtered keybinding search (quick and dirty)
NB: get this log message when removing a binding:

  Gtk-CRITICAL **: 00:19:47.333: gtk_tree_model_filter_get_path: assertion
  'GTK_TREE_MODEL_FILTER (model)->priv->stamp == iter->stamp' failed

But it doesn't really seem to be CRITICAL.
2018-07-12 12:17:35 +02:00
Ole Jørgen Brønner cdabb978aa About section in prefs GUI 2018-07-11 22:49:00 +02:00
Ole Jørgen Brønner 0b9138294d Bugfix: prefs.js crashed on unbound actions
Worked by accident before - when the above_tab fixed was added our luck ran out
:)
2018-07-11 19:36:54 +02:00
Tor Hedin Brønner d41d6b9033 Fix duplicate workspace settings
Simplyfy things by storing all workspace settings from the get go.
2018-07-11 18:47:56 +02:00
Tor Hedin Brønner 800f582a0a Simplify binding summaries 2018-07-11 18:47:56 +02:00
Tor Hedin Brønner e6c76e26b9 Translate Above_Tab 2018-07-11 18:47:56 +02:00
Tor Hedin Brønner 8434d5b8e4 Only add new empty row if it's not already there 2018-07-11 18:47:56 +02:00