Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(86)

Side by Side Diff: public/platform/modules/permissions/WebPermissionClient.h

Issue 1234023002: blink: permissions: add plumbing to revoke permissions (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Add Runtime flag for permissions Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 WebPermissionClient_h 5 #ifndef WebPermissionClient_h
6 #define WebPermissionClient_h 6 #define WebPermissionClient_h
7 7
8 #include "public/platform/WebCallbacks.h" 8 #include "public/platform/WebCallbacks.h"
9 #include "public/platform/modules/permissions/WebPermissionStatus.h" 9 #include "public/platform/modules/permissions/WebPermissionStatus.h"
10 #include "public/platform/modules/permissions/WebPermissionType.h" 10 #include "public/platform/modules/permissions/WebPermissionType.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 using WebPermissionQueryCallback = WebCallbacks<WebPermissionStatus, void>; 14 using WebPermissionCallback = WebCallbacks<WebPermissionStatus, void>;
mlamouri (slow - plz ping) 2015/07/17 13:18:03 I think this change will break Chromium. You might
Lalit Maganti 2015/07/17 13:47:35 Done.
15 15
16 class WebPermissionObserver; 16 class WebPermissionObserver;
17 class WebURL; 17 class WebURL;
18 18
19 // This client is expected to do general permission handling. From simple 19 // This client is expected to do general permission handling. From simple
20 // permission query to requesting new permissions. 20 // permission query to requesting new permissions.
21 class WebPermissionClient { 21 class WebPermissionClient {
22 public: 22 public:
23 // Query the permission status of a given origin for a specific permission. 23 // Query the permission status of a given origin for a specific permission.
24 virtual void queryPermission(WebPermissionType, const WebURL&, WebPermission QueryCallback*) { } 24 virtual void queryPermission(WebPermissionType, const WebURL&, WebPermission Callback*) { }
25
26 // Revoke a specific permission for a given origin.
27 virtual void revokePermission(WebPermissionType, const WebURL&, WebPermissio nCallback*) { }
25 28
26 // Listen for permission changes for a given origin and inform the observer 29 // Listen for permission changes for a given origin and inform the observer
27 // when they happen. The observer is not owned by the WebPermissionClient. 30 // when they happen. The observer is not owned by the WebPermissionClient.
28 // The client should expect stopListening() to be called when the observer 31 // The client should expect stopListening() to be called when the observer
29 // will be destroyed. 32 // will be destroyed.
30 virtual void startListening(WebPermissionType, const WebURL&, WebPermissionO bserver*) { } 33 virtual void startListening(WebPermissionType, const WebURL&, WebPermissionO bserver*) { }
31 34
32 // Stop listening to all the permission changes associated with the given 35 // Stop listening to all the permission changes associated with the given
33 // observer. 36 // observer.
34 virtual void stopListening(WebPermissionObserver*) { } 37 virtual void stopListening(WebPermissionObserver*) { }
35 38
36 protected: 39 protected:
37 virtual ~WebPermissionClient() { } 40 virtual ~WebPermissionClient() { }
38 }; 41 };
39 42
40 } // namespace blink 43 } // namespace blink
41 44
42 #endif // WebPermissionClient_h 45 #endif // WebPermissionClient_h
OLDNEW
« Source/modules/permissions/Permissions.cpp ('K') | « Source/platform/RuntimeEnabledFeatures.in ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698