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

(enh) bind should hold all modifier keys #115

Open
RedBearAK opened this issue Nov 19, 2022 · 1 comment
Open

(enh) bind should hold all modifier keys #115

RedBearAK opened this issue Nov 19, 2022 · 1 comment
Labels
bug Something isn't working help welcome Help/contrib is esp welcome

Comments

@RedBearAK
Copy link
Contributor

@joshgoebel

I found a new example of shortcuts in Kinto besides Cmd+Tab that need to use bind. The input switching shortcuts, at least in GNOME. There's a nice UI dialog that pops up if you have multiple keyboard layouts enabled. This doesn't appear in terminals without using bind on the remaps. In GUI apps the shortcuts aren't remapped so it isn't a problem.

keymap("General Terminals", {
…
    ### Keyboard input source (language/layout) switching in GNOME 
    C("LC-Space"):              [bind,C("Super-Space")],        # keyboard input source (language) switching
    C("Shift-LC-Space"):        [bind,C("Super-Shift-Space")],  # keyboard input source (language) switching (reverse)

The other problem is that if I use the modifiers in the order Shift-Super-Space it acts like I've let go of the Super key, so the input switching UI dialog won't appear. So it will only switch between the last two layouts, even with bind.

So in short, it would probably be a good idea for bind to act like it's holding down all the given modifier keys in the combo. Otherwise the behavior is inconsistent depending on the order of the modifiers. Which is not normally an issue.

@RedBearAK RedBearAK added bug Something isn't working help welcome Help/contrib is esp welcome labels Nov 19, 2022
@joshgoebel
Copy link
Owner

Otherwise the behavior is inconsistent depending on the order of the modifiers.

This is on purpose, perhaps it just needs to be documented. Only the first key is bound. Until we actually have a UI that doesn't work with that, I think that's sufficient. With multi-bind order becomes even MORE important because you have to know what key is bound to what and if the # of keys don't match now you have a real mess.

This supports 99% (or 100%) of use cases, but yes, you have to get the order right.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help welcome Help/contrib is esp welcome
Projects
None yet
Development

No branches or pull requests

2 participants