summaryrefslogtreecommitdiff
path: root/vcl/unx
diff options
context:
space:
mode:
authorKohei Yoshida <kyoshida@novell.com>2011-02-14 15:31:09 -0500
committerKohei Yoshida <kyoshida@novell.com>2011-02-14 15:34:48 -0500
commit6fd38fbdae654a3319b6bf808a415638dcdbbffe (patch)
treeed1daa5acbe96c089cb44261ddcd4eeb1dad6297 /vcl/unx
parenteb01209e8f60220fa0a4ebb32de51bf15872821b (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.cxx15
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();