Commit Graph
1450 Commits
Author SHA1 Message Date
Tor Hedin Brønner d4d28e414b dynamic-ws: Keep a minimum number of spaces
Keep a minimum of `org.gnome.desktop.wm.preferences num-workspaces`
alive at a time.
2019-12-01 15:20:38 +01:00
Tor Hedin Brønner fe1770263c kludges: Move _checkWorkspaces to its own function 2019-12-01 15:16:03 +01:00
Tor Hedin Brønner 13729b7a61 liveAltTab: Include non-modal transient windows 34.0 2019-12-01 00:52:37 +01:00
Tor Hedin Brønner 84b281935e Clip WindowActor to the whole monitor 2019-11-25 20:02:39 +01:00
Tor Hedin Brønner b58050f7f5 Revert "insertWindow: derive existing from metaWindow.unmapped"
This reverts commit 1c5779116b.

Not entirely sure what's up here, but this triggers infinite recursion when
eg. opening the color picker from paperwm prefs.

fixes #200
2019-11-20 11:58:13 +01:00
Tor Hedin Brønner d46b7bf701 minimap: fix resizing in 3.34 2019-11-19 03:13:23 +01:00
Tor Hedin Brønner 30eb45c2cc Space.layout: emit layout 2019-11-19 02:32:09 +01:00
Tor Hedin Brønner 697f025c55 edge previews: remove after timeout 2019-11-13 15:38:27 +01:00
Tor Hedin Brønner 788c328155 sequential space navigation: Include empty workspaces
Empty workspaces are trivial to move between monitors, so include them when
navigating workspaces sequentially.
2019-11-12 23:25:15 +01:00
Tor Hedin Brønner 9eb29214a3 Fix insertion kludge
Managed to not test on my own setup...
2019-11-12 16:29:29 +01:00
Tor Hedin BrønnerandGitHub 76c2206e56 Merge pull request #115 from goodwillcoding/sequencial-workspace-navigation
Spaces: Add sequential workspace switching and window move using sliding wall animation
2019-11-12 14:24:35 +01:00
goodwillcodingandTor Hedin Brønner 6ea3bacca5 update readme with sequential workspace bits 2019-11-12 14:21:46 +01:00
Tor Hedin Brønner 1bb973b36e switchWorkspace: Don't set up animation if moving between monitors 2019-11-12 14:19:30 +01:00
Tor Hedin Brønner 74f7049107 animateToSpace: Animate the whole sequence of spaces
When finishing sequential navigation the selected space will be correctly
animated into place. The other spaces will stand still however, which is
especially noticable if a neighboring space is above the newly selected space.

Make use of _animateToSpaceOrdered to finish sequential navigation to fix this.
2019-11-12 14:19:30 +01:00
Tor Hedin Brønner 370d864d61 Spaces: Refactor out _animateToSpaceOrdered(toSpace, animate = true) 2019-11-12 14:19:30 +01:00
Tor Hedin Brønner c5dc1e3c66 Spaces: Add _getOrderedSpaces(monitor) -> [Space] 2019-11-12 14:19:30 +01:00
goodwillcodingandTor Hedin Brønner 98657bcb63 Spaces: Disallow switching between stack and sequential navigation 2019-11-12 14:19:30 +01:00
goodwillcodingandTor Hedin Brønner 77e7ae15a9 rename selectSpace to selectStackSpace
(and switchSpace to selectSequenceSpace)
2019-11-12 14:19:30 +01:00
goodwillcodingandTor Hedin Brønner 5d148a3f6a Spaces: add sequential navigation of spaces 2019-11-12 14:19:30 +01:00
Tor Hedin Brønner e680ba8946 ClickOverlay: Don't change monitors while in workspace preview 2019-11-12 13:45:54 +01:00
Tor Hedin Brønner e9fa665fb2 kludges: use upstreams code to fix insertion issue
This is fixed in upstream, so use the correct code. Probably not necessary, but
dosen't hurt.
2019-11-12 01:00:34 +01:00
Tor Hedin Brønner 9a64129006 Fix window insertion in gnome-shell-3.34 (a43c22e3af)
(references to gnome-shell commits/merge-requsts)

22b6a09c (!815 (merged)) removed WindowManager._removeEffect, but didn't remove
all its uses as it was made on top of b6d47c18. So when cherry picked some code
paths in 3.34 still relied on _removeEffect.

Simply monkey patch around the problem...
2019-11-11 22:32:33 +01:00
Tor Hedin Brønner 1c5779116b insertWindow: derive existing from metaWindow.unmapped
When using `workspaces-only-on-primary` it's possible to trigger insertWindow
from `window-added` instead of `window-created`, leaving insertWindow thinking
the window is `existing`.

Simply use `metaWindow.unmapped` to figure out if a window is newly created or
not.
2019-11-11 16:24:18 +01:00
Ole Jørgen Brønner 426ed7b285 Cache gsettings objects
If a user updates the extension without restarting gnome-shell we risk
re-reading the updated schema file without using the updated code (typically
after locking the screen (disable/enable cycle))

related-to: #190
2019-11-06 22:03:29 +01:00
goodwillcodingandTor Hedin Brønner 9a21af6a03 Gnome 3.28 compatibility fixes for #182 (#197)
Add global.display.get_monitor_neighbor_index that uses 
global.screen.get_monitor_neighbor_index
Meta.DisplayDirection = Meta.ScreenDirection;
2019-11-05 09:59:57 +01:00
Tor Hedin Brønner 8f22ab6b1e keybindings: do not override actionless keys
It's possible to pick up schema changes without a full reload. If the new
bindings conflicts with gnome-shell we will try to override. But since we have
registered no action, this will fail.

Simply guard against actionless bindings.

fixes #190
2019-11-02 23:42:45 +01:00
Tor Hedin Brønner e36b4b923e kludges: fix overview ordering in 3.34
3.34 changed introduced changes to the layout algorithm breaking our simple
ordering monkey patch.

Simply take computeLayout from 3.32 and monkeypatch it back in.
2019-11-01 01:44:41 +01:00
Tor Hedin Brønner 6efd2e8b4a default winprops: match gnome-screenshot on x11 too 2019-11-01 01:35:29 +01:00
Tor Hedin Brønner 54aba40fc8 winprops: support regexps in wm_class 2019-11-01 01:35:29 +01:00
Ole Jørgen Brønner d2887263a2 examples/keybindings: tile into left/right column
Takes the selected window and tile it into the left/right neighbour column.
2019-10-31 20:08:03 +01:00
Tor Hedin Brønner 0bd9de889e cycleWindowWidth: fix typo 2019-10-26 15:57:03 +02:00
Tor Hedin Brønner 6556cb55d4 liveAltTab: fix typo 2019-10-26 15:36:56 +02:00
Tor Hedin Brønner 4b50816fcd workspace menu: Use symbolic preference icon 2019-10-26 15:35:58 +02:00
Tor Hedin Brønner d9d11fab97 space.workArea(): Wrap workarea logic
I left a few sites which operates in global coordinates, or otherwise actually
want the actual workArea.
2019-10-26 15:34:58 +02:00
Tor Hedin Brønner c3e5d5f8dd window highlight: Support maximized windows better 2019-10-26 15:33:26 +02:00
Ole Jørgen Brønner e75f3aac7f Notes: summarize signal sequence of misc state changes (WIP) 2019-10-21 21:36:35 +02:00
Ole Jørgen Brønner e54c2b34f0 Fix 3.28 error by polyfilling missing display.get_monitor_scale 2019-10-21 21:18:38 +02:00
Tor Hedin BrønnerandGitHub 482d29118e Merge pull request #179 from paperwm/workspace-menu
Modernize the workspace menu
2019-10-21 13:26:23 +02:00
Tor Hedin Brønner 501ea8a136 workspace label: Set min width to avoid movement while typing 2019-10-21 12:59:37 +02:00
Tor Hedin Brønner 2d98d9c57b workspace menu: Focus workspace name on open
For some reason activation doesn't work immediately on `_onOpenStateChanged`, so
we need an idle_add (like gpaste).
2019-10-21 12:47:39 +02:00
Tor Hedin Brønner 02dd23bfd2 workspace menu: grab key focus on button clicks 2019-10-21 12:47:39 +02:00
Tor Hedin Brønner 7974f6adc5 workspace menu: Use Hide top bar 2019-10-21 12:47:39 +02:00
Tor Hedin Brønner ddd5c495a8 workspace menu: add ornamental label
This adds some need width too.
2019-10-21 12:47:39 +02:00
Tor Hedin Brønner bcdc387554 workspace menu: add next/prev workspace settings buttons 2019-10-21 12:47:39 +02:00
Tor Hedin Brønner 0dead29718 workspace menu: simplify 2019-10-21 12:47:39 +02:00
Tor Hedin Brønner 4cfe445477 tiling: Move cycle to Tiling.cycleWorkspaceSettings 2019-10-21 12:47:39 +02:00
Tor Hedin Brønner 384dd6dab6 registerClass: Support passing extra spec as first arg 2019-10-20 19:05:43 +02:00
Tor Hedin Brønner 82ddc02716 Space.moveDone: Only block on grabbing a tiled window
When dragging a window to a shared secondary monitor, moveDone is blocked by
`inGrab`. However we only want this as long as the window haven't been detached
by window-entered-monitor.
2019-10-20 14:27:11 +02:00
Tor Hedin Brønner 196368d3ec tiling: Remove stray logging 2019-10-20 14:21:21 +02:00
Ole Jørgen Brønner 18b5507853 resize-actions: Increase "slack" and make it simpler to adjust
See https://gist.github.com/olejorgenb/434dcc616343a50d9d63f2a700ad89b7 for a
helper script to test various window constraints.

ref: #187
2019-10-20 11:48:47 +02:00