GNOME Bugzilla – Bug 373566
Implement the new desktop/laptop keyboard mapping spec.
Last modified: 2008-07-22 19:23:57 UTC
Section 4.1 of the User Requirements and Functional Description specification has been updated to include details of two sets of keyboard mappings: one for desktop system and the other for laptops. This needs to be implemented in the Orca code.
Created attachment 76522 [details] [review] First attempt at a patch to fix this problem. I'm not ready to check this in yet. There is one (major) problem remaining. loadUserSettings() in orca.py should have been adjusted to force the new key bindings to be loaded. This isn't working (yet).
Created attachment 76531 [details] [review] Hopefully a working version of the patch. The magic missing ingredient was the need to set self._oldAppSettings = None in the activate() and deactivate() methods in focus_tracking_presenter.py.
Changes checked into CVS HEAD. No doubt there will be some tweaking to get it just the way that people want it, but it's pretty close now. Mike/Will (and Joanie); could you give it a try please? Thanks.
Hi Rich: Looks like it's working, which is a plus. :-) I think you need to make the following change, though, to make sure you use keysym strings. Without this, the "," and "." keys won't work with the laptop bindings: Index: src/orca/default.py =================================================================== RCS file: /cvs/gnome/orca/src/orca/default.py,v retrieving revision 1.239 diff -p -u -r1.239 default.py --- src/orca/default.py 13 Nov 2006 22:33:00 -0000 1.239 +++ src/orca/default.py 13 Nov 2006 23:28:13 -0000 @@ -779,14 +779,14 @@ class Script(script.Script): keyBindings.add( keybindings.KeyBinding( - ",", + "comma", 1 << settings.MODIFIER_ORCA, 1 << settings.MODIFIER_ORCA, self.inputEventHandlers["reviewCurrentCharacterHandler"])) keyBindings.add( keybindings.KeyBinding( - ".", + "period", 1 << settings.MODIFIER_ORCA, 1 << settings.MODIFIER_ORCA, self.inputEventHandlers["reviewNextCharacterHandler"]))
Thanks Will. I've just checked your change into CVS HEAD.
Perhaps it is the result of the lateness of the hour, but none of the *new* keybindings seem to be working on my laptop. I checked that the new keybindings were present in my default.py. They are.... As an example, CapsLock q quits (as it has ever since I modified my Orca modifier), but CapsLock i gives me an "i".
Never mind. It was indeed the hour. Needed to make the change in the Orca Preferences dialog. D'oh! Thanks Mike!! :-) And sorry guys....
Yeah, there is no automatic detection here. I'm not even sure there should be. There are going to be people who want the laptop settings on their desktop computers (to free up the numeric keypad) and there are going to be people (like me) who use a USB "external" keyboard on their laptop, who will prefer the desktop settings.
Created attachment 76577 [details] [review] Patch to fix up "say all" in laptop mode (thanks Mike).
New patch checked into CVS HEAD.
After discussing this with Will and Mike, closing as FIXED.