OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // TODO(nona): Rename this file to ime_bridge.h | 4 // TODO(nona): Rename this file to ime_bridge.h |
5 | 5 |
6 #ifndef CHROMEOS_IME_IBUS_BRIDGE_H_ | 6 #ifndef CHROMEOS_IME_IBUS_BRIDGE_H_ |
7 #define CHROMEOS_IME_IBUS_BRIDGE_H_ | 7 #define CHROMEOS_IME_IBUS_BRIDGE_H_ |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 | 79 |
80 // Called when a property is hidden. | 80 // Called when a property is hidden. |
81 virtual void PropertyHide(const std::string& property_name) = 0; | 81 virtual void PropertyHide(const std::string& property_name) = 0; |
82 | 82 |
83 // Called when the Chrome input field set their capabilities. | 83 // Called when the Chrome input field set their capabilities. |
84 virtual void SetCapability(IBusCapability capability) = 0; | 84 virtual void SetCapability(IBusCapability capability) = 0; |
85 | 85 |
86 // Called when the IME is reset. | 86 // Called when the IME is reset. |
87 virtual void Reset() = 0; | 87 virtual void Reset() = 0; |
88 | 88 |
89 // Called when the key event is received. The |keycode| is raw layout | 89 // Called when the key event is received. The |keycode| is raw |
90 // independent keycode. The |keysym| is result of XLookupString function | 90 // layout independent keycode string. The |keysym| is a keyboard |
91 // which translate |keycode| to keyboard layout dependent symbol value. | 91 // layout dependent symbol string. Actual implementation must call |
92 // Actual implementation must call |callback| after key event handling. | 92 // |callback| after key event handling. For example: key press |
93 // For example: key press event for 'd' key on us layout and dvorak layout. | 93 // event for 'd' key on us layout and dvorak layout. |
94 // keyval keycode state | 94 // keyval keycode state |
95 // us layout : 0x64 0x20 0x00 | 95 // us layout : "d" "KeyD" 0x00 |
96 // dvorak layout : 0x65 0x20 0x00 | 96 // dvorak layout : "e" "KeyD" 0x00 |
97 virtual void ProcessKeyEvent(uint32 keysym, uint32 keycode, uint32 state, | 97 // |
| 98 // TODO(komatsu): Use ui::KeyEvent after addressing the DEPS issue. |
| 99 virtual void ProcessKeyEvent(const std::string& keysym, |
| 100 const std::string& keycode, |
| 101 bool is_key_down, |
| 102 bool is_alt_down, |
| 103 bool is_ctrl_down, |
| 104 bool is_shift_down, |
| 105 bool is_caps_lock_down, |
98 const KeyEventDoneCallback& callback) = 0; | 106 const KeyEventDoneCallback& callback) = 0; |
99 | 107 |
100 // Called when the candidate in lookup table is clicked. The |index| is 0 | 108 // Called when the candidate in lookup table is clicked. The |index| is 0 |
101 // based candidate index in lookup table. The |state| is same value as | 109 // based candidate index in lookup table. The |state| is same value as |
102 // GdkModifierType in | 110 // GdkModifierType in |
103 // http://developer.gnome.org/gdk/stable/gdk-Windows.html#GdkModifierType | 111 // http://developer.gnome.org/gdk/stable/gdk-Windows.html#GdkModifierType |
104 virtual void CandidateClicked(uint32 index, ibus::IBusMouseButton button, | 112 virtual void CandidateClicked(uint32 index, ibus::IBusMouseButton button, |
105 uint32 state) = 0; | 113 uint32 state) = 0; |
106 | 114 |
107 // Called when a new surrounding text is set. The |text| is surrounding text | 115 // Called when a new surrounding text is set. The |text| is surrounding text |
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
236 protected: | 244 protected: |
237 IBusBridge(); | 245 IBusBridge(); |
238 | 246 |
239 private: | 247 private: |
240 DISALLOW_COPY_AND_ASSIGN(IBusBridge); | 248 DISALLOW_COPY_AND_ASSIGN(IBusBridge); |
241 }; | 249 }; |
242 | 250 |
243 } // namespace chromeos | 251 } // namespace chromeos |
244 | 252 |
245 #endif // CHROMEOS_IME_IBUS_BRIDGE_H_ | 253 #endif // CHROMEOS_IME_IBUS_BRIDGE_H_ |
OLD | NEW |