OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_AW_CONTENTS_H_ | 5 #ifndef ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_H_ |
6 #define ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_H_ | 6 #define ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_H_ |
7 | 7 |
8 #include <jni.h> | 8 #include <jni.h> |
9 #include <list> | 9 #include <list> |
10 #include <string> | 10 #include <string> |
(...skipping 12 matching lines...) Expand all Loading... |
23 class TabContents; | 23 class TabContents; |
24 | 24 |
25 namespace content { | 25 namespace content { |
26 class WebContents; | 26 class WebContents; |
27 } | 27 } |
28 | 28 |
29 namespace android_webview { | 29 namespace android_webview { |
30 | 30 |
31 class AwContentsContainer; | 31 class AwContentsContainer; |
32 class AwContentsClientBridge; | 32 class AwContentsClientBridge; |
| 33 class AwPdfExporter; |
33 class AwWebContentsDelegate; | 34 class AwWebContentsDelegate; |
34 | 35 |
35 // Native side of java-class of same name. | 36 // Native side of java-class of same name. |
36 // Provides the ownership of and access to browser components required for | 37 // Provides the ownership of and access to browser components required for |
37 // WebView functionality; analogous to chrome's TabContents, but with a | 38 // WebView functionality; analogous to chrome's TabContents, but with a |
38 // level of indirection provided by the AwContentsContainer abstraction. | 39 // level of indirection provided by the AwContentsContainer abstraction. |
39 // | 40 // |
40 // Object lifetime: | 41 // Object lifetime: |
41 // For most purposes the java and native objects can be considered to have | 42 // For most purposes the java and native objects can be considered to have |
42 // 1:1 lifetime and relationship. The exception is the java instance that | 43 // 1:1 lifetime and relationship. The exception is the java instance that |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 jobject aw_contents, | 77 jobject aw_contents, |
77 jobject web_contents_delegate, | 78 jobject web_contents_delegate, |
78 jobject contents_client_bridge, | 79 jobject contents_client_bridge, |
79 jobject io_thread_client, | 80 jobject io_thread_client, |
80 jobject intercept_navigation_delegate); | 81 jobject intercept_navigation_delegate); |
81 jint GetWebContents(JNIEnv* env, jobject obj); | 82 jint GetWebContents(JNIEnv* env, jobject obj); |
82 | 83 |
83 void Destroy(JNIEnv* env, jobject obj); | 84 void Destroy(JNIEnv* env, jobject obj); |
84 void DocumentHasImages(JNIEnv* env, jobject obj, jobject message); | 85 void DocumentHasImages(JNIEnv* env, jobject obj, jobject message); |
85 void GenerateMHTML(JNIEnv* env, jobject obj, jstring jpath, jobject callback); | 86 void GenerateMHTML(JNIEnv* env, jobject obj, jstring jpath, jobject callback); |
| 87 void CreatePdfExporter(JNIEnv* env, jobject obj, jobject pdfExporter); |
86 void AddVisitedLinks(JNIEnv* env, jobject obj, jobjectArray jvisited_links); | 88 void AddVisitedLinks(JNIEnv* env, jobject obj, jobjectArray jvisited_links); |
87 base::android::ScopedJavaLocalRef<jbyteArray> GetCertificate( | 89 base::android::ScopedJavaLocalRef<jbyteArray> GetCertificate( |
88 JNIEnv* env, jobject obj); | 90 JNIEnv* env, jobject obj); |
89 void RequestNewHitTestDataAt(JNIEnv* env, jobject obj, jint x, jint y); | 91 void RequestNewHitTestDataAt(JNIEnv* env, jobject obj, jint x, jint y); |
90 void UpdateLastHitTestData(JNIEnv* env, jobject obj); | 92 void UpdateLastHitTestData(JNIEnv* env, jobject obj); |
91 void OnSizeChanged(JNIEnv* env, jobject obj, int w, int h, int ow, int oh); | 93 void OnSizeChanged(JNIEnv* env, jobject obj, int w, int h, int ow, int oh); |
92 void SetViewVisibility(JNIEnv* env, jobject obj, bool visible); | 94 void SetViewVisibility(JNIEnv* env, jobject obj, bool visible); |
93 void SetWindowVisibility(JNIEnv* env, jobject obj, bool visible); | 95 void SetWindowVisibility(JNIEnv* env, jobject obj, bool visible); |
94 void SetIsPaused(JNIEnv* env, jobject obj, bool paused); | 96 void SetIsPaused(JNIEnv* env, jobject obj, bool paused); |
95 void OnAttachedToWindow(JNIEnv* env, jobject obj, int w, int h); | 97 void OnAttachedToWindow(JNIEnv* env, jobject obj, int w, int h); |
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 | 190 |
189 JavaObjectWeakGlobalRef java_ref_; | 191 JavaObjectWeakGlobalRef java_ref_; |
190 scoped_ptr<content::WebContents> web_contents_; | 192 scoped_ptr<content::WebContents> web_contents_; |
191 scoped_ptr<AwWebContentsDelegate> web_contents_delegate_; | 193 scoped_ptr<AwWebContentsDelegate> web_contents_delegate_; |
192 scoped_ptr<AwContentsClientBridge> contents_client_bridge_; | 194 scoped_ptr<AwContentsClientBridge> contents_client_bridge_; |
193 scoped_ptr<AwRenderViewHostExt> render_view_host_ext_; | 195 scoped_ptr<AwRenderViewHostExt> render_view_host_ext_; |
194 scoped_ptr<FindHelper> find_helper_; | 196 scoped_ptr<FindHelper> find_helper_; |
195 scoped_ptr<IconHelper> icon_helper_; | 197 scoped_ptr<IconHelper> icon_helper_; |
196 scoped_ptr<AwContents> pending_contents_; | 198 scoped_ptr<AwContents> pending_contents_; |
197 scoped_ptr<BrowserViewRenderer> browser_view_renderer_; | 199 scoped_ptr<BrowserViewRenderer> browser_view_renderer_; |
| 200 scoped_ptr<AwPdfExporter> pdf_exporter_; |
198 | 201 |
199 // GURL is supplied by the content layer as requesting frame. | 202 // GURL is supplied by the content layer as requesting frame. |
200 // Callback is supplied by the content layer, and is invoked with the result | 203 // Callback is supplied by the content layer, and is invoked with the result |
201 // from the permission prompt. | 204 // from the permission prompt. |
202 typedef std::pair<const GURL, base::Callback<void(bool)> > OriginCallback; | 205 typedef std::pair<const GURL, base::Callback<void(bool)> > OriginCallback; |
203 // The first element in the list is always the currently pending request. | 206 // The first element in the list is always the currently pending request. |
204 std::list<OriginCallback> pending_geolocation_prompts_; | 207 std::list<OriginCallback> pending_geolocation_prompts_; |
205 | 208 |
206 DISALLOW_COPY_AND_ASSIGN(AwContents); | 209 DISALLOW_COPY_AND_ASSIGN(AwContents); |
207 }; | 210 }; |
208 | 211 |
209 bool RegisterAwContents(JNIEnv* env); | 212 bool RegisterAwContents(JNIEnv* env); |
210 | 213 |
211 } // namespace android_webview | 214 } // namespace android_webview |
212 | 215 |
213 #endif // ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_H_ | 216 #endif // ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_H_ |
OLD | NEW |