Index: content/public/browser/permission_manager.h |
diff --git a/content/public/browser/permission_manager.h b/content/public/browser/permission_manager.h |
index e7300751d00b1479d3a9a0c8a7622cbb0fc229f7..6a56e0b6a58b7be2cf05246d4e8371e7d766711b 100644 |
--- a/content/public/browser/permission_manager.h |
+++ b/content/public/browser/permission_manager.h |
@@ -43,6 +43,17 @@ class CONTENT_EXPORT PermissionManager { |
virtual void RegisterPermissionUsage(PermissionType permission, |
const GURL& requesting_origin, |
const GURL& embedding_origin) = 0; |
+ |
+ // Runs the given |callback| whenever the |permission| associated with the |
+ // pair { requesting_origin, embedding_origin } changes. |
+ // Returns the subscription_id to be used to unsubscribe. |
+ virtual int SubscribePermissionStatusChange( |
+ PermissionType permission, |
+ const GURL& requesting_origin, |
+ const GURL& embedding_origin, |
+ const base::Callback<void(PermissionStatus)>& callback) = 0; |
+ |
+ virtual void UnsubscribePermissionStatusChange(int subscription_id) = 0; |
}; |
} // namespace content |