OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ | 5 #ifndef ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ |
6 #define ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ | 6 #define ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ |
7 | 7 |
8 #include "android_webview/browser/browser_view_renderer.h" | 8 #include "android_webview/browser/browser_view_renderer.h" |
9 #include "base/android/scoped_java_ref.h" | 9 #include "base/android/scoped_java_ref.h" |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
11 | 11 |
12 namespace android_webview { | 12 namespace android_webview { |
13 | 13 |
14 // Native side of java-class of same name. | 14 // Native side of java-class of same name. |
15 // Provides utility methods for rendering involving with Java objects. | 15 // Provides utility methods for rendering involving with Java objects. |
16 // TODO(boliu): Rename this class to JavaRasterHelper. | 16 // TODO(boliu): Rename this class to JavaRasterHelper. |
17 class JavaBrowserViewRendererHelper : public BrowserViewRendererJavaHelper { | 17 class JavaBrowserViewRendererHelper : public BrowserViewRendererJavaHelper { |
18 public: | 18 public: |
19 JavaBrowserViewRendererHelper(); | 19 JavaBrowserViewRendererHelper(); |
20 virtual ~JavaBrowserViewRendererHelper(); | 20 virtual ~JavaBrowserViewRendererHelper(); |
21 | 21 |
22 static void SetAwDrawSWFunctionTable(AwDrawSWFunctionTable* table); | 22 static void SetAwDrawSWFunctionTable(AwDrawSWFunctionTable* table); |
23 static JavaBrowserViewRendererHelper* GetInstance(); | 23 static JavaBrowserViewRendererHelper* GetInstance(); |
24 | 24 |
25 // BrowserViewRendererJavaHelper implementation. | 25 // BrowserViewRendererJavaHelper implementation. |
26 virtual bool RenderViaAuxilaryBitmapIfNeeded( | 26 virtual bool RenderViaAuxilaryBitmapIfNeeded( |
27 jobject java_canvas, | 27 jobject java_canvas, |
28 const gfx::Vector2d& scroll_correction, | 28 const gfx::Vector2d& scroll_correction, |
29 const gfx::Size& auxiliary_bitmap_size, | 29 const gfx::Size& auxiliary_bitmap_size, |
30 RenderMethod render_source) OVERRIDE; | 30 RenderMethod render_source) override; |
31 | 31 |
32 private: | 32 private: |
33 bool RenderViaAuxilaryBitmap(JNIEnv* env, | 33 bool RenderViaAuxilaryBitmap(JNIEnv* env, |
34 jobject java_canvas, | 34 jobject java_canvas, |
35 const gfx::Vector2d& scroll_correction, | 35 const gfx::Vector2d& scroll_correction, |
36 const gfx::Size& auxiliary_bitmap_size, | 36 const gfx::Size& auxiliary_bitmap_size, |
37 const RenderMethod& render_source); | 37 const RenderMethod& render_source); |
38 bool RasterizeIntoBitmap( | 38 bool RasterizeIntoBitmap( |
39 JNIEnv* env, | 39 JNIEnv* env, |
40 const base::android::JavaRef<jobject>& jbitmap, | 40 const base::android::JavaRef<jobject>& jbitmap, |
41 const JavaBrowserViewRendererHelper::RenderMethod& renderer); | 41 const JavaBrowserViewRendererHelper::RenderMethod& renderer); |
42 }; | 42 }; |
43 | 43 |
44 bool RegisterJavaBrowserViewRendererHelper(JNIEnv* env); | 44 bool RegisterJavaBrowserViewRendererHelper(JNIEnv* env); |
45 | 45 |
46 } // namespace android_webview | 46 } // namespace android_webview |
47 | 47 |
48 #endif // ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ | 48 #endif // ANDROID_WEBVIEW_NATIVE_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_ |
OLD | NEW |