summaryrefslogtreecommitdiff
path: root/chromium/ui/base/accelerators/platform_accelerator_gtk.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/ui/base/accelerators/platform_accelerator_gtk.cc')
-rw-r--r--chromium/ui/base/accelerators/platform_accelerator_gtk.cc29
1 files changed, 27 insertions, 2 deletions
diff --git a/chromium/ui/base/accelerators/platform_accelerator_gtk.cc b/chromium/ui/base/accelerators/platform_accelerator_gtk.cc
index cae259b6d65..5662452a530 100644
--- a/chromium/ui/base/accelerators/platform_accelerator_gtk.cc
+++ b/chromium/ui/base/accelerators/platform_accelerator_gtk.cc
@@ -4,11 +4,36 @@
#include "ui/base/accelerators/platform_accelerator_gtk.h"
-#include "ui/base/events/event_conversion_gtk.h"
-#include "ui/base/keycodes/keyboard_code_conversion_gtk.h"
+#include "ui/events/keycodes/keyboard_code_conversion_gtk.h"
namespace ui {
+namespace {
+
+int GdkModifierToEventFlag(GdkModifierType gdk_modifier) {
+ int event_flags = 0;
+ if (gdk_modifier & GDK_SHIFT_MASK)
+ event_flags |= EF_SHIFT_DOWN;
+ if (gdk_modifier & GDK_CONTROL_MASK)
+ event_flags |= EF_CONTROL_DOWN;
+ if (gdk_modifier & GDK_MOD1_MASK)
+ event_flags |= EF_ALT_DOWN;
+ return event_flags;
+}
+
+GdkModifierType EventFlagToGdkModifier(int event_flag) {
+ int modifier = 0;
+ if (event_flag & EF_SHIFT_DOWN)
+ modifier |= GDK_SHIFT_MASK;
+ if (event_flag & EF_CONTROL_DOWN)
+ modifier |= GDK_CONTROL_MASK;
+ if (event_flag & EF_ALT_DOWN)
+ modifier |= GDK_MOD1_MASK;
+ return static_cast<GdkModifierType>(modifier);
+}
+
+} // namespace
+
PlatformAcceleratorGtk::PlatformAcceleratorGtk()
: gdk_key_code_(0),
gdk_modifier_(static_cast<GdkModifierType>(0)) {