From 932334b709d2172f799ac5b5afd5ae2370dce2da Mon Sep 17 00:00:00 2001 From: Rene Gollent Date: Wed, 10 Dec 2008 14:34:36 +0000 Subject: [PATCH] Build fix, thanks to Olivier Cortes for submitting! git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28797 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../devices/keyboard/KeyboardInputDevice.h | 2 ++ .../input_server/devices/keyboard/Keymap.cpp | 14 ++++++++++++++ src/add-ons/input_server/devices/keyboard/Keymap.h | 1 + 3 files changed, 17 insertions(+) diff --git a/src/add-ons/input_server/devices/keyboard/KeyboardInputDevice.h b/src/add-ons/input_server/devices/keyboard/KeyboardInputDevice.h index c6cf17710b..5682b328ca 100644 --- a/src/add-ons/input_server/devices/keyboard/KeyboardInputDevice.h +++ b/src/add-ons/input_server/devices/keyboard/KeyboardInputDevice.h @@ -58,6 +58,8 @@ private: bool fIsAT; volatile bool fInputMethodStarted; uint32 fModifiers; + uint32 fCommandKey; + uint32 fControlKey; volatile bool fUpdateSettings; volatile uint32 fSettingsCommand; diff --git a/src/add-ons/input_server/devices/keyboard/Keymap.cpp b/src/add-ons/input_server/devices/keyboard/Keymap.cpp index effc293612..0c0b765c68 100644 --- a/src/add-ons/input_server/devices/keyboard/Keymap.cpp +++ b/src/add-ons/input_server/devices/keyboard/Keymap.cpp @@ -155,6 +155,20 @@ Keymap::Modifier(uint32 keyCode) return 0; } +uint32 +Keymap::KeyForModifier(uint32 modifier) +{ + if (modifier == B_LEFT_COMMAND_KEY) + return fKeys.left_command_key; + if (modifier == B_RIGHT_COMMAND_KEY) + return fKeys.right_command_key; + if (modifier == B_LEFT_CONTROL_KEY) + return fKeys.left_control_key; + if (modifier == B_RIGHT_CONTROL_KEY) + return fKeys.right_control_key; + + return 0; +} //! Tell if a key is a dead key, needed for draw a dead key uint8 diff --git a/src/add-ons/input_server/devices/keyboard/Keymap.h b/src/add-ons/input_server/devices/keyboard/Keymap.h index 6fcf7e7c04..ce981be314 100644 --- a/src/add-ons/input_server/devices/keyboard/Keymap.h +++ b/src/add-ons/input_server/devices/keyboard/Keymap.h @@ -27,6 +27,7 @@ public: void DumpKeymap(); bool IsModifierKey(uint32 keyCode); uint32 Modifier(uint32 keyCode); + uint32 KeyForModifier(uint32 modifier); uint8 IsDeadKey(uint32 keyCode, uint32 modifiers); bool IsDeadSecondKey(uint32 keyCode, uint32 modifiers, uint8 activeDeadKey); void GetChars(uint32 keyCode, uint32 modifiers, uint8 activeDeadKey, char** chars, int32* numBytes);