OLD | NEW |
---|---|
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "views/event.h" | 5 #include "views/event.h" |
6 | 6 |
7 #include <gdk/gdk.h> | 7 #include <gdk/gdk.h> |
8 | 8 |
9 #include "app/keyboard_code_conversion_gtk.h" | 9 #include "app/keyboard_code_conversion_gtk.h" |
10 | 10 |
11 namespace views { | 11 namespace views { |
12 | 12 |
13 KeyEvent::KeyEvent(const GdkEventKey* event) | 13 KeyEvent::KeyEvent(const GdkEventKey* event) |
14 : Event(event->type == GDK_KEY_PRESS ? | 14 : Event(event->type == GDK_KEY_PRESS ? |
15 Event::ET_KEY_PRESSED : Event::ET_KEY_RELEASED, | 15 Event::ET_KEY_PRESSED : Event::ET_KEY_RELEASED, |
16 GetFlagsFromGdkState(event->state)), | 16 GetFlagsFromGdkState(event->state)), |
17 // TODO(erg): All these values are iffy. | 17 // TODO(erg): All these values are iffy. |
18 key_code_(app::WindowsKeyCodeForGdkKeyCode(event->keyval)), | 18 keyboard_code_(app::WindowsKeyCodeForGdkKeyCode(event->keyval)), |
Ben Goodger (Google)
2011/01/05 17:35:12
if anything I'd prefer renaming all these to "keyc
| |
19 repeat_count_(0), | 19 repeat_count_(0), |
20 message_flags_(0) | 20 message_flags_(0) |
21 #if !defined(TOUCH_UI) | 21 #if !defined(TOUCH_UI) |
22 , native_event_(event) | 22 , native_event_(event) |
23 #endif | 23 #endif |
24 { | 24 { |
25 } | 25 } |
26 | 26 |
27 // static | 27 // static |
28 int Event::GetFlagsFromGdkState(int state) { | 28 int Event::GetFlagsFromGdkState(int state) { |
29 int flags = 0; | 29 int flags = 0; |
30 if (state & GDK_LOCK_MASK) | 30 if (state & GDK_LOCK_MASK) |
31 flags |= Event::EF_CAPS_LOCK_DOWN; | 31 flags |= Event::EF_CAPS_LOCK_DOWN; |
32 if (state & GDK_CONTROL_MASK) | 32 if (state & GDK_CONTROL_MASK) |
33 flags |= Event::EF_CONTROL_DOWN; | 33 flags |= Event::EF_CONTROL_DOWN; |
34 if (state & GDK_SHIFT_MASK) | 34 if (state & GDK_SHIFT_MASK) |
35 flags |= Event::EF_SHIFT_DOWN; | 35 flags |= Event::EF_SHIFT_DOWN; |
36 if (state & GDK_MOD1_MASK) | 36 if (state & GDK_MOD1_MASK) |
37 flags |= Event::EF_ALT_DOWN; | 37 flags |= Event::EF_ALT_DOWN; |
38 if (state & GDK_BUTTON1_MASK) | 38 if (state & GDK_BUTTON1_MASK) |
39 flags |= Event::EF_LEFT_BUTTON_DOWN; | 39 flags |= Event::EF_LEFT_BUTTON_DOWN; |
40 if (state & GDK_BUTTON2_MASK) | 40 if (state & GDK_BUTTON2_MASK) |
41 flags |= Event::EF_MIDDLE_BUTTON_DOWN; | 41 flags |= Event::EF_MIDDLE_BUTTON_DOWN; |
42 if (state & GDK_BUTTON3_MASK) | 42 if (state & GDK_BUTTON3_MASK) |
43 flags |= Event::EF_RIGHT_BUTTON_DOWN; | 43 flags |= Event::EF_RIGHT_BUTTON_DOWN; |
44 return flags; | 44 return flags; |
45 } | 45 } |
46 | 46 |
47 } // namespace views | 47 } // namespace views |
OLD | NEW |