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_GEOLOCATION_PERMISSION_CONTEXT_H_
      6 #define ANDROID_WEBVIEW_NATIVE_AW_GEOLOCATION_PERMISSION_CONTEXT_H_
      7 
      8 #include "content/public/browser/geolocation_permission_context.h"
      9 
     10 class GURL;
     11 
     12 namespace android_webview {
     13 
     14 class AwBrowserContext;
     15 
     16 class AwGeolocationPermissionContext :
     17     public content::GeolocationPermissionContext {
     18  public:
     19   static content::GeolocationPermissionContext* Create(
     20       AwBrowserContext* browser_context);
     21 
     22   // content::GeolocationPermissionContext implementation
     23   virtual void RequestGeolocationPermission(
     24       int render_process_id,
     25       int render_view_id,
     26       int bridge_id,
     27       const GURL& requesting_frame,
     28       base::Callback<void(bool)> callback) OVERRIDE;
     29   virtual void CancelGeolocationPermissionRequest(
     30       int render_process_id,
     31       int render_view_id,
     32       int bridge_id,
     33       const GURL& requesting_frame) OVERRIDE;
     34 
     35  protected:
     36   virtual ~AwGeolocationPermissionContext();
     37 
     38  private:
     39   void RequestGeolocationPermissionOnUIThread(
     40       int render_process_id,
     41       int render_view_id,
     42       int bridge_id,
     43       const GURL& requesting_frame,
     44       base::Callback<void(bool)> callback);
     45 
     46   void CancelGeolocationPermissionRequestOnUIThread(
     47       int render_process_id,
     48       int render_view_id,
     49       int bridge_id,
     50       const GURL& requesting_frame);
     51 };
     52 
     53 }  // namespace android_webview
     54 
     55 #endif  // ANDROID_WEBVIEW_NATIVE_AW_GEOLOCATION_PERMISSION_CONTEXT_H_
     56