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) { |