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

Unified Diff: chromeos/dbus/ibus/ibus_input_context_client.h

Issue 12017010: Introduce bypass logic for SetCursorLocation message. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 11 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
« no previous file with comments | « chromeos/dbus/ibus/ibus_constants.h ('k') | chromeos/dbus/ibus/ibus_input_context_client.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chromeos/dbus/ibus/ibus_input_context_client.h
diff --git a/chromeos/dbus/ibus/ibus_input_context_client.h b/chromeos/dbus/ibus/ibus_input_context_client.h
index a55064e6be26ddeee7c7487042f70b7f1f292953..ca3d13a1f62afade682067d0083552f9406c60ef 100644
--- a/chromeos/dbus/ibus/ibus_input_context_client.h
+++ b/chromeos/dbus/ibus/ibus_input_context_client.h
@@ -43,7 +43,6 @@ class CHROMEOS_EXPORT IBusInputContextHandlerInterface {
// Called when the engine request hiding preedit string.
virtual void HidePreeditText() = 0;
-
};
// A class to make the actual DBus calls for IBusInputContext service.
@@ -54,6 +53,9 @@ class CHROMEOS_EXPORT IBusInputContextHandlerInterface {
// one input context but it is enough for ChromeOS.
class CHROMEOS_EXPORT IBusInputContextClient {
public:
+ typedef base::Callback<void(const ibus::Rect& cursor_location,
+ const ibus::Rect& composition_head)>
+ SetCursorLocationHandler;
typedef base::Callback<void(bool is_keyevent_used)> ProcessKeyEventCallback;
typedef base::Callback<void()> ErrorCallback;
@@ -68,6 +70,13 @@ class CHROMEOS_EXPORT IBusInputContextClient {
virtual void SetInputContextHandler(
IBusInputContextHandlerInterface* handler) = 0;
+ // Sets SetCursorLocation handler.
+ virtual void SetSetCursorLocationHandler(
+ const SetCursorLocationHandler& set_cursor_location_handler) = 0;
+
+ // Unset SetCursorLocation handler.
+ virtual void UnsetSetCursorLocationHandler() = 0;
+
// Resets object proxy. If you want to use InputContext again, should call
// Initialize function again.
virtual void ResetObjectProxy() = 0;
@@ -85,8 +94,8 @@ class CHROMEOS_EXPORT IBusInputContextClient {
// Invokes Reset method call.
virtual void Reset() = 0;
// Invokes SetCursorLocation method call.
- virtual void SetCursorLocation(int32 x, int32 y, int32 width,
- int32 height) = 0;
+ virtual void SetCursorLocation(const ibus::Rect& cursor_location,
+ const ibus::Rect& composition_head) = 0;
// Invokes ProcessKeyEvent method call. |callback| should not be null.
virtual void ProcessKeyEvent(uint32 keyval,
uint32 keycode,
@@ -105,6 +114,12 @@ class CHROMEOS_EXPORT IBusInputContextClient {
virtual void PropertyActivate(const std::string& key,
ibus::IBusPropertyState state) = 0;
+ // Returns true if the current input method is XKB layout.
+ virtual bool IsXKBLayout() = 0;
+
+ // Sets current input method is XKB layout or not.
+ virtual void SetIsXKBLayout(bool is_xkb_layout) = 0;
+
// Factory function, creates a new instance and returns ownership.
// For normal usage, access the singleton via DBusThreadManager::Get().
static CHROMEOS_EXPORT IBusInputContextClient* Create(
« no previous file with comments | « chromeos/dbus/ibus/ibus_constants.h ('k') | chromeos/dbus/ibus/ibus_input_context_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698