Index: content/browser/android/ime_adapter_android.h |
diff --git a/content/browser/android/ime_adapter_android.h b/content/browser/android/ime_adapter_android.h |
index efe4fbb23c7bd09916bdb429754025e5ec779e8f..374398657ea5d49fcc50eaecc6cf41390263b06f 100644 |
--- a/content/browser/android/ime_adapter_android.h |
+++ b/content/browser/android/ime_adapter_android.h |
@@ -11,7 +11,10 @@ |
#include "base/android/jni_weak_ref.h" |
#include "content/browser/android/render_widget_host_connector.h" |
+#include "content/browser/renderer_host/input/timeout_monitor.h" |
#include "content/common/content_export.h" |
+#include "third_party/WebKit/public/platform/input_host.mojom.h" |
+#include "third_party/WebKit/public/platform/input_messages.mojom.h" |
#include "ui/gfx/geometry/rect_f.h" |
namespace blink { |
@@ -25,6 +28,7 @@ namespace content { |
class RenderFrameHost; |
class RenderWidgetHostImpl; |
class RenderWidgetHostViewAndroid; |
+class TimeoutMonitor; |
struct TextInputState; |
// This class is in charge of dispatching key events from the java side |
@@ -84,6 +88,18 @@ class CONTENT_EXPORT ImeAdapterAndroid : public RenderWidgetHostConnector { |
bool monitorRequest); |
bool RequestTextInputStateUpdate(JNIEnv*, |
const base::android::JavaParamRef<jobject>&); |
+ void ApplySpellCheckSuggestion( |
+ JNIEnv*, |
+ const base::android::JavaParamRef<jobject>&, |
+ const base::android::JavaParamRef<jstring>& replacement); |
+ void DeleteActiveSuggestionRange(JNIEnv*, |
+ const base::android::JavaParamRef<jobject>&); |
+ void NewWordAddedToDictionary( |
+ JNIEnv*, |
+ const base::android::JavaParamRef<jobject>&, |
+ const base::android::JavaParamRef<jstring>& word); |
+ void SuggestionMenuClosed(JNIEnv*, |
+ const base::android::JavaParamRef<jobject>&); |
// RendetWidgetHostConnector implementation. |
void UpdateRenderProcessConnection( |
@@ -98,6 +114,13 @@ class CONTENT_EXPORT ImeAdapterAndroid : public RenderWidgetHostConnector { |
void CancelComposition(); |
void FocusedNodeChanged(bool is_editable_node); |
void SetCharacterBounds(const std::vector<gfx::RectF>& rects); |
+ void StartSpellCheckMenuTimer(); |
+ void StopSpellCheckMenuTimer(); |
+ void ShowSpellCheckSuggestionMenu( |
+ double caret_x, |
+ double caret_y, |
+ const std::string& marked_text, |
+ const std::vector<blink::mojom::SpellCheckSuggestionPtr>& suggestions); |
base::android::ScopedJavaLocalRef<jobject> java_ime_adapter_for_testing( |
JNIEnv* env) { |
@@ -109,15 +132,19 @@ class CONTENT_EXPORT ImeAdapterAndroid : public RenderWidgetHostConnector { |
private: |
RenderWidgetHostImpl* GetFocusedWidget(); |
RenderFrameHost* GetFocusedFrame(); |
+ const blink::mojom::TextSuggestionBackendPtr& GetTextSuggestionBackend(); |
std::vector<blink::WebCompositionUnderline> GetUnderlinesFromSpans( |
JNIEnv* env, |
const base::android::JavaParamRef<jobject>& obj, |
const base::android::JavaParamRef<jobject>& text, |
const base::string16& text16); |
+ void OnSpellCheckMenuTimeout(); |
// Current RenderWidgetHostView connected to this instance. Can be null. |
RenderWidgetHostViewAndroid* rwhva_; |
JavaObjectWeakGlobalRef java_ime_adapter_; |
+ blink::mojom::TextSuggestionBackendPtr text_suggestion_backend_; |
+ TimeoutMonitor spellcheck_menu_timeout_; |
}; |
bool RegisterImeAdapter(JNIEnv* env); |