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

Side by Side Diff: android_webview/native/aw_contents_client_bridge.h

Issue 2295693004: Pass JavaRef to Java methods in android_webview. (Closed)
Patch Set: Created 4 years, 3 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 unified diff | Download patch
OLDNEW
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_AW_CONTENTS_CLIENT_BRIDGE_H_ 5 #ifndef ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_CLIENT_BRIDGE_H_
6 #define ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_CLIENT_BRIDGE_H_ 6 #define ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_CLIENT_BRIDGE_H_
7 7
8 #include <jni.h> 8 #include <jni.h>
9 9
10 #include "android_webview/browser/aw_contents_client_bridge_base.h" 10 #include "android_webview/browser/aw_contents_client_bridge_base.h"
(...skipping 11 matching lines...) Expand all
22 22
23 // A class that handles the Java<->Native communication for the 23 // A class that handles the Java<->Native communication for the
24 // AwContentsClient. AwContentsClientBridge is created and owned by 24 // AwContentsClient. AwContentsClientBridge is created and owned by
25 // native AwContents class and it only has a weak reference to the 25 // native AwContents class and it only has a weak reference to the
26 // its Java peer. Since the Java AwContentsClientBridge can have 26 // its Java peer. Since the Java AwContentsClientBridge can have
27 // indirect refs from the Application (via callbacks) and so can outlive 27 // indirect refs from the Application (via callbacks) and so can outlive
28 // webview, this class notifies it before being destroyed and to nullify 28 // webview, this class notifies it before being destroyed and to nullify
29 // any references. 29 // any references.
30 class AwContentsClientBridge : public AwContentsClientBridgeBase { 30 class AwContentsClientBridge : public AwContentsClientBridgeBase {
31 public: 31 public:
32 AwContentsClientBridge(JNIEnv* env, jobject obj); 32 AwContentsClientBridge(JNIEnv* env,
33 const base::android::JavaRef<jobject>& obj);
33 ~AwContentsClientBridge() override; 34 ~AwContentsClientBridge() override;
34 35
35 // AwContentsClientBridgeBase implementation 36 // AwContentsClientBridgeBase implementation
36 void AllowCertificateError( 37 void AllowCertificateError(
37 int cert_error, 38 int cert_error,
38 net::X509Certificate* cert, 39 net::X509Certificate* cert,
39 const GURL& request_url, 40 const GURL& request_url,
40 const base::Callback<void(content::CertificateRequestResultType)>& 41 const base::Callback<void(content::CertificateRequestResultType)>&
41 callback, 42 callback,
42 bool* cancel_request) override; 43 bool* cancel_request) override;
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 // doesn't provide Release, so ownership is managed manually. 92 // doesn't provide Release, so ownership is managed manually.
92 IDMap<content::ClientCertificateDelegate> 93 IDMap<content::ClientCertificateDelegate>
93 pending_client_cert_request_delegates_; 94 pending_client_cert_request_delegates_;
94 }; 95 };
95 96
96 bool RegisterAwContentsClientBridge(JNIEnv* env); 97 bool RegisterAwContentsClientBridge(JNIEnv* env);
97 98
98 } // namespace android_webview 99 } // namespace android_webview
99 100
100 #endif // ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_CLIENT_BRIDGE_H_ 101 #endif // ANDROID_WEBVIEW_NATIVE_AW_CONTENTS_CLIENT_BRIDGE_H_
OLDNEW
« no previous file with comments | « android_webview/native/aw_contents_background_thread_client.cc ('k') | android_webview/native/aw_contents_client_bridge.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698