From a70cba80ea3c35afcde25997b81377aba504b977 Mon Sep 17 00:00:00 2001 From: "Jerry (Xinyu Hou)" Date: Wed, 20 Jul 2016 10:11:25 -0700 Subject: [PATCH] Revert "Used input source ID as the key in group map #2765" This reverts commit 4208e89eaec211d332af9ac7b977107d6712e8dd. --- src/lib/platform/OSXKeyState.cpp | 18 +++++++----------- src/lib/platform/OSXKeyState.h | 2 +- 2 files changed, 8 insertions(+), 12 deletions(-) diff --git a/src/lib/platform/OSXKeyState.cpp b/src/lib/platform/OSXKeyState.cpp index 71700d95..9f3d923f 100644 --- a/src/lib/platform/OSXKeyState.cpp +++ b/src/lib/platform/OSXKeyState.cpp @@ -379,17 +379,15 @@ OSXKeyState::pollActiveModifiers() const SInt32 OSXKeyState::pollActiveGroup() const { + bool layoutValid = true; TISInputSourceRef keyboardLayout = TISCopyCurrentKeyboardLayoutInputSource(); - CFDataRef id = (CFDataRef)TISGetInputSourceProperty( - keyboardLayout, kTISPropertyInputSourceID); - GroupMap::const_iterator i = m_groupMap.find(id); - if (i != m_groupMap.end()) { - return i->second; + if (layoutValid) { + GroupMap::const_iterator i = m_groupMap.find(keyboardLayout); + if (i != m_groupMap.end()) { + return i->second; + } } - - LOG((CLOG_DEBUG "can't get the active group, use the first group instead")); - return 0; } @@ -416,9 +414,7 @@ OSXKeyState::getKeyMap(synergy::KeyMap& keyMap) m_groupMap.clear(); SInt32 numGroups = (SInt32)m_groups.size(); for (SInt32 g = 0; g < numGroups; ++g) { - CFDataRef id = (CFDataRef)TISGetInputSourceProperty( - m_groups[g], kTISPropertyInputSourceID); - m_groupMap[id] = g; + m_groupMap[m_groups[g]] = g; } } diff --git a/src/lib/platform/OSXKeyState.h b/src/lib/platform/OSXKeyState.h index ae54c2d3..29cd5d6c 100644 --- a/src/lib/platform/OSXKeyState.h +++ b/src/lib/platform/OSXKeyState.h @@ -158,7 +158,7 @@ private: KeyButtonOffset = 1 }; - typedef std::map GroupMap; + typedef std::map GroupMap; typedef std::map VirtualKeyMap; VirtualKeyMap m_virtualKeyMap;