-
Notifications
You must be signed in to change notification settings - Fork 17
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
Keybindings (take two) #129
Comments
the keyboard capturing seemns sound, however I have afew concerns in regards to the viability of sending commands over a socket in the way we did before, which mainly revolve around the fact that screenreaders are extremely versatile and adaptive applications, and therefore modes are somewhat fluid and depend on context from the accessibility tree, which a static configuration for a daemon, as we currently do it, can't account for. In the name of completeness and transparency, I sent you a matrix message, which I shall quote below:
in addition to the above quoted message, I might add that certain keys, like keystrokes done without the designated odilia modifier, the modifiers by themselves, enter by itself, tab, etc should always be passed through, even if a copy of the keybinding is sent to odilia. For example, at least in focus mode, the arrow keys should always be passed to an application, not only because games and other non-standard applications need this, but it's certainly a factor. The way nvda does keyboard hooking may be of use here, because jaws certainly does it wrong. |
O, and one more thing: do we plan on supporting key coards? for example, think of emacs key combos, c-e, c-s and similar. If so, we would have a huge advantage, because conflicting key combos would rarely be a thing, as adons would be able to have their own prefix activated by a part of the coard, after which every other key can be used without fear of interfering with the screenreader's main set of keyboard shortcuts, same for those of other adons. If the answer is yes, we might have to rethink a bit the way we capture and treat key combos, and that's why I'm asking |
I'd like to have the option. This would make the algorithm for capturing/releasing keys to be more complex. But yes, I'm open to it being optional. |
ok, here's my proposal in that case:
|
Do you know any case where this would be needed? |
a good example is arrow keys. We want to be notified of them, but in edit boxes and webpages we may have to process them, while in games and native UI apps we don't. Since we can't probably do the decision dynamically every time, passthrough is better |
Fair enough! Checks out for me. |
Oh the wonderful works of binding keys in a Wayland world! Especially those pesky activation keys that have no equivalent outside of screen readers (see that thread and its links for further fun rabbit holes!)
Let's ignore the proper way to do things for a moment, and consider again,
odilia-input
, a daemon which listens to keys onevdev
, then sendsOdiliaCommand
s over a socket, which Odilia then executes an action for.Here's the idea, it could not possibly go wrong! (LOL!)
Capslock+h
), run that command.Can anyone show me a case where this would cause any of these bad things:
cc @albertotirla
The text was updated successfully, but these errors were encountered: