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

Unified Diff: android_webview/native/aw_contents.cc

Issue 176543004: aw: Split hardware rendering into HardwareRenderer (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review comments Created 6 years, 10 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
« no previous file with comments | « android_webview/native/aw_contents.h ('k') | android_webview/native/aw_dev_tools_server.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: android_webview/native/aw_contents.cc
diff --git a/android_webview/native/aw_contents.cc b/android_webview/native/aw_contents.cc
index 9c964eb0cbe512eeec45bbd9bb0207398193d117..319fbd857d3e6053e7c3f274d367be6a37eda220 100644
--- a/android_webview/native/aw_contents.cc
+++ b/android_webview/native/aw_contents.cc
@@ -9,8 +9,8 @@
#include "android_webview/browser/aw_browser_context.h"
#include "android_webview/browser/aw_browser_main_parts.h"
#include "android_webview/browser/aw_resource_context.h"
+#include "android_webview/browser/browser_view_renderer.h"
#include "android_webview/browser/gpu_memory_buffer_factory_impl.h"
-#include "android_webview/browser/in_process_view_renderer.h"
#include "android_webview/browser/net_disk_cache_remover.h"
#include "android_webview/browser/renderer_host/aw_resource_dispatcher_host_delegate.h"
#include "android_webview/common/aw_hit_test_data.h"
@@ -185,9 +185,7 @@ AwContents* AwContents::FromID(int render_process_id, int render_view_id) {
AwContents::AwContents(scoped_ptr<WebContents> web_contents)
: web_contents_(web_contents.Pass()),
- browser_view_renderer_(new InProcessViewRenderer(
- this,
- web_contents_.get())) {
+ browser_view_renderer_(this, web_contents_.get()) {
base::subtle::NoBarrier_AtomicIncrement(&g_instance_count, 1);
icon_helper_.reset(new IconHelper(web_contents_.get()));
icon_helper_->SetListener(this);
@@ -359,7 +357,7 @@ jint GetNativeInstanceCount(JNIEnv* env, jclass) {
jint AwContents::GetAwDrawGLViewContext(JNIEnv* env, jobject obj) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- return reinterpret_cast<jint>(browser_view_renderer_.get());
+ return reinterpret_cast<jint>(&browser_view_renderer_);
}
namespace {
@@ -408,7 +406,6 @@ void AwContents::CreatePdfExporter(JNIEnv* env,
pdf_exporter_.reset(
new AwPdfExporter(env,
pdfExporter,
- browser_view_renderer_.get(),
web_contents_.get()));
}
@@ -733,22 +730,22 @@ void AwContents::UpdateLastHitTestData(JNIEnv* env, jobject obj) {
void AwContents::OnSizeChanged(JNIEnv* env, jobject obj,
int w, int h, int ow, int oh) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->OnSizeChanged(w, h);
+ browser_view_renderer_.OnSizeChanged(w, h);
}
void AwContents::SetViewVisibility(JNIEnv* env, jobject obj, bool visible) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->SetViewVisibility(visible);
+ browser_view_renderer_.SetViewVisibility(visible);
}
void AwContents::SetWindowVisibility(JNIEnv* env, jobject obj, bool visible) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->SetWindowVisibility(visible);
+ browser_view_renderer_.SetWindowVisibility(visible);
}
void AwContents::SetIsPaused(JNIEnv* env, jobject obj, bool paused) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->SetIsPaused(paused);
+ browser_view_renderer_.SetIsPaused(paused);
ContentViewCore* cvc =
ContentViewCore::FromWebContents(web_contents_.get());
if (cvc) {
@@ -761,12 +758,12 @@ void AwContents::SetIsPaused(JNIEnv* env, jobject obj, bool paused) {
void AwContents::OnAttachedToWindow(JNIEnv* env, jobject obj, int w, int h) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->OnAttachedToWindow(w, h);
+ browser_view_renderer_.OnAttachedToWindow(w, h);
}
void AwContents::OnDetachedFromWindow(JNIEnv* env, jobject obj) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->OnDetachedFromWindow();
+ browser_view_renderer_.OnDetachedFromWindow();
}
base::android::ScopedJavaLocalRef<jbyteArray>
@@ -812,7 +809,7 @@ bool AwContents::OnDraw(JNIEnv* env,
jint clip_right,
jint clip_bottom) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- return browser_view_renderer_->OnDraw(
+ return browser_view_renderer_.OnDraw(
canvas,
is_hardware_accelerated,
gfx::Vector2d(scroll_x, scroll_y),
@@ -827,7 +824,7 @@ void AwContents::SetGlobalVisibleRect(JNIEnv* env,
jint visible_right,
jint visible_bottom) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->SetGlobalVisibleRect(
+ browser_view_renderer_.SetGlobalVisibleRect(
gfx::Rect(visible_left,
visible_top,
visible_right - visible_left,
@@ -941,9 +938,13 @@ void AwContents::DidOverscroll(gfx::Vector2d overscroll_delta) {
env, obj.obj(), overscroll_delta.x(), overscroll_delta.y());
}
+const BrowserViewRenderer* AwContents::GetBrowserViewRenderer() const {
+ return &browser_view_renderer_;
+}
+
void AwContents::SetDipScale(JNIEnv* env, jobject obj, jfloat dip_scale) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->SetDipScale(dip_scale);
+ browser_view_renderer_.SetDipScale(dip_scale);
}
void AwContents::SetFixedLayoutSize(JNIEnv* env,
@@ -956,7 +957,7 @@ void AwContents::SetFixedLayoutSize(JNIEnv* env,
void AwContents::ScrollTo(JNIEnv* env, jobject obj, jint x, jint y) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->ScrollTo(gfx::Vector2d(x, y));
+ browser_view_renderer_.ScrollTo(gfx::Vector2d(x, y));
}
void AwContents::OnWebLayoutPageScaleFactorChanged(float page_scale_factor) {
@@ -985,20 +986,20 @@ jlong AwContents::CapturePicture(JNIEnv* env,
int width,
int height) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- return reinterpret_cast<intptr_t>(new AwPicture(
- browser_view_renderer_->CapturePicture(width, height)));
+ return reinterpret_cast<intptr_t>(
+ new AwPicture(browser_view_renderer_.CapturePicture(width, height)));
}
void AwContents::EnableOnNewPicture(JNIEnv* env,
jobject obj,
jboolean enabled) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->EnableOnNewPicture(enabled);
+ browser_view_renderer_.EnableOnNewPicture(enabled);
}
void AwContents::ClearView(JNIEnv* env, jobject obj) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->ClearView();
+ browser_view_renderer_.ClearView();
}
void AwContents::SetExtraHeadersForUrl(JNIEnv* env, jobject obj,
@@ -1022,7 +1023,7 @@ void AwContents::SetJsOnlineProperty(JNIEnv* env,
void AwContents::TrimMemory(JNIEnv* env, jobject obj, jint level) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- browser_view_renderer_->TrimMemory(level);
+ browser_view_renderer_.TrimMemory(level);
}
void SetShouldDownloadFavicons(JNIEnv* env, jclass jclazz) {
« no previous file with comments | « android_webview/native/aw_contents.h ('k') | android_webview/native/aw_dev_tools_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698