Skip to content

fix: keyboard shortcuts for left/right workspaces #1777

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master_jammy
Choose a base branch
from

Conversation

laikq
Copy link

@laikq laikq commented Apr 14, 2025

Add keyboard shortcuts for left/right workspace switching & window moving.

  • SUPER + Ctrl + left/right for workspace switching
  • SUPER + Ctrl + Shift + left/right for moving windows between workspaces

Fix #1776

Hopefully useful for some people installing pop-shell on vanilla gnome.

Add keyboard shortcuts for left/right workspace switching & window
moving.

Fix pop-os#1776
@jacobgkau jacobgkau requested a review from a team July 10, 2025 15:13
Copy link
Member

@jacobgkau jacobgkau left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because this script isn't part of the actual extension source code or package, this won't affect typical Pop!_OS 22.04 usage with the packaged version of pop-shell. It will only affect manual installations on other distros, or on Pop!_OS for the purpose of development.

On Debian 12 with GNOME 43, I confirmed this makes the Ctrl-Super-Left/Right shortcuts switch horizontal workspaces as expected.

On Pop!_OS 22.04, the Ctrl-Super-Left/Right shortcuts snap a window to the left or right side of the screen by default. I installed the packaged version of this to double-check that no changes were observed. I then installed using make local-install to have the script applied to the system; after that, the Ctrl-Super-Left/Right shortcuts didn't do anything, because they'd been assigned to switch horizontal workspaces, but Pop!_OS 22.04 doesn't use horizontal workspaces.

With that in mind, I don't think this should be merged as-is, since it breaks one of the expected shortcuts on a Pop!_OS system. On Debian, the left/right snap shortcut is just Super-Left/Right by default, which Pop!_Shell obviously already overrides with its shortcuts to move focus to the left/right, which is why this regression wouldn't be noticed on Debian.

There are a couple of paths forward for this PR:

  • Apply instead to master_noble. Although this won't help with Debian 12 since it uses GNOME 43, this extension is no longer being used in Pop!_OS 24.04 (Noble), nor is the vertical workspaces extension; that means Pop!_OS's vertical workspaces are no longer a concern, nor is breaking Pop!_OS compatibility. The change could be made on that branch to benefit future users on later versions of GNOME.
  • A check could be made either for the OS (don't apply the left/right workspace shortcuts on Pop!_OS) or for the existing shortcuts (don't apply the left/right workspace shortcuts if those shortcuts are assigned to snap windows) in the configure script.

@jacobgkau
Copy link
Member

jacobgkau commented Jul 11, 2025

If we did want to apply this to master_noble, we'd want to give some thought to whether a different pair of shortcuts could take on the role of snapping windows to the left/right. Although I agree navigating workspaces is probably more useful than snapping as a keyboard shortcut (especially since snapping happens outside of the tiling workflow), snapping has long been part of the Pop!_Shell regression testing checklist and is thus a feature we intended to support with the Pop!_Shell experience. (The simplest solution would be swapping it to Ctrl-Super-Up/Down since those wouldn't be in use with horizontal workspaces, but there'd be no intuitive answer to whether Up should snap left or right, and vice versa.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants