Index: content/browser/renderer_host/ime_adapter_android.h |
diff --git a/content/browser/android/ime_adapter_android.h b/content/browser/renderer_host/ime_adapter_android.h |
similarity index 70% |
rename from content/browser/android/ime_adapter_android.h |
rename to content/browser/renderer_host/ime_adapter_android.h |
index e2860e1203b7f1fb73cb317200af17681443cecc..72ab6d3ed3298b683e3aef302472a424f4de310f 100644 |
--- a/content/browser/android/ime_adapter_android.h |
+++ b/content/browser/renderer_host/ime_adapter_android.h |
@@ -1,18 +1,17 @@ |
-// Copyright 2017 The Chromium Authors. All rights reserved. |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef CONTENT_BROWSER_ANDROID_IME_ADAPTER_ANDROID_H_ |
-#define CONTENT_BROWSER_ANDROID_IME_ADAPTER_ANDROID_H_ |
+#ifndef CONTENT_BROWSER_RENDERER_HOST_IME_ADAPTER_ANDROID_H_ |
+#define CONTENT_BROWSER_RENDERER_HOST_IME_ADAPTER_ANDROID_H_ |
#include <jni.h> |
#include <vector> |
#include "base/android/jni_weak_ref.h" |
-#include "base/memory/weak_ptr.h" |
+#include "base/strings/string16.h" |
#include "content/common/content_export.h" |
-#include "content/public/browser/web_contents_observer.h" |
#include "ui/gfx/geometry/rect_f.h" |
namespace blink { |
@@ -26,19 +25,16 @@ namespace content { |
class RenderFrameHost; |
class RenderWidgetHostImpl; |
class RenderWidgetHostViewAndroid; |
-struct TextInputState; |
// This class is in charge of dispatching key events from the java side |
// and forward to renderer along with input method results via |
// corresponding host view. |
// Ownership of these objects remains on the native side (see |
// RenderWidgetHostViewAndroid). |
-class CONTENT_EXPORT ImeAdapterAndroid : public WebContentsObserver { |
+class CONTENT_EXPORT ImeAdapterAndroid { |
public: |
- ImeAdapterAndroid(JNIEnv* env, |
- const base::android::JavaParamRef<jobject>& obj, |
- WebContents* web_contents); |
- ~ImeAdapterAndroid() override; |
+ explicit ImeAdapterAndroid(RenderWidgetHostViewAndroid* rwhva); |
+ ~ImeAdapterAndroid(); |
// Called from java -> native |
bool SendKeyEvent( |
@@ -64,6 +60,9 @@ class CONTENT_EXPORT ImeAdapterAndroid : public WebContentsObserver { |
int relative_cursor_pos); |
void FinishComposingText(JNIEnv* env, |
const base::android::JavaParamRef<jobject>&); |
+ void AttachImeAdapter( |
+ JNIEnv*, |
+ const base::android::JavaParamRef<jobject>& java_object); |
void SetEditableSelectionOffsets(JNIEnv*, |
const base::android::JavaParamRef<jobject>&, |
int start, |
@@ -81,10 +80,9 @@ class CONTENT_EXPORT ImeAdapterAndroid : public WebContentsObserver { |
const base::android::JavaParamRef<jobject>&, |
int before, |
int after); |
- void RequestCursorUpdate(JNIEnv*, |
- const base::android::JavaParamRef<jobject>&, |
- bool immediateRequest, |
- bool monitorRequest); |
+ void ResetImeAdapter(JNIEnv*, const base::android::JavaParamRef<jobject>&); |
+ void RequestCursorUpdate(JNIEnv*, const base::android::JavaParamRef<jobject>&, |
+ bool immediateRequest, bool monitorRequest); |
bool RequestTextInputStateUpdate(JNIEnv*, |
const base::android::JavaParamRef<jobject>&); |
@@ -98,16 +96,6 @@ class CONTENT_EXPORT ImeAdapterAndroid : public WebContentsObserver { |
return java_ime_adapter_.get(env); |
} |
- // WebContentsObserver implementation. |
- void RenderViewReady() override; |
- void RenderViewHostChanged(RenderViewHost* old_host, |
- RenderViewHost* new_host) override; |
- void DidAttachInterstitialPage() override; |
- void DidDetachInterstitialPage() override; |
- void WebContentsDestroyed() override; |
- |
- void UpdateState(const TextInputState& state); |
- |
private: |
RenderWidgetHostImpl* GetFocusedWidget(); |
RenderFrameHost* GetFocusedFrame(); |
@@ -116,10 +104,8 @@ class CONTENT_EXPORT ImeAdapterAndroid : public WebContentsObserver { |
const base::android::JavaParamRef<jobject>& obj, |
const base::android::JavaParamRef<jobject>& text, |
const base::string16& text16); |
- RenderWidgetHostViewAndroid* GetRenderWidgetHostViewAndroid() const; |
- void UpdateRenderProcessConnection(RenderWidgetHostViewAndroid* new_rwhva); |
- base::WeakPtr<RenderWidgetHostViewAndroid> rwhva_; |
+ RenderWidgetHostViewAndroid* rwhva_; |
JavaObjectWeakGlobalRef java_ime_adapter_; |
}; |
@@ -127,4 +113,4 @@ bool RegisterImeAdapter(JNIEnv* env); |
} // namespace content |
-#endif // CONTENT_BROWSER_ANDROID_IME_ADAPTER_ANDROID_H_ |
+#endif // CONTENT_BROWSER_RENDERER_HOST_IME_ADAPTER_ANDROID_H_ |