| Index: ui/platform_window/android/platform_window_android.cc
|
| diff --git a/ui/platform_window/android/platform_window_android.cc b/ui/platform_window/android/platform_window_android.cc
|
| index 49b6ba7b3357786af2331befc6823c7d3abf1cfd..bfa341c2a728bad985137fc14dbbc349c364e208 100644
|
| --- a/ui/platform_window/android/platform_window_android.cc
|
| +++ b/ui/platform_window/android/platform_window_android.cc
|
| @@ -51,6 +51,19 @@ bool PlatformWindowAndroid::Register(JNIEnv* env) {
|
| return RegisterNativesImpl(env);
|
| }
|
|
|
| +// static
|
| +void PlatformWindowAndroid::createForActivity(
|
| + JNIEnv* env,
|
| + jobject activity,
|
| + jlong nativePlatformWindowAndroid,
|
| + jlong nativeImeController) {
|
| + Java_PlatformWindowAndroid_createForActivity(
|
| + env,
|
| + activity,
|
| + nativePlatformWindowAndroid,
|
| + nativeImeController);
|
| +}
|
| +
|
| PlatformWindowAndroid::PlatformWindowAndroid(PlatformWindowDelegate* delegate)
|
| : delegate_(delegate),
|
| window_(NULL),
|
| @@ -72,6 +85,11 @@ void PlatformWindowAndroid::Destroy(JNIEnv* env, jobject obj) {
|
| delegate_->OnClosed();
|
| }
|
|
|
| +void PlatformWindowAndroid::JavaPlatformWindowCreated(
|
| + JNIEnv* env, jobject obj) {
|
| + java_platform_window_android_ = JavaObjectWeakGlobalRef(env, obj);
|
| +}
|
| +
|
| void PlatformWindowAndroid::SurfaceCreated(JNIEnv* env,
|
| jobject obj,
|
| jobject jsurface,
|
| @@ -152,14 +170,7 @@ void PlatformWindowAndroid::ReleaseWindow() {
|
| // PlatformWindowAndroid, PlatformWindow implementation:
|
|
|
| void PlatformWindowAndroid::Show() {
|
| - if (!java_platform_window_android_.is_empty())
|
| - return;
|
| - JNIEnv* env = base::android::AttachCurrentThread();
|
| - java_platform_window_android_ = JavaObjectWeakGlobalRef(
|
| - env, Java_PlatformWindowAndroid_createForActivity(
|
| - env, base::android::GetApplicationContext(),
|
| - reinterpret_cast<jlong>(this),
|
| - reinterpret_cast<jlong>(&platform_ime_controller_)).obj());
|
| + CHECK(!java_platform_window_android_.is_empty());
|
| }
|
|
|
| void PlatformWindowAndroid::Hide() {
|
|
|