domferr / tilingshell

Extend Gnome Shell with advanced tiling window management. Supports multiple monitors, Windows 11 Snap Assistant, Fancy Zones, customised tiling layouts and more.
https://extensions.gnome.org/extension/7065/tiling-shell/
GNU General Public License v2.0
519 stars 10 forks source link

Super+←↑↓→ are suddenly rediefined #43

Closed Lapizistik closed 3 months ago

Lapizistik commented 3 months ago

Describe the bug I have <Super>←, <Super>→, <Super>↑, <Super>↓ (left, right, up, down) mapped to switch workspaces (matrix layout). With the new version of tilingshell the keys are redefined and I have no way to get them back (I would be fine with being able to redefine the tilingshell keys through dconf-editor or what, or just switch off the remapping at all, but at a first glance I don't see how to easily do this).

To Reproduce Steps to reproduce the behavior:

  1. Bind <Super>← to anything in gnome shell
  2. Enable tilingshell
  3. Try to use <Super>←

Information (please complete the following):

Additional context I had a glimpse on the code and this comment suggests this is currently hardcoded and I don't see a way to disable this.

domferr commented 3 months ago

Hi, thank you for sharing this! It's definitely bad that there isn't a way to customize Tiling Shell's keybindings or to at least disable/enable them!

I will prioritise this in the next update (next week).

Meanwhile, if you prefer you can install the previous version (v8.0), which doesn't redefine the keybindings

Lapizistik commented 3 months ago

Thanks a lot! And thank you for your work, I really like your extension!

ilyachch commented 3 months ago

I think it will be also very useful to have an ability to disable hotkeys

thyttan commented 3 months ago

Hi, thank you for sharing this! It's definitely bad that there isn't a way to customize Tiling Shell's keybindings or to at least disable/enable them!

I will prioritise this in the next update (next week).

Thanks for prioritizing this! I was about to open a feature request for letting the user choose their own keybindings (Personally my goal is to change from SUPER+[arrow key] to SUPER+ALT+h/j/k/l for moving windows around).

domferr commented 3 months ago

Here we are! :partying_face:

image

In this update you can enable/disable the keybindings or change them. This is coming soon this week with version 10.0. If you want to try it in advance, I leave here the files. Enjoy!

thyttan commented 2 months ago

One of the many things I like about Tiling Shell is the fact that it works so nicely with the Gesture Improvements extension.

But when I change the Super+←↑↓→ keybindings to SUPER+ALT+h/j/k/l in Tiling Shell Gesture Improvements breaks.

To fix this I applied this change to Gesture Improvements:

diff --git a/gestureImprovements@gestures/src/snapWindow.js b/gestureImprovements@gestures/src/snapWindow.js
index 59acc9d..07ee96c 100644
--- a/gestureImprovements@gestures/src/snapWindow.js
+++ b/gestureImprovements@gestures/src/snapWindow.js
@@ -117,7 +117,7 @@ const TilePreview = registerClass(class TilePreview extends St.Widget {
                // snap-left,normal,snap-right
                else {
                    if (state !== GestureTileState.NORMAL) {
-                       const keys = [Clutter.KEY_Super_L, (state === GestureTileState.LEFT_TILE ? Clutter.KEY_Left : Clutter.KEY_Right)];
+                       const keys = [Clutter.KEY_Alt_L, Clutter.KEY_Super_L, (state === GestureTileState.LEFT_TILE ? Clutter.KEY_h : Clutter.KEY_l)];
                        this._virtualDevice.sendKeys(keys);
                    }
                }