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

Unified Diff: android_webview/browser/browser_view_renderer.cc

Issue 414503004: android: Use hw acceleration in android_webview_shell (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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: android_webview/browser/browser_view_renderer.cc
diff --git a/android_webview/browser/browser_view_renderer.cc b/android_webview/browser/browser_view_renderer.cc
index ef039bf7ec396775f699682057931f2aaada0b11..6ace1d4ef811d3684b0a4390a50538f2be2e2228 100644
--- a/android_webview/browser/browser_view_renderer.cc
+++ b/android_webview/browser/browser_view_renderer.cc
@@ -25,6 +25,7 @@
#include "third_party/skia/include/core/SkPicture.h"
#include "third_party/skia/include/core/SkPictureRecorder.h"
#include "ui/gfx/vector2d_conversions.h"
+#include "cc/quads/draw_quad.h"
using base::android::AttachCurrentThread;
using base::android::JavaRef;
@@ -221,6 +222,8 @@ bool BrowserViewRenderer::OnDraw(jobject java_canvas,
last_on_draw_scroll_offset_ = scroll;
last_on_draw_global_visible_rect_ = global_visible_rect;
+ LOG(INFO) << "OnDraw " << clear_view_ << " " << is_hardware_canvas
+ << " " << attached_to_window_;
if (clear_view_)
return false;
@@ -238,7 +241,9 @@ bool BrowserViewRenderer::OnDrawHardware(jobject java_canvas) {
return false;
if (!hardware_enabled_) {
+ LOG(INFO) << "InitHwDraw";
hardware_enabled_ = compositor_->InitializeHwDraw();
+ LOG(INFO) << "DidInitHwDraw";
if (hardware_enabled_) {
tile_manager_key_ = GlobalTileManager::GetInstance()->PushBack(this);
gpu::GLInProcessContext* share_context = compositor_->GetShareContext();
@@ -272,10 +277,23 @@ bool BrowserViewRenderer::OnDrawHardware(jobject java_canvas) {
GlobalTileManager::GetInstance()->DidUse(tile_manager_key_);
+ for (size_t i = 0;
+ i < frame->delegated_frame_data->render_pass_list.size();
+ ++i) {
+ const cc::QuadList& quad_list =
+ frame->delegated_frame_data->render_pass_list.at(i)->quad_list;
+ for (cc::QuadList::ConstBackToFrontIterator it =
+ quad_list.BackToFrontBegin();
+ it != quad_list.BackToFrontEnd();
+ ++it) {
+ LOG(INFO) << "draw quad " << (*it)->material;
+ }
+ }
frame->AssignTo(&draw_gl_input->frame);
ReturnUnusedResource(shared_renderer_state_->PassDrawGLInput());
shared_renderer_state_->SetDrawGLInput(draw_gl_input.Pass());
DidComposite();
+ LOG(INFO) << "DidComposite " << width_ << "x" << height_;
return client_->RequestDrawGL(java_canvas, false);
}
« no previous file with comments | « no previous file | android_webview/browser/hardware_renderer.cc » ('j') | android_webview/browser/hardware_renderer.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698