Skip to content

feat: support mouse side-button shortcuts - #166

Open
howdeploy wants to merge 1 commit into
bea4dev:mainfrom
howdeploy:feat/mouse-side-button-shortcuts
Open

howdeploy wants to merge 1 commit into
bea4dev:mainfrom
howdeploy:feat/mouse-side-button-shortcuts

Conversation

@howdeploy

Copy link
Copy Markdown
Contributor

Add MouseBack (BTN_SIDE, 275) and MouseForward (BTN_EXTRA, 276) as case-insensitive, press-only triggers for COMPOSITOR.key.bind. This lets a mouse keep its normal side-button actions in applications and games while modifier combinations run compositor commands:

COMPOSITOR.key.bind('focus-left', 'Super+MouseBack', () => focusTile(-1));
COMPOSITOR.key.bind('focus-right', 'Super+MouseForward', () => focusTile(1));

Bindings require an exact modifier match. A matched press and its release are consumed together, tracked per device and button, including when the modifier is released first. Unmatched clicks retain their existing delivery path. Session-lock and modal input-grab handling take priority, and disconnecting a device clears its pending consumed buttons.

Includes SDK and configuration documentation plus the parser regression check carried over from the desktop backport. The check covers both side buttons, modifier matching, press-only handlers, and mixed-trigger rejection.

Validation: the desktop-fork backport was built and manually verified by the user with Super+MouseForward on a physical mouse. This upstream branch has not been built or tested locally; the included regression check has not been run locally.

This branch has not been deployed

No deployments
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.

1 participant