Commit Graph
692 Commits
Author SHA1 Message Date
Tor Hedin Brønner ccbd44e3ff workspace menu: Always update the text color
We need to connect the Ste.Entry.clutter_text actor here.
2018-05-15 22:37:17 +02:00
Ole Jørgen Brønner 11a37af93d Create and destroy workspace menu on enable/disable
Lack of super.destroy() in WorkspaceMenu.destroy likely prevented previous
attempts from working properly.
2018-05-15 22:37:17 +02:00
Ole Jørgen Brønner 44237287f0 "Accept" PopupMenuEntry on <Return> (eg. set workspace name) 2018-05-15 22:37:17 +02:00
Ole Jørgen Brønner 5b60380d16 Handle renaming n'th workspace when (n-k)'th workspace doesn't have a name 2018-05-15 22:37:17 +02:00
Tor Hedin Brønner 88c11dadfe Add workspace menu with name and color selection 2018-05-15 22:37:17 +02:00
Tor Hedin Brønner e0f2d4b12b Fix stupid typo 2018-05-15 19:58:09 +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 846cbacffc readme: Document close keybinding 2018-05-14 15:28:09 +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 ed054062df Use window_manager::switch-workspace instead of screen::workspace-switched
The former happens earlier so is probably a better fit.
2018-05-13 13:07:41 +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 48eac9081b new window: Use correct coordinates for initial clone position 2018-05-11 14:00:12 +02:00
Tor Hedin Brønner 000881524a New minimap
Simple switcherlist styled minimap without any animations.

TODO: add fading at the edges
2018-05-10 22:30:40 +02:00
Tor Hedin Brønner 3ff6570344 Fix selection highlight and reset visible windows on window-removed
Fixes the behavior of closing the last window in a workspace, where the
selection highlight would hang around. Navigating away from the workspace would
leave an empty minimap and require another keypress to make the intended action.
2018-05-10 22:30:40 +02:00
Tor Hedin Brønner 5a9663bce8 Ugly fix for label position 2018-05-09 23:55:09 +02:00
Tor Hedin Brønner 7bda057d6f Actually destroy the minimap actor
This might've been the cause of a performance bug.
2018-05-08 19:55:58 +02:00
Tor Hedin Brønner ba5db56c9d Always show the window selection chrome 2018-05-08 15:27:00 +02:00
Tor Hedin Brønner 24ee62d5c9 Make startup somewhat less noisy 2018-05-08 15:27:00 +02:00
Tor Hedin Brønner 44c8ff4f93 readme: Document winprops 2018-05-08 14:36:39 +02:00
Tor Hedin Brønner 0ed309fa18 Use 'tile-preview' style for selected window highlight
Might be a bit subtle, but works better as a selection, as there's a background
color (somewhat transparent).

We position the highlight vertically from the bottom of the top bar to the
bottom of the monitor.
2018-05-08 13:32:32 +02:00
Tor Hedin Brønner 829d992b59 Highlight selected windows when browsing the workspace mru stack 2018-05-08 12:19:09 +02:00
Tor Hedin Brønner 8dd4fcb82d ClickOverlay: Use button-press-event to activate windows
More reponsive than release
2018-05-08 12:19:09 +02:00
Tor Hedin Brønner a8efb66aa5 Force ensure on all workspace switches
Also don't emit 'move-done' if we've looked in the workspace stack.
2018-05-08 12:19:09 +02:00
Tor Hedin Brønner b236636af5 Increase the cloneContainer clip and background size 2018-05-08 12:19:09 +02:00
Tor Hedin Brønner e2f0b84ce7 Only create a single minimap 2018-05-07 14:15:47 +02:00
Tor Hedin Brønner ff4c7180ba navigator: Use the space mru to navigate workspaces
Access the spaces using a straight mru list, instead of through the awkward
`multimap.minimaps[i].space`.

Also move the rest of `_init` into `_initialSelection`, leaving the absolutely
bare minimum (`_switcherList` is required before `_initialSelection` is run).
2018-05-07 14:14:06 +02:00
Tor Hedin Brønner 05111f1266 Remove ugly early return when the space isn't fully filled up 2018-05-07 14:14:06 +02:00
Tor Hedin Brønner 46203848d9 Add selected window highlight 2018-05-07 13:47:54 +02:00
Tor Hedin Brønner 0f086909fe Actually fix new window animation
In the case a new window didn't already receive focus, giving it focus after
having moved the frame would immediately show the WindowActor.

Instead we always run ensure with force on new windows, marking them as moving.
Making it unnecessary to add special handling in the focus handler for new
windows.
2018-05-06 13:39:17 +02:00
Tor Hedin Brønner 2d9c425b22 Fix new window animation regression
Calling ensure without force made the WindowActor immediately show itself, which
killed off the animation of the clone.
2018-05-06 12:48:28 +02:00
Tor Hedin Brønner 711fc67229 navigator: Remove obsolete code 2018-05-05 13:21:36 +02:00
Tor Hedin Brønner e521865888 ensureViewport: Don't animate if we're not moving the window 2018-05-05 13:21:36 +02:00
Tor Hedin Brønner fb4dfd1985 Let the Space::move-done signal take care of showing WindowActors
We store windows that should be visible, ie. their WindowActor should be shown,
in a `Space.visible` array. When done with animation we emit `move-done` and the
space will take care of replacing the clones with WindowActors.

Navigator integration is a bit awkward as we simply rely on a `Space.delay` to
indicate if we're in a non-moving state and can commit the WindowActors
immediately when finishing a navigation.
2018-05-05 13:21:35 +02:00
Tor Hedin Brønner 0a0812eaa1 Top bar: set correct space label position
Also use bold style for the workspace label to match the style of the top bar.
2018-05-05 13:21:35 +02:00
Tor Hedin Brønner aeabb3d43f move: make some room 2018-05-04 16:44:03 +02:00
Tor Hedin Brønner 51ea4123f4 Always disable unredirection when navigating 2018-05-04 16:44:03 +02:00
Tor Hedin Brønner f5bdbe92cd Reset oldSpaces after use 2018-05-04 16:44:03 +02:00
Tor Hedin Brønner afa17072eb sizeHandler: use correct coordinates 2018-05-04 16:43:59 +02:00
Tor Hedin Brønner ffc0b58002 Fix stack levels on disable
This makes controlled restarts a bit nicer, while keeping the reasonable
placement heuristic in case of an «uncontrolled» restart.
2018-05-03 20:50:52 +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 42e726cceb Center wide windows when larger than 90% of the monitor width
There's no reason to reference the hardcoded stack_margin here
2018-05-03 20:49:20 +02:00
Tor Hedin Brønner bb34c34aaf Rename badly named stack to its negation visible 2018-05-03 20:49:20 +02:00
Tor Hedin Brønner 8d3ae51728 Only raise after focus 2018-05-03 20:49:20 +02:00
Tor Hedin Brønner db6252fe54 user.js: Add mode decoration 2018-05-03 16:01:19 +02:00
Tor Hedin Brønner 53c1d62cfe Add readme 2018-05-03 15:00:56 +02:00
Tor Hedin Brønner c6a23ed634 navigator: prevent complaining about finalized actor
See:
https://gitlab.gnome.org/GNOME/gnome-shell/blob/master/js/ui/switcherPopup.js#L302
2018-05-02 19:04:59 +02:00
Tor Hedin Brønner 15d21d35ac Reset the left/right clickoverlays when showing the scratch layer 2018-05-02 17:03:57 +02:00
Tor Hedin Brønner 2a01db6f48 new window: Hide the window actor
This avoids animating the window across the monitor.
2018-05-02 13:31:15 +02:00
Tor Hedin Brønner 92e9209518 minimap: Guard against realWindow being null
For some reason this can now trigger a whole bunch.
2018-05-02 11:14:24 +02:00
Tor Hedin Brønner c80a8df1ad Show the minimap on the active monitor
There's a bug in SwitcherPopup where pushModal will sometimes fail on
`parent.show`. We therefor move most of the initialization to
`_initialSelection` which is run after the `pushModal` calls.

This also caused the issue where animations would randomly be blocked after a
navigation, which should be fixed now.
2018-05-02 11:02:09 +02:00