OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ | 5 #ifndef CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ |
6 #define CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ | 6 #define CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ |
7 | 7 |
8 // The flow for geolocation permissions on Android needs to take into account | 8 // The flow for geolocation permissions on Android needs to take into account |
9 // the global geolocation settings so it differs from the desktop one. It | 9 // the global geolocation settings so it differs from the desktop one. It |
10 // works as follows. | 10 // works as follows. |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 GURL embedder_origin; | 52 GURL embedder_origin; |
53 bool user_gesture; | 53 bool user_gesture; |
54 }; | 54 }; |
55 | 55 |
56 // PermissionContextBase: | 56 // PermissionContextBase: |
57 virtual void RequestPermission( | 57 virtual void RequestPermission( |
58 content::WebContents* web_contents, | 58 content::WebContents* web_contents, |
59 const PermissionRequestID& id, | 59 const PermissionRequestID& id, |
60 const GURL& requesting_frame_origin, | 60 const GURL& requesting_frame_origin, |
61 bool user_gesture, | 61 bool user_gesture, |
62 const BrowserPermissionCallback& callback) OVERRIDE; | 62 const BrowserPermissionCallback& callback) override; |
63 | 63 |
64 void CheckMasterLocation(content::WebContents* web_contents, | 64 void CheckMasterLocation(content::WebContents* web_contents, |
65 const PermissionRequestInfo& info, | 65 const PermissionRequestInfo& info, |
66 const BrowserPermissionCallback& callback); | 66 const BrowserPermissionCallback& callback); |
67 | 67 |
68 void ProceedDecidePermission(content::WebContents* web_contents, | 68 void ProceedDecidePermission(content::WebContents* web_contents, |
69 const PermissionRequestInfo& info, | 69 const PermissionRequestInfo& info, |
70 base::Callback<void(bool)> callback); | 70 base::Callback<void(bool)> callback); |
71 | 71 |
72 // Will perform a final check on the system location settings before | 72 // Will perform a final check on the system location settings before |
73 // granting the permission. | 73 // granting the permission. |
74 void InterceptPermissionCheck(const BrowserPermissionCallback& callback, | 74 void InterceptPermissionCheck(const BrowserPermissionCallback& callback, |
75 bool granted); | 75 bool granted); |
76 | 76 |
77 scoped_ptr<GoogleLocationSettingsHelper> google_location_settings_helper_; | 77 scoped_ptr<GoogleLocationSettingsHelper> google_location_settings_helper_; |
78 base::WeakPtrFactory<GeolocationPermissionContextAndroid> weak_factory_; | 78 base::WeakPtrFactory<GeolocationPermissionContextAndroid> weak_factory_; |
79 | 79 |
80 private: | 80 private: |
81 void CheckSystemLocation(content::WebContents* web_contents, | 81 void CheckSystemLocation(content::WebContents* web_contents, |
82 const PermissionRequestInfo& info, | 82 const PermissionRequestInfo& info, |
83 base::Callback<void(bool)> callback); | 83 base::Callback<void(bool)> callback); |
84 | 84 |
85 DISALLOW_COPY_AND_ASSIGN(GeolocationPermissionContextAndroid); | 85 DISALLOW_COPY_AND_ASSIGN(GeolocationPermissionContextAndroid); |
86 }; | 86 }; |
87 | 87 |
88 #endif // CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ | 88 #endif // CHROME_BROWSER_GEOLOCATION_GEOLOCATION_PERMISSION_CONTEXT_ANDROID_H_ |
OLD | NEW |