Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1539)

Unified Diff: chrome/browser/chromeos/events/event_rewriter.cc

Issue 187313002: Update StickyKeys overlay to show or hide AltGr depending on the (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix rebase Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/events/event_rewriter.cc
diff --git a/chrome/browser/chromeos/events/event_rewriter.cc b/chrome/browser/chromeos/events/event_rewriter.cc
index 7981aaf29ed4b5dc9b3009aa336b332d709f81d5..5b9dd5c33055cfc833dd9141f2a49273b926ef8d 100644
--- a/chrome/browser/chromeos/events/event_rewriter.cc
+++ b/chrome/browser/chromeos/events/event_rewriter.cc
@@ -40,9 +40,6 @@ namespace {
const int kBadDeviceId = -1;
-const char kNeo2LayoutId[] = "xkb:de:neo:ger";
-const char kCaMultixLayoutId[] = "xkb:ca:multix:fra";
-
// A key code and a flag we should use when a key is remapped to |remap_to|.
const struct ModifierRemapping {
int remap_to;
@@ -119,15 +116,14 @@ bool HasDiamondKey() {
chromeos::switches::kHasChromeOSDiamondKey);
}
-bool IsMod3UsedByCurrentInputMethod() {
+bool IsISOLevel5ShiftUsedByCurrentInputMethod() {
// Since both German Neo2 XKB layout and Caps Lock depend on Mod3Mask,
// it's not possible to make both features work. For now, we don't remap
// Mod3Mask when Neo2 is in use.
// TODO(yusukes): Remove the restriction.
chromeos::input_method::InputMethodManager* manager =
chromeos::input_method::InputMethodManager::Get();
- return manager->GetCurrentInputMethod().id() == kNeo2LayoutId ||
- manager->GetCurrentInputMethod().id() == kCaMultixLayoutId;
+ return manager->IsISOLevel5ShiftUsedByCurrentInputMethod();
}
} // namespace
@@ -396,7 +392,7 @@ void EventRewriter::GetRemappedModifierMasks(
const bool skip_mod2 = !HasDiamondKey();
// If Mod3 is used by the current input method, don't allow the CapsLock
// pref to remap it, or the keyboard behavior will be broken.
- const bool skip_mod3 = IsMod3UsedByCurrentInputMethod();
+ const bool skip_mod3 = IsISOLevel5ShiftUsedByCurrentInputMethod();
for (size_t i = 0; i < arraysize(kModifierFlagToPrefName); ++i) {
if ((skip_mod2 && kModifierFlagToPrefName[i].native_modifier == Mod2Mask) ||
@@ -473,9 +469,9 @@ bool EventRewriter::RewriteModifiers(XEvent* event) {
remapped_key = kModifierRemappingCtrl;
break;
// On Chrome OS, XF86XK_Launch7 (F16) with Mod3Mask is sent when Caps Lock
- // is pressed (with one exception: when IsMod3UsedByCurrentInputMethod() is
- // true, the key generates XK_ISO_Level3_Shift with Mod3Mask, not
- // XF86XK_Launch7).
+ // is pressed (with one exception: when
+ // IsISOLevel5ShiftUsedByCurrentInputMethod() is true, the key generates
+ // XK_ISO_Level3_Shift with Mod3Mask, not XF86XK_Launch7).
case XF86XK_Launch7:
remapped_key =
GetRemappedKey(prefs::kLanguageRemapCapsLockKeyTo, *pref_service);

Powered by Google App Engine
This is Rietveld 408576698