Chromium Code Reviews| Index: content/public/browser/content_browser_client.h |
| diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h |
| index ac87e075ccc86f8dd5c521955eaeed1071a13852..0af8ead0f7aaa79d05ae2ff672007cc287baf82e 100644 |
| --- a/content/public/browser/content_browser_client.h |
| +++ b/content/public/browser/content_browser_client.h |
| @@ -108,6 +108,22 @@ struct Referrer; |
| struct ShowDesktopNotificationHostMsgParams; |
| struct WebPreferences; |
| + |
| +// Enum for UMA purposes, make sure you update histograms.xml if you add new |
|
Bernhard Bauer
2014/10/20 14:57:24
This enum is now for more than just UMA.
Miguel Garcia
2014/10/21 17:17:12
Acknowledged.
|
| +// permission actions. Never delete or reorder an entry; only add new entries |
| +// immediately before PERMISSION_NUM |
| +enum PermissionType { |
|
jam
2014/10/20 20:13:57
this should go into a separate file in content/pub
Miguel Garcia
2014/10/21 17:17:12
Done.
|
| + PERMISSION_UNKNOWN = 0, |
|
jam
2014/10/20 20:13:57
why is unknown needed?
Miguel Garcia
2014/10/21 17:17:12
It is not really needed but UMA expects it so I'd
Bernhard Bauer
2014/10/23 08:38:01
Why does UMA expect it? The only reference I can f
Miguel Garcia
2014/10/23 12:48:11
Bernhard explained that the one exception to the r
|
| + PERMISSION_MIDI_SYSEX = 1, |
| + PERMISSION_PUSH_MESSAGING = 2, |
| + PERMISSION_NOTIFICATIONS = 3, |
| + PERMISSION_GEOLOCATION = 4, |
| + PERMISSION_PROTECTED_MEDIA = 5, |
| + |
| + // Always keep this at the end. |
| + PERMISSION_NUM, |
| +}; |
| + |
| // A mapping from the scheme name to the protocol handler that services its |
| // content. |
| typedef std::map< |
| @@ -417,13 +433,6 @@ class CONTENT_EXPORT ContentBrowserClient { |
| // return NULL if they're not interested. |
| virtual MediaObserver* GetMediaObserver(); |
| - // Asks permission to show desktop notifications. |callback| needs to be run |
| - // when the user approves the request. |
| - virtual void RequestDesktopNotificationPermission( |
| - const GURL& source_origin, |
| - RenderFrameHost* render_frame_host, |
| - const base::Callback<void(blink::WebNotificationPermission)>& callback) {} |
| - |
| // Checks if the given page has permission to show desktop notifications. |
| // This is called on the IO thread. |
| virtual blink::WebNotificationPermission |
| @@ -440,47 +449,26 @@ class CONTENT_EXPORT ContentBrowserClient { |
| scoped_ptr<DesktopNotificationDelegate> delegate, |
| base::Closure* cancel_callback) {} |
| - // The renderer is requesting permission to use Geolocation. When the answer |
| - // to a permission request has been determined, |result_callback| should be |
| - // called with the result. If |cancel_callback| is non-null, it's set to a |
| - // callback which can be used to cancel the permission request. |
| - virtual void RequestGeolocationPermission( |
| + virtual void RequestPermission( |
| + PermissionType permission, |
| WebContents* web_contents, |
| int bridge_id, |
| const GURL& requesting_frame, |
| bool user_gesture, |
| - const base::Callback<void(bool)>& result_callback); |
| + const base::Callback<void(bool)>& result_callback) {} |
| - virtual void CancelGeolocationPermissionRequest( |
| - WebContents* web_contents, |
| - int bridge_id, |
| - const GURL& requesting_frame); |
| - |
| - // Invoked when the Geolocation API uses its permission. |
| - virtual void DidUseGeolocationPermission(WebContents* web_contents, |
| - const GURL& frame_url, |
| - const GURL& main_frame_url) {} |
| - |
| - // Requests a permission to use system exclusive messages in MIDI events. |
| - // |result_callback| will be invoked when the request is resolved. If |
| - // |cancel_callback| is non-null, it's set to a callback which can be used to |
| - // cancel the permission request. |
| - virtual void RequestMidiSysExPermission( |
| + |
| + virtual void CancelPermissionRequest( |
| + PermissionType permission, |
| WebContents* web_contents, |
| int bridge_id, |
| - const GURL& requesting_frame, |
| - bool user_gesture, |
| - base::Callback<void(bool)> result_callback, |
| - base::Closure* cancel_callback); |
| + const GURL& requesting_frame) {} |
| + |
| + virtual void RegisterPermissionUsage(PermissionType permission, |
| + WebContents* web_contents, |
| + const GURL& frame_url, |
| + const GURL& main_frame_url) {} |
| - // Request permission to access protected media identifier. |result_callback |
| - // will tell whether it's permitted. If |cancel_callback| is non-null, it's |
| - // set to a callback which can be used to cancel the permission request. |
| - virtual void RequestProtectedMediaIdentifierPermission( |
| - WebContents* web_contents, |
| - const GURL& origin, |
| - base::Callback<void(bool)> result_callback, |
| - base::Closure* cancel_callback); |
| // Returns true if the given page is allowed to open a window of the given |
| // type. If true is returned, |no_javascript_access| will indicate whether |