Index: content/browser/permissions/permission_service_impl.h |
diff --git a/content/browser/permissions/permission_service_impl.h b/content/browser/permissions/permission_service_impl.h |
index 57f1bfd48b1fa166b0c40c4261c6ec844ab6a4cf..57c3876f045e8a66b239ccda8e8e33b8031f6f19 100644 |
--- a/content/browser/permissions/permission_service_impl.h |
+++ b/content/browser/permissions/permission_service_impl.h |
@@ -42,6 +42,11 @@ class PermissionServiceImpl : public mojo::InterfaceImpl<PermissionService> { |
}; |
typedef IDMap<PendingRequest, IDMapOwnPointer> RequestsMap; |
+ struct PendingSubscription { |
+ int subscription_id; |
+ }; |
+ typedef IDMap<PendingSubscription, IDMapOwnPointer> SubscriptionsMap; |
+ |
// PermissionService. |
void HasPermission( |
PermissionName permission, |
@@ -56,19 +61,32 @@ class PermissionServiceImpl : public mojo::InterfaceImpl<PermissionService> { |
PermissionName permission, |
const mojo::String& origin, |
const mojo::Callback<void(PermissionStatus)>& callback) override; |
+ void GetNextPermissionChange( |
+ PermissionName permission, |
+ const mojo::String& origin, |
+ PermissionStatus last_known_status, |
+ const mojo::Callback<void(PermissionStatus)>& callback) override; |
// mojo::InterfaceImpl. |
void OnConnectionError() override; |
void OnRequestPermissionResponse( |
- const mojo::Callback<void(PermissionStatus)>& callback, |
- int request_id, |
- PermissionStatus status); |
+ const mojo::Callback<void(PermissionStatus)>& callback, |
+ int request_id, |
+ PermissionStatus status); |
+ |
+ PermissionStatus GetPermissionStatus(PermissionName permission, |
+ const GURL& origin); |
+ PermissionStatus GetPermissionStatus(PermissionType type, const GURL& origin); |
+ void ResetPermissionStatus(PermissionType type, const GURL& origin); |
- PermissionStatus GetPermissionStatus(PermissionType type, GURL origin); |
- void ResetPermissionStatus(PermissionType type, GURL origin); |
+ void OnPermissionStatusChanged( |
+ const mojo::Callback<void(PermissionStatus)>& callback, |
+ int pending_subscription_id, |
+ PermissionStatus status); |
RequestsMap pending_requests_; |
+ SubscriptionsMap pending_subscriptions_; |
// context_ owns |this|. |
PermissionServiceContext* context_; |
base::WeakPtrFactory<PermissionServiceImpl> weak_factory_; |