diff options
author | Kohei Yoshida <kyoshida@novell.com> | 2011-02-14 15:31:09 -0500 |
---|---|---|
committer | Kohei Yoshida <kyoshida@novell.com> | 2011-02-14 15:34:48 -0500 |
commit | 6fd38fbdae654a3319b6bf808a415638dcdbbffe (patch) | |
tree | ed1daa5acbe96c089cb44261ddcd4eeb1dad6297 /vcl/unx | |
parent | eb01209e8f60220fa0a4ebb32de51bf15872821b (diff) |
Correctly display shortcut keys for ';' '[' and ']'. (fdo#32891)
In the keyboard shortcut customization dialog....
On Linux, It's better to use Ctrl+;, Ctrl+[ and Ctrl+] than
Ctrl+semicolon, Ctrl+bracketleft, Ctrl+bracketright, respectively.
On Windows, these key names were empty.
Diffstat (limited to 'vcl/unx')
-rw-r--r-- | vcl/unx/source/app/saldisp.cxx | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/vcl/unx/source/app/saldisp.cxx b/vcl/unx/source/app/saldisp.cxx index 3f9d23778d7c..3ee7bae21505 100644 --- a/vcl/unx/source/app/saldisp.cxx +++ b/vcl/unx/source/app/saldisp.cxx @@ -1182,6 +1182,7 @@ void SalDisplay::ModifierMapping() XubString SalDisplay::GetKeyName( USHORT nKeyCode ) const { String aStrMap; + String aCustomKeyName; if( nKeyCode & KEY_MOD1 ) aStrMap += GetKeyNameFromKeySym( nCtrlKeySym_ ); @@ -1334,13 +1335,13 @@ XubString SalDisplay::GetKeyName( USHORT nKeyCode ) const nKeySym = XK_grave; break; case KEY_BRACKETLEFT: - nKeySym = XK_bracketleft; + aCustomKeyName = '['; break; case KEY_BRACKETRIGHT: - nKeySym = XK_bracketright; + aCustomKeyName = ']'; break; case KEY_SEMICOLON: - nKeySym = XK_semicolon; + aCustomKeyName = ';'; break; default: @@ -1360,6 +1361,14 @@ XubString SalDisplay::GetKeyName( USHORT nKeyCode ) const else aStrMap.Erase(); } + else if (aCustomKeyName.Len()) + { + // For semicolumn, bracket left and bracket right, it's better to use + // their keys than their names. (fdo#32891) + if (aStrMap.Len()) + aStrMap += '+'; + aStrMap += aCustomKeyName; + } else aStrMap.Erase(); |