Skip to content
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

FvwmPager: Make mouse bindings configurable. #1017

Merged
merged 1 commit into from
Apr 28, 2024

Conversation

somiaj
Copy link
Collaborator

@somiaj somiaj commented Apr 24, 2024

Instead of the mouse bindings being hard coded (mouse 1 changes desk/page, 2 focus/moves windows, and 3 scroll), this adds support to configure what the bindings do and supports the primary mouse buttons 1-5 only (no extended mouse buttons).

The bindings can be used to disable or move which button any of the default bindings are on, or add custom commands to send to fvwm/windows. One example is one could make the mouse wheel (buttons 4 and 5) change the current desk, so using the mouse wheel on the pager will cycle through desktops (could be useful with the always show current desk pager). You can also make bindings that act on the window you click on, so you could maximize, iconify, shade, or run any custom fvwm function on the window clicked.

The bindings are configured using the following:

*FvwmPager: Mouse <N> ChangePage
*FvwmPager: Mouse <N> MoveWindow [command]
*FvwmPager: Mouse <N> WindowCmd command
*FvwmPager: Mouse <N> Scroll
*FvwmPager: Mouse <N> Cmd command
*FvwmPager: Mouse <N> Nop

This is built on top of #1015, so that will need to be merged first.

@ThomasAdam ThomasAdam added type:enhancement Augmenting an existing feature relates:module Issue is in module code labels Apr 28, 2024
@ThomasAdam ThomasAdam self-assigned this Apr 28, 2024
@ThomasAdam ThomasAdam added this to the 1.1.1 milestone Apr 28, 2024
@ThomasAdam
Copy link
Member

Hi,

This looks fine to me. I've only focused on the commit "add mouse binding configuration" as the other commits have already been merged.

Very minor typo, but might as will fix as this PR will need rebasing anyway, before it can be merged.

@somiaj somiaj force-pushed the js/pager-mouse-bindings branch 3 times, most recently from 757af02 to 7460e5e Compare April 28, 2024 14:11
Instead of FvwmPager's mouse bindings being hard coded, these can now
be configured using the `Mouse <N> Action command` option. The bindings
can do all the same tasks as before. They can change the current desk/page,
move windows, and scroll. In addition custom commands can be sent to windows
instead of just `FlipFocus`.

Only the primary mouse buttons, 1-5, are supported, but this gives a
little more control over what the mouse buttons do.
@somiaj somiaj force-pushed the js/pager-mouse-bindings branch from 7460e5e to 14e81a2 Compare April 28, 2024 14:13
@ThomasAdam ThomasAdam merged commit 1559875 into main Apr 28, 2024
5 checks passed
@ThomasAdam ThomasAdam deleted the js/pager-mouse-bindings branch April 28, 2024 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relates:module Issue is in module code type:enhancement Augmenting an existing feature
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants