History log of /haiku/src/preferences/keymap/KeymapApplication.h
Revision Date Author Comments
# b433c2ad 07-Jan-2015 John Scipione <jscipione@gmail.com>

Keymap: Add ability to remove a key mapping

... of a normal (non-modifier) key via a right click menu.


# 313b1c62 20-Feb-2014 John Scipione <jscipione@gmail.com>

Keymap: Center Modifier Keys window in main window


# 3cee15aa 28-Mar-2012 John Scipione <jscipione@gmail.com>

Keymap changes from recent activity. No AltGr yet.

Below is a mostly complete summary of the changes in this commit.

* Set the DeadKeys for the US-International Keymap to use the Option map.
* Rename American keymap to US
* Update the US, US-International, and United-Kingdom keymaps to take
out unneeded spaces in the option layer. Also updated the dead keys
and some other keys on the US-International keyboard to use UTF-8
characters rather than there ASCII equivalents when different.
* Make the Option key fall-through when there is no mapping in the Option
table. Option is for special characters, if none, print the regular one.
This is mostly meant for the US keymap which has an empty option map. But
also so that you don't have to repeat the normal, shift, and caps maps in
the option map needlessly. Although the keymaps are still not empty in
some cases that it could be like numpad keys and space.
* Update the /bin/keymap app to use fputs() instead of printf() when there
is no actual formatting taking place. I've gotten into trouble for doing
this before and it is faster to not process the string unnecessarily.
* Also several 80-char limit style fixes and updated comments.
* In Keymap class Reorder the modifier keys to match the keymap files.
Put B_CONTROL_KEY check above B_OPTION_KEY. Neither change has any effect,
they are purely aesthetic.
* Update DumpKeymap() method to use the abbreviated modifier letters so it
will fit in your 80-char wide terminal.
* Tiny style fix in InputServer
* 80-char limit style fix in BWindow and add a comment that the shortcut
gets eaten in the case of Cmd+Q
* Implement IndexForModifier() in KeyboardLayout, although I am not using it.
* Take Caps Lock out of the Modifier keys window because I couldn't get
it to work the way I wanted it to.
* Move key roles to the left column, and the key label on the left. Add column
header labels. Thanks Rimas!
* Add validation and improve marking menu options. Add a 'Disabled' option
to control, option, and command menus to disable the key. Make the key
role text grey if the key roles is disabled. Validation ensures that you
cannot repeat the same key twice in the Modifier keys window since that
won't work. You can't define 2 sets of option keys even if you really want
to. You can disable your control, option, and command keys if you
want, but that is not recommended.
* Rename kUpdateModifiers to kUpdateModifierKeys message to differetiate
it from kUpdateModifier.
* Add shift key to Modifier keys window, use the stop icon instead of the
warning icon to indicate conflicts.
* Allow the Layout system to control the size of the Modifier keys window
again, set the width's of the key role lables to the widest, set the width
of the menu fields to take up the rest of the space minus room for the
conflict views. I didn't like it that the Modifier keys window would change
size based on what options you had selected in the menu fields. Now it
doesn't, but, the layout system still makes it all fit.


# bce949f5 07-Nov-2011 John Scipione <jscipione@gmail.com>

Implemented the style changes and other improvements suggested by Axel to the Keymap preference app Modifier Keys window. The number of lines of code in the class was significantly reduced by these changes. I also made one small change to change the window title from 'Modifers Keys' to 'Modifier Keys'.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43221 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f5ac2da0 07-Nov-2011 John Scipione <jscipione@gmail.com>

Adds a dialog to the Keymap preference app to more easily and
reliably change your modifier keys.

The dialog box is shown by selecting the new 'Set Modifier Keys...'
option under the File menu. This brings up a window which contains 4
dialog boxes labeled: Caps Lock, Control, Option, and Command.

Each of the labels in followed by a drop down box which allows you to select
from one of the other keys listed. So for instance you could switch the Caps
Lock and Control keys but selecting the 'Control' option next to Caps Lock and
the 'Caps Lock' option next to Control.

The Caps Lock menu has an additional option which I find appealing...
'Disable' which, as it sounds, disables your Caps Lock key.

At the bottom of the dialog there are 3 buttons, 'Cancel', 'Revert', and 'Ok'.
'Cancel' and 'Ok' are self explanatory. The 'Revert' button, which is
initially disabled, puts you back into the state that you were when you first
opened the dialog.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be8fa2fb 02-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Update all applications in tree to use the new localizing system
* Remove the old one from the locale librairy, with some cleanup
Known regressions :
* readonlybootprompt will no longer update the locale settings : the
method used messed with internal undocumented things
* external localized apps (webpositive for example) will not run
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37336 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad34440e 27-Oct-2009 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

-Removed unseless reference to adler32 in hashmapcatalog
-Localized Keymap preflet and translated it to french


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33790 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad93c2f5 25-Feb-2008 Alexandre Deckner <alex@zappotek.com>

* style cleanup, new style casts, license header updates


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24113 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37ec4f04 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Cleanup of signatures and version infos - this is part of a fix to bug #909.
I've done all preferences apps for now, and some related.
* Some other related cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19090 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2618d1f 23-Aug-2005 Jérôme Duval <korli@users.berlios.de>

clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14052 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a10cf76e 24-Jun-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/prefs to "preferences", as the directory is usually called in BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b433c2ad87ce85265ca5674be338f3716372a512 07-Jan-2015 John Scipione <jscipione@gmail.com>

Keymap: Add ability to remove a key mapping

... of a normal (non-modifier) key via a right click menu.


# 313b1c624fa860fae78599d339a528561edd3b03 20-Feb-2014 John Scipione <jscipione@gmail.com>

Keymap: Center Modifier Keys window in main window


