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

Unified Diff: content/browser/renderer_host/render_widget_host_view_android.cc

Issue 2484793002: Remove access to WebContents in RWHVA::SynchronousFrameMetadata() (Closed)
Patch Set: Created 4 years, 1 month 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
Index: content/browser/renderer_host/render_widget_host_view_android.cc
diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/content/browser/renderer_host/render_widget_host_view_android.cc
index 78c0d2271379a3629f84f3621665b921121d1daf..d4f0e11bc264ca40081a43858870291a4d022c4b 100644
--- a/content/browser/renderer_host/render_widget_host_view_android.cc
+++ b/content/browser/renderer_host/render_widget_host_view_android.cc
@@ -435,7 +435,8 @@ void RenderWidgetHostViewAndroid::OnContextLost() {
RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid(
RenderWidgetHostImpl* widget_host,
- ContentViewCoreImpl* content_view_core)
+ ContentViewCoreImpl* content_view_core,
+ RenderWidgetHostViewAndroidDelegate* delegate)
: host_(widget_host),
outstanding_vsync_requests_(0),
is_showing_(!widget_host->is_hidden()),
@@ -451,6 +452,7 @@ RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid(
stylus_text_selector_(this),
using_browser_compositor_(CompositorImpl::IsInitialized()),
frame_evictor_(new DelegatedFrameEvictor(this)),
+ delegate_(delegate),
locks_on_frame_count_(0),
observing_root_window_(false),
weak_ptr_factory_(this) {
@@ -601,9 +603,7 @@ void RenderWidgetHostViewAndroid::Focus() {
if (overscroll_controller_)
overscroll_controller_->Enable();
if (content_view_core_) {
- WebContentsImpl* web_contents_impl =
- static_cast<WebContentsImpl*>(content_view_core_->GetWebContents());
- if (web_contents_impl->ShowingInterstitialPage())
+ if (delegate_->ShowingInterstitialPage())
content_view_core_->ForceUpdateImeAdapter(GetNativeImeAdapter());
boliu 2016/11/07 18:44:36 I think this can move to WebContentsViewAndroid, m
Jinsuk Kim 2016/11/07 23:26:36 Done.
}
}
@@ -1191,10 +1191,8 @@ void RenderWidgetHostViewAndroid::SynchronousFrameMetadata(
OnFrameMetadataUpdated(frame_metadata.Clone(), false);
// DevTools ScreenCast support for Android WebView.
- WebContents* web_contents = content_view_core_->GetWebContents();
- if (DevToolsAgentHost::HasFor(web_contents)) {
- scoped_refptr<DevToolsAgentHost> dtah =
- DevToolsAgentHost::GetOrCreateFor(web_contents);
+ scoped_refptr<DevToolsAgentHost> dtah = delegate_->GetDevToolsAgentHost();
+ if (dtah) {
// Unblock the compositor.
BrowserThread::PostTask(
BrowserThread::UI, FROM_HERE,

Powered by Google App Engine
This is Rietveld 408576698