| Index: android_webview/browser/in_process_renderer/in_process_view_renderer.h
|
| diff --git a/android_webview/browser/in_process_renderer/in_process_view_renderer.h b/android_webview/browser/in_process_renderer/in_process_view_renderer.h
|
| index d2c0c24d1ac27e380765fed9675f27b868760cc7..0f2f9136852e7ff819b51f9e850a6130762088ac 100644
|
| --- a/android_webview/browser/in_process_renderer/in_process_view_renderer.h
|
| +++ b/android_webview/browser/in_process_renderer/in_process_view_renderer.h
|
| @@ -11,30 +11,65 @@
|
|
|
| namespace content {
|
| class SynchronousCompositor;
|
| +class WebContents;
|
| }
|
|
|
| namespace android_webview {
|
|
|
| // Provides RenderViewHost wrapper functionality for sending WebView-specific
|
| // IPC messages to the renderer and from there to WebKit.
|
| -class InProcessViewRenderer : public BrowserViewRendererImpl,
|
| +class InProcessViewRenderer : public BrowserViewRenderer,
|
| public content::SynchronousCompositorClient {
|
| public:
|
| InProcessViewRenderer(BrowserViewRenderer::Client* client,
|
| JavaHelper* java_helper);
|
| virtual ~InProcessViewRenderer();
|
|
|
| + static InProcessViewRenderer* FromWebContents(
|
| + content::WebContents* contents);
|
| +
|
| // BrowserViewRenderer overrides
|
| + virtual void SetContents(
|
| + content::ContentViewCore* content_view_core) OVERRIDE;
|
| virtual void BindSynchronousCompositor(
|
| content::SynchronousCompositor* compositor) OVERRIDE;
|
| - virtual bool RenderPicture(SkCanvas* canvas) OVERRIDE;
|
| + virtual void DrawGL(AwDrawGLInfo* draw_info) OVERRIDE;
|
| + virtual void SetScrollForHWFrame(int x, int y) OVERRIDE;
|
| + virtual bool DrawSW(jobject java_canvas,
|
| + const gfx::Rect& clip_bounds) OVERRIDE;
|
| + virtual base::android::ScopedJavaLocalRef<jobject> CapturePicture() OVERRIDE;
|
| + virtual void EnableOnNewPicture(OnNewPictureMode mode) OVERRIDE;
|
| + virtual void OnVisibilityChanged(
|
| + bool view_visible, bool window_visible) OVERRIDE;
|
| + virtual void OnSizeChanged(int width, int height) OVERRIDE;
|
| + virtual void OnAttachedToWindow(int width, int height) OVERRIDE;
|
| + virtual void OnDetachedFromWindow() OVERRIDE;
|
| + virtual bool IsAttachedToWindow() OVERRIDE;
|
| + virtual bool IsViewVisible() OVERRIDE;
|
| + virtual gfx::Rect GetScreenRect() OVERRIDE;
|
|
|
| // SynchronousCompositorClient overrides
|
| - virtual void DidDestroyCompositor(
|
| + virtual void DidDestroyCompositor(
|
| content::SynchronousCompositor* compositor) OVERRIDE;
|
| + virtual void SetContinuousInvalidate(bool invalidate) OVERRIDE;
|
| +
|
| + void WebContentsGone();
|
|
|
| private:
|
| + void Invalidate();
|
| + bool RenderPicture(SkCanvas* canvas);
|
| +
|
| + content::WebContents* web_contents_;
|
| content::SynchronousCompositor* compositor_;
|
| + BrowserViewRenderer::Client* client_;
|
| +
|
| + bool view_visible_;
|
| + bool about_to_hardware_draw_;
|
| + bool continuous_invalidate_;
|
| +
|
| + // Used only for detecting Android View System context changes.
|
| + // Not to be used between draw calls.
|
| + EGLContext last_frame_context_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(InProcessViewRenderer);
|
| };
|
|
|