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

Unified Diff: content/browser/web_contents/web_contents_view_android.cc

Issue 26753005: Adding compositor callbacks to RenderWidgetHostViewAndroid (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Separate Compositor plumbing from SetContentView Created 7 years, 2 months 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/web_contents/web_contents_view_android.cc
diff --git a/content/browser/web_contents/web_contents_view_android.cc b/content/browser/web_contents/web_contents_view_android.cc
index b51449e2e40cd0ad70fde9aa4facc2dab845ed60..d204f9111a79de36455eb7ea35d73b1d63bc1dd8 100644
--- a/content/browser/web_contents/web_contents_view_android.cc
+++ b/content/browser/web_contents/web_contents_view_android.cc
@@ -12,6 +12,7 @@
#include "content/browser/renderer_host/render_view_host_impl.h"
#include "content/browser/web_contents/interstitial_page_impl.h"
#include "content/browser/web_contents/web_contents_impl.h"
+#include "content/public/browser/android/compositor.h"
#include "content/public/browser/web_contents_delegate.h"
namespace content {
@@ -30,7 +31,8 @@ WebContentsViewAndroid::WebContentsViewAndroid(
WebContentsViewDelegate* delegate)
: web_contents_(web_contents),
content_view_core_(NULL),
- delegate_(delegate) {
+ delegate_(delegate),
+ compositor_(NULL) {
}
WebContentsViewAndroid::~WebContentsViewAndroid() {
@@ -54,6 +56,15 @@ void WebContentsViewAndroid::SetContentViewCore(
}
}
+void WebContentsViewAndroid::SetCompositor(Compositor* compositor) {
+ compositor_ = compositor;
+ RenderWidgetHostViewAndroid* rwhv = static_cast<RenderWidgetHostViewAndroid*>(
+ web_contents_->GetRenderWidgetHostView());
+
+ if (rwhv)
+ rwhv->SetCompositor(compositor_);
+}
+
#if defined(GOOGLE_TV)
void WebContentsViewAndroid::NotifyExternalSurface(
int player_id, bool is_request, const gfx::RectF& rect) {
@@ -158,8 +169,9 @@ RenderWidgetHostView* WebContentsViewAndroid::CreateViewForWidget(
// order to paint it. See ContentView::GetRenderWidgetHostViewAndroid for an
// example of how this is achieved for InterstitialPages.
RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(render_widget_host);
- RenderWidgetHostView* view = new RenderWidgetHostViewAndroid(
+ RenderWidgetHostViewAndroid* view = new RenderWidgetHostViewAndroid(
rwhi, content_view_core_);
+ view->SetCompositor(compositor_);
David Trainor- moved to gerrit 2013/10/21 15:26:08 Was there one other code path to build a RWHVA?
powei 2013/11/08 21:34:47 No, but there is a path where RWHVA is created bef
return view;
}

Powered by Google App Engine
This is Rietveld 408576698