Home | History | Annotate | Download | only in native
      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.
      4 
      5 #ifndef ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_
      6 #define ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_
      7 
      8 #include <jni.h>
      9 
     10 #include "components/web_contents_delegate_android/web_contents_delegate_android.h"
     11 
     12 namespace android_webview {
     13 
     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;
     34   virtual void RunFileChooser(
     35       content::WebContents* web_contents,
     36       const content::FileChooserParams& params) OVERRIDE;
     37   virtual void AddNewContents(content::WebContents* source,
     38                               content::WebContents* new_contents,
     39                               WindowOpenDisposition disposition,
     40                               const gfx::Rect& initial_pos,
     41                               bool user_gesture,
     42                               bool* was_blocked) OVERRIDE;
     43   virtual void CloseContents(content::WebContents* source) OVERRIDE;
     44   virtual void ActivateContents(content::WebContents* contents) OVERRIDE;
     45 };
     46 
     47 bool RegisterAwWebContentsDelegate(JNIEnv* env);
     48 
     49 }  // namespace android_webview
     50 
     51 #endif  // ANDROID_WEBVIEW_NATIVE_AW_WEB_CONTENTS_DELEGATE_H_
     52