From 066f82fb485fc4d4ab2eadefd1f09d45c9e19676 Mon Sep 17 00:00:00 2001 From: Masayuki Nakano Date: Thu, 22 May 2014 13:06:05 +0900 Subject: [PATCH] Bug 1009388 part.2 Accessible should use WidgetEvent::AccelModifier() for consistency with other modules r=smaug+surkov.alexander --- accessible/src/generic/Accessible.cpp | 20 ++++++++++++++++++ accessible/src/generic/Accessible.h | 2 ++ accessible/src/xul/XULMenuAccessible.cpp | 26 +----------------------- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/accessible/src/generic/Accessible.cpp b/accessible/src/generic/Accessible.cpp index bdc3e1fe5f4..1af98c108fe 100644 --- a/accessible/src/generic/Accessible.cpp +++ b/accessible/src/generic/Accessible.cpp @@ -76,6 +76,7 @@ #endif #include "mozilla/Assertions.h" +#include "mozilla/BasicEvents.h" #include "mozilla/EventStates.h" #include "mozilla/FloatingPoint.h" #include "mozilla/MouseEvents.h" @@ -3264,6 +3265,25 @@ Accessible::StaticAsserts() const //////////////////////////////////////////////////////////////////////////////// // KeyBinding class +// static +uint32_t +KeyBinding::AccelModifier() +{ + switch (WidgetInputEvent::AccelModifier()) { + case MODIFIER_ALT: + return kAlt; + case MODIFIER_CONTROL: + return kControl; + case MODIFIER_META: + return kMeta; + case MODIFIER_OS: + return kOS; + default: + MOZ_CRASH("Handle the new result of WidgetInputEvent::AccelModifier()"); + return 0; + } +} + void KeyBinding::ToPlatformFormat(nsAString& aValue) const { diff --git a/accessible/src/generic/Accessible.h b/accessible/src/generic/Accessible.h index 5aeb09cdcf1..f559042d64a 100644 --- a/accessible/src/generic/Accessible.h +++ b/accessible/src/generic/Accessible.h @@ -1066,6 +1066,8 @@ public: static const uint32_t kMeta = 8; static const uint32_t kOS = 16; + static uint32_t AccelModifier(); + KeyBinding() : mKey(0), mModifierMask(0) {} KeyBinding(uint32_t aKey, uint32_t aModifierMask) : mKey(aKey), mModifierMask(aModifierMask) {} diff --git a/accessible/src/xul/XULMenuAccessible.cpp b/accessible/src/xul/XULMenuAccessible.cpp index f10826f26f2..5316273533f 100644 --- a/accessible/src/xul/XULMenuAccessible.cpp +++ b/accessible/src/xul/XULMenuAccessible.cpp @@ -233,31 +233,7 @@ XULMenuitemAccessible::KeyboardShortcut() const if (modifiersStr.Find("control") != -1) modifierMask |= KeyBinding::kControl; if (modifiersStr.Find("accel") != -1) { - // Get the accelerator key value from prefs, overriding the default. - switch (Preferences::GetInt("ui.key.accelKey", 0)) { - case nsIDOMKeyEvent::DOM_VK_META: - modifierMask |= KeyBinding::kMeta; - break; - - case nsIDOMKeyEvent::DOM_VK_WIN: - modifierMask |= KeyBinding::kOS; - break; - - case nsIDOMKeyEvent::DOM_VK_ALT: - modifierMask |= KeyBinding::kAlt; - break; - - case nsIDOMKeyEvent::DOM_VK_CONTROL: - modifierMask |= KeyBinding::kControl; - break; - - default: -#ifdef XP_MACOSX - modifierMask |= KeyBinding::kMeta; -#else - modifierMask |= KeyBinding::kControl; -#endif - } + modifierMask |= KeyBinding::AccelModifier(); } return KeyBinding(key, modifierMask);