Save errno for logging before potentially overwriting it.
[chromium-blink-merge.git] / android_webview / native / aw_web_contents_delegate.h
blob3d84fbe2b5dc3e9682b2f7e174c97a262604fad8
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
3 // found in the LICENSE file.
5 #ifndef ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_
6 #define ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_
8 #include <jni.h>
10 #include "components/web_contents_delegate_android/web_contents_delegate_android.h"
12 namespace android_webview {
14 // WebView specific WebContentsDelegate.
15 // Should contain WebContentsDelegate code required by WebView that should not
16 // be part of the Chromium Android port.
17 class AwWebContentsDelegate
18 : public web_contents_delegate_android::WebContentsDelegateAndroid {
19 public:
20 AwWebContentsDelegate(JNIEnv* env, jobject obj);
21 virtual ~AwWebContentsDelegate();
22 virtual content::JavaScriptDialogManager* GetJavaScriptDialogManager()
23 OVERRIDE;
24 virtual void FindReply(content::WebContents* web_contents,
25 int request_id,
26 int number_of_matches,
27 const gfx::Rect& selection_rect,
28 int active_match_ordinal,
29 bool final_update) OVERRIDE;
30 virtual void CanDownload(content::RenderViewHost* source,
31 int request_id,
32 const std::string& request_method,
33 const base::Callback<void(bool)>& callback) OVERRIDE;
35 virtual void AddNewContents(content::WebContents* source,
36 content::WebContents* new_contents,
37 WindowOpenDisposition disposition,
38 const gfx::Rect& initial_pos,
39 bool user_gesture,
40 bool* was_blocked) OVERRIDE;
41 virtual void CloseContents(content::WebContents* source) OVERRIDE;
42 virtual void ActivateContents(content::WebContents* contents) OVERRIDE;
43 virtual void UpdatePreferredSize(content::WebContents* web_contents,
44 const gfx::Size& pref_size) OVERRIDE;
47 bool RegisterAwWebContentsDelegate(JNIEnv* env);
49 } // namespace android_webview
51 #endif // ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_