Commit Graph

1580 Commits

Author SHA1 Message Date
Matthew Wraith
10215f57e8
Gestures obey natural-scroll touchpad setting (#373)
Closes #371

Right now when I three-finger scroll in Wayland, moving my hand to the
right makes the windows move to the right as if dragging the proverbial
paper. As in, scrolling moves the content, not the view. In Gnome's
mouse/trackpad settings, this is referred to as "Natural Scrolling". One
can disable "Natural Scrolling" such that two-finger scrolling results
in moving the view, not the content.

This commit makes PaperWM respect the natural-scroll touchpad global
setting. If unnatural scrolling is enabled in Gnome's global settings,
then PaperWM will use unnatural scroll touchpad gestures, and vice versa.

The scroll direction is encoded as either a 1 or -1 and checks the Gnome
settings every Clutter.TouchpadGesturePhase.BEGIN.

There could be an extension added to this to make this setting
toggle-able separately from Gnome's global settings. There could be a
separate setting that overrides the Gnome global setting. There could be
people who prefer unnatural scrolling for their browser and such but
natural scrolling for PaperWM.
2021-03-08 19:21:39 +01:00
paradajz
68e0ef7d9a
navigator: remove timeout for keybindings without mods (#372)
This simple change will disable timeouts when using keybindings without
modifiers for switching between windows, eg. Volume Up/Down keys.
2021-03-06 13:01:49 +01:00
Jan-Erik Rediger
edcb20da41
Set actor variable for use after if (#368) 2021-01-31 17:57:26 +01:00
Ole Jørgen Brønner
aa8177d7e8 examples/keybindings: swap-with-right 2021-01-31 00:28:38 +01:00
Tor Hedin Brønner
bcd92857ae liveAltTab: try to fix fog that's stuck
It's possible for the animation to stop before it's finished, making the
`onComplete` event not trigger. Use `onStopped` instead as it's more robust.
2021-01-28 18:18:31 +01:00
christopher-l
1f66f76f8d
Fix glitch when switching workspaces (#360)
Co-authored-by: Christopher Lübbemeier <luebbemeier@metaventis.com>
2021-01-26 00:28:12 +01:00
mrspikeroot
4f5b9319ed
Add "StackUnstack" action in Examples. (#358)
If the focused window is not stacked, it stacks it at the bottom of an adjacent column
If the focused window is stacked, it moves it out into its own column.

Co-authored-by: Michael Root <michael.root@rjginc.com>
2020-12-24 01:06:27 +01:00
Tor Hedin Brønner
a69df7a333 metadata: note 3.38 support 2020-12-05 19:36:58 +01:00
christopher-l
f9db7fdc0d
fix workspace-label border (#353)
Co-authored-by: Christopher Lübbemeier <luebbemeier@metaventis.com>
2020-11-29 13:36:14 +01:00
Tor Hedin Brønner
7540e9f6e8 kludges: fix overview sorting 2020-11-22 16:59:20 +01:00
Tor Hedin Brønner
ee0a3eaee4 Fix only/disable-scratch-in-overview on 3.38
`_isOverviewWindow(win)` now takes a metaWindow, not an actor.
2020-11-14 14:36:21 +01:00
Tor Hedin Brønner
261ae9de8f overview: make overview usable on 3.38
The monkey patching just causes problems on 3.38 after they made a
fairly big rewrite.
2020-11-09 18:46:06 +01:00
Pacman99
8efe979128
Add option to disable showing scratch windows in overview. (#346)
Creates dropdown menu to let user choose between never, always, or
only showing scratch windows. The state is tracked by two
booleans,'disable-scratch-in-overview' and 'only-scratch-in-overview'.
2020-10-29 20:30:58 +01:00
Tor Hedin Brønner
3197ac1df0 Fix top bar when exiting overview
fixes #345
2020-10-27 20:38:14 +01:00
Tor Hedin Brønner
d3e3e03a6d Release 38.0 2020-10-15 18:27:49 +02:00
Tor Hedin Brønner
40a7509188 backwards compatible background fix 2020-08-23 16:57:05 +02:00
Tor Hedin Brønner
54b7448e4d Simple fixes for 3.38
log no longer takes several arguments...

actor.add seems brokenish?
2020-08-23 16:56:32 +02:00
Tor Hedin Brønner
e76bfd9069 swipe: also fix 4-finger swipe horizontally 2020-08-15 15:28:25 +02:00
Tor Hedin Brønner
4a58b549e5 swipe: support 4-finger swiping 2020-08-15 15:22:16 +02:00
Ole Jørgen Brønner
4a923f008f
readme: make winprop example "compatible" with user.js template
If pasted directly into init an error occur due to Tiling already being defined.
Thanks to @frizop for reporting it.
2020-08-14 17:19:23 +02:00
Tor Hedin Brønner
31ef966fab alt-tab: respect current-workspace-only
This works with the new ordered workspace animations.

closes #330
2020-08-13 22:12:38 +02:00
Illya Klymov
a57dbdf1bb
Safer way to add fixes to Clutter.Actor prototype (#327) 2020-07-18 20:55:09 +02:00
Simon Epstein
c98fe8556e
Avoid moving the top bar when it's stuck on primary
With `topbar-follow-focus` set to false we still moved the topbar (to its own position).
This caused issues with dash-to-panel with panels on all monitors.

So only move the topbar to the primary monitor when `topbar-follow-focus` is toggled 
off by the user.

There's still some issues with dash-to-panel and the workarea on secondary monitors, 
but this makes it at least somewhat usable.

Co-authored-by: Simon Epstein <simon.epstein@67bricks.com>
2020-07-02 22:49:35 +02:00
Fabian Frei
ac54a572db
Updated README.md with info about fixed window size (#313) 2020-06-13 16:14:29 +02:00
Ayla Ounce
9e15aa2de5
extend uninstall.sh to handle non-linked installs (#312)
Currently uninstall.sh fails if run on an installation copied or cloned
directly into the extensions directory. This change updates it to check
whether the install is link-based or direct and handle each case
appropriately. Due to the potential danger of a recursive removal, it
prompts the user for confirmation before removing direct installs.
2020-06-05 21:21:33 +02:00
Ole Jørgen Brønner
3ad3100413
readme: new instructions for finding the wm_class of a window 2020-05-29 10:46:32 +02:00
Oscar Tin Lai
404d50c416
remove and combine duplicated sentences (#301)
Co-authored-by: Tin Lai <tin.lai@sydney.edu.au>
2020-05-06 15:16:06 +02:00
Tor Hedin Brønner
42a69e6c8b edge overlay: raise above highest stacked neighbor
When the neighbouring edge overlay contains more than one window we need
to raise the edge overlay above the highest window.
2020-04-02 17:35:22 +02:00
Tor Hedin Brønner
1ddad3e845 Fix crash on enable after unplugging monitor
I suspect there's more going on here, since a space should always have a
monitor, so we're probably hitting an uncommon code path. But it doesn't
hurt to guard explicitly against null monitor.

closes #273
2020-03-17 21:23:48 +01:00
Ole Jørgen Brønner
3461649306 Bugfix: older gjs does not support object unpacking {...obj}
fixes #271 (NB: not verified yet)
2020-03-16 18:55:57 +01:00
Ole Jørgen Brønner
065526d409 examples/keybindings: reorder workspace 2020-03-14 23:09:31 +01:00
Ole Jørgen Brønner
1d0b233e67 Utility function to translate action name to action id (HACK) 2020-03-14 23:09:31 +01:00
Ole Jørgen Brønner
df13408531 Keybinding system: always provide the selected space to action handlers
Before: only actions triggered from the action dispatcher was provided the space
2020-03-14 23:09:15 +01:00
Ole Jørgen Brønner
c34e99c421 Reindex space settings on 'workspace-reorder' signal 2020-03-14 22:59:15 +01:00
Ole Jørgen Brønner
d47206cc01 Fix switch-monitor* when workspace is empty (partially) [Scratch.focusMonitor]
focusMonitor now falls bact to monitor-at-point on empty workspace. But since
the move-workspace-* gnome actions is registered as PER_WINDOW the default
bindings will still usually not work. (depends on who win the binding "fight")
2020-03-14 14:16:10 +01:00
Ole Jørgen Brønner
484b26d25a Make all minimap actions PER_WINDOW
Atm. some of the actions spammed errors in the log when invoked on an empty
workspace. A empty minimap also pops up which looks a bit strange(?)
2020-03-14 13:39:42 +01:00
Ole Jørgen Brønner
eedfe0c0f5 ActionDispatcher: respect mutterFlags (PER_WINDOW) 2020-03-14 13:32:24 +01:00
Yegor Timoshenko
5de1be9c8a
gnome shell background -> GNOME Shell background (#264) 2020-03-11 23:44:53 +01:00
Ole Jørgen Brønner
386e1fbf42 Fix keybindings.disable in 3.36 when <Super>A is overriden 2020-03-08 22:33:49 +01:00
Tor Hedin Brønner
2e407554be maximized: fix y position of eg. firefox wayland
Some windows apparently report the wrong frame.y value when they've just
been maximized, leaving us with the old incorrect value. Simply hardcode
the correct y value instead.
2020-03-07 14:25:19 +01:00
Tor Hedin Brønner
f1b151524a edge overlays: Do not set when browsing workspaces 2020-03-07 13:30:10 +01:00
Tor Hedin Brønner
add08a38d2 Fix top bar on enable
When unlocking the desktop with a fullscreen window focused we'd incorrectly
show the topbar.

Run fixTopBar after all spaces have been fully setup to fix it.
2020-03-07 13:26:16 +01:00
Tor Hedin Brønner
4f9383a430 Fix top bar on notify::fullscreen
If there's already a fullscreen window in the workspace, gnome-shell
won't trigger a hide on the topbar. Meaning fixTopBar won't run
automatically, so we need to run on any fullscreen changes.
2020-03-07 13:26:16 +01:00
Tor Hedin Brønner
108f7202ff edge overlays: hide when selecting a maximized window 2020-03-02 16:27:18 +01:00
Tor Hedin Brønner
5727ea94cf Space.isVisible: Work correctly with fullscreen windows 2020-03-01 18:55:42 +01:00
Tor Hedin Brønner
a7da294946 Space.isVisible: use current, not future, coordinates 2020-03-01 18:54:54 +01:00
Tor Hedin Brønner
5dcee36d71 Polish up animate down for fullscreen windows
- Simply move the fullscreen clone if not visible
- Do not start a new animation one is already in progress
- Do not run animateDown when starting navigation
2020-03-01 18:54:27 +01:00
Tor Hedin Brønner
0c3f71d94d selection highlight: add rounded border 2020-03-01 18:13:05 +01:00
Ole Jørgen Brønner
8971ae73e3 Wayland-safe(r) override-redirect check
It looks like mutter doesn't maintain override_redirect on wayland windows (ie.
it doesn't try to emulate the X11-only(?) concept)

This caused many menues (eg. gtk menues) to be registered by us (creating clone,
registering resize signals, etc.)

Particularily noticable in libreoffice - the menus was very delayed and
sometimes didn't show up at all. (Observed in GS 3.34.3, libreoffice 6.2.6.2)

(TOOLTIP is checked preemptively)
2020-02-28 21:13:10 +01:00
Tor Hedin Brønner
069f687fcd readme: Update for 3.36 support 2020-02-27 15:35:02 +01:00