| Index: chrome/browser/content_settings/permission_context_base.h
|
| diff --git a/chrome/browser/content_settings/permission_context_base.h b/chrome/browser/content_settings/permission_context_base.h
|
| index e72912f00d44ea209346564590cf069a6bacef18..ae22dbee096675019eb3483bca61113aba5a6674 100644
|
| --- a/chrome/browser/content_settings/permission_context_base.h
|
| +++ b/chrome/browser/content_settings/permission_context_base.h
|
| @@ -63,6 +63,11 @@ class PermissionContextBase : public KeyedService {
|
| bool user_gesture,
|
| const BrowserPermissionCallback& callback);
|
|
|
| + // Withdraw an existing permission request, no op if the permission request
|
| + // was already cancelled by some other means.
|
| + virtual void CancelPermissionRequest(content::WebContents* web_contents,
|
| + const PermissionRequestID& id);
|
| +
|
| protected:
|
| // Decide whether the permission should be granted.
|
| // Calls PermissionDecided if permission can be decided non-interactively,
|
| @@ -98,6 +103,10 @@ class PermissionContextBase : public KeyedService {
|
| // Return an instance of the infobar queue controller, creating it if needed.
|
| PermissionQueueController* GetQueueController();
|
|
|
| + // KeyedService:
|
| + // Called when the associated profile is destroyed.
|
| + virtual void Shutdown() OVERRIDE;
|
| +
|
| private:
|
| void UpdateContentSetting(
|
| const GURL& requesting_origin,
|
| @@ -113,6 +122,7 @@ class PermissionContextBase : public KeyedService {
|
| scoped_ptr<PermissionQueueController> permission_queue_controller_;
|
| base::ScopedPtrHashMap<std::string, PermissionBubbleRequest>
|
| pending_bubbles_;
|
| + bool shutting_down_;
|
| };
|
|
|
| #endif // CHROME_BROWSER_CONTENT_SETTINGS_PERMISSION_CONTEXT_BASE_H_
|
|
|