# 3cee15aac2ef8c6ae8975d9add34c36aa4224c29 28-Mar-2012 John Scipione <jscipione@gmail.com>

Keymap changes from recent activity. No AltGr yet.

Below is a mostly complete summary of the changes in this commit.

* Set the DeadKeys for the US-International Keymap to use the Option map.
* Rename American keymap to US
* Update the US, US-International, and United-Kingdom keymaps to take
out unneeded spaces in the option layer. Also updated the dead keys
and some other keys on the US-International keyboard to use UTF-8
characters rather than there ASCII equivalents when different.
* Make the Option key fall-through when there is no mapping in the Option
table. Option is for special characters, if none, print the regular one.
This is mostly meant for the US keymap which has an empty option map. But
also so that you don't have to repeat the normal, shift, and caps maps in
the option map needlessly. Although the keymaps are still not empty in
some cases that it could be like numpad keys and space.
* Update the /bin/keymap app to use fputs() instead of printf() when there
is no actual formatting taking place. I've gotten into trouble for doing
this before and it is faster to not process the string unnecessarily.
* Also several 80-char limit style fixes and updated comments.
* In Keymap class Reorder the modifier keys to match the keymap files.
Put B_CONTROL_KEY check above B_OPTION_KEY. Neither change has any effect,
they are purely aesthetic.
* Update DumpKeymap() method to use the abbreviated modifier letters so it
will fit in your 80-char wide terminal.
* Tiny style fix in InputServer
* 80-char limit style fix in BWindow and add a comment that the shortcut
gets eaten in the case of Cmd+Q
* Implement IndexForModifier() in KeyboardLayout, although I am not using it.
* Take Caps Lock out of the Modifier keys window because I couldn't get
it to work the way I wanted it to.
* Move key roles to the left column, and the key label on the left. Add column
header labels. Thanks Rimas!
* Add validation and improve marking menu options. Add a 'Disabled' option
to control, option, and command menus to disable the key. Make the key
role text grey if the key roles is disabled. Validation ensures that you
cannot repeat the same key twice in the Modifier keys window since that
won't work. You can't define 2 sets of option keys even if you really want
to. You can disable your control, option, and command keys if you
want, but that is not recommended.
* Rename kUpdateModifiers to kUpdateModifierKeys message to differetiate
it from kUpdateModifier.
* Add shift key to Modifier keys window, use the stop icon instead of the
warning icon to indicate conflicts.
* Allow the Layout system to control the size of the Modifier keys window
again, set the width's of the key role lables to the widest, set the width
of the menu fields to take up the rest of the space minus room for the
conflict views. I didn't like it that the Modifier keys window would change
size based on what options you had selected in the menu fields. Now it
doesn't, but, the layout system still makes it all fit.


# bce949f5318afe7645b643274f9d48c5ed8fa1cc 07-Nov-2011 John Scipione <jscipione@gmail.com>

Implemented the style changes and other improvements suggested by Axel to the Keymap preference app Modifier Keys window. The number of lines of code in the class was significantly reduced by these changes. I also made one small change to change the window title from 'Modifers Keys' to 'Modifier Keys'.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43221 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f5ac2da0a80a5c1075cfb06747c58a5f95ea124a 07-Nov-2011 John Scipione <jscipione@gmail.com>

Adds a dialog to the Keymap preference app to more easily and
reliably change your modifier keys.

The dialog box is shown by selecting the new 'Set Modifier Keys...'
option under the File menu. This brings up a window which contains 4
dialog boxes labeled: Caps Lock, Control, Option, and Command.

Each of the labels in followed by a drop down box which allows you to select
from one of the other keys listed. So for instance you could switch the Caps
Lock and Control keys but selecting the 'Control' option next to Caps Lock and
the 'Caps Lock' option next to Control.

The Caps Lock menu has an additional option which I find appealing...
'Disable' which, as it sounds, disables your Caps Lock key.

At the bottom of the dialog there are 3 buttons, 'Cancel', 'Revert', and 'Ok'.
'Cancel' and 'Ok' are self explanatory. The 'Revert' button, which is
initially disabled, puts you back into the state that you were when you first
opened the dialog.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43210 a95241bf-73f2-0310-859d-f6bbb57e9c96


# be8fa2fb3088ab1921612b60f352dd9334b40b3d 02-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Update all applications in tree to use the new localizing system
* Remove the old one from the locale librairy, with some cleanup
Known regressions :
* readonlybootprompt will no longer update the locale settings : the
method used messed with internal undocumented things
* external localized apps (webpositive for example) will not run
anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37336 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad34440edce9f5d4e604a9a2b0a3116e1dd74fde 27-Oct-2009 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

-Removed unseless reference to adler32 in hashmapcatalog
-Localized Keymap preflet and translated it to french


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33790 a95241bf-73f2-0310-859d-f6bbb57e9c96


# ad93c2f5ebcde6ff4a231ebd422dee2773c8f502 25-Feb-2008 Alexandre Deckner <alex@zappotek.com>

* style cleanup, new style casts, license header updates


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24113 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37ec4f04fe75996e8feb4b69bb77716d05e9b3d3 22-Oct-2006 Axel Dörfler <axeld@pinc-software.de>

* Cleanup of signatures and version infos - this is part of a fix to bug #909.
I've done all preferences apps for now, and some related.
* Some other related cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19090 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a2618d1f2218bf54e257ec947440a81a8b0bc113 23-Aug-2005 Jérôme Duval <korli@users.berlios.de>

clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14052 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a10cf76ef5b9e8c726ebc47183abd6943023cf8f 24-Jun-2005 Axel Dörfler <axeld@pinc-software.de>

Renamed src/prefs to "preferences", as the directory is usually called in BeOS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96