| Index: content/browser/android/content_view_core_impl.cc
|
| diff --git a/content/browser/android/content_view_core_impl.cc b/content/browser/android/content_view_core_impl.cc
|
| index 0e7e53ecd062f22adeb47802398a9810a556d574..0b8bc51f48beb8029cd63bea64741250c6ed4b8c 100644
|
| --- a/content/browser/android/content_view_core_impl.cc
|
| +++ b/content/browser/android/content_view_core_impl.cc
|
| @@ -275,18 +275,18 @@ void ContentViewCoreImpl::UpdateWindowAndroid(
|
| JNIEnv* env,
|
| const base::android::JavaParamRef<jobject>& obj,
|
| jlong window_android) {
|
| - ui::ViewAndroid* view = GetViewAndroid();
|
| ui::WindowAndroid* window =
|
| reinterpret_cast<ui::WindowAndroid*>(window_android);
|
| if (window == GetWindowAndroid())
|
| return;
|
| + ui::ViewAndroid* view = GetViewAndroid();
|
| if (GetWindowAndroid()) {
|
| for (auto& observer : observer_list_)
|
| observer.OnDetachedFromWindow();
|
| - view->RemoveFromParent();
|
| + view->SetWindowAndroid(nullptr);
|
| }
|
| if (window) {
|
| - window->AddChild(view);
|
| + view->SetWindowAndroid(window);
|
| for (auto& observer : observer_list_)
|
| observer.OnAttachedToWindow();
|
| }
|
| @@ -1532,7 +1532,6 @@ jlong Init(JNIEnv* env,
|
| const JavaParamRef<jobject>& obj,
|
| const JavaParamRef<jobject>& jweb_contents,
|
| const JavaParamRef<jobject>& jview_android_delegate,
|
| - jlong jwindow_android,
|
| jfloat dipScale,
|
| const JavaParamRef<jobject>& retained_objects_set) {
|
| WebContentsImpl* web_contents = static_cast<WebContentsImpl*>(
|
| @@ -1543,11 +1542,6 @@ jlong Init(JNIEnv* env,
|
| view_android->SetDelegate(jview_android_delegate);
|
| view_android->SetLayer(cc::Layer::Create());
|
|
|
| - ui::WindowAndroid* window_android =
|
| - reinterpret_cast<ui::WindowAndroid*>(jwindow_android);
|
| - DCHECK(window_android);
|
| - window_android->AddChild(view_android);
|
| -
|
| // TODO: pass dipScale.
|
| ContentViewCoreImpl* view = new ContentViewCoreImpl(
|
| env, obj, web_contents, dipScale, retained_objects_set);
|
|
|