1 // ::Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_EXTENSIONS_SETTINGS_API_BUBBLE_CONTROLLER_H_
6 #define CHROME_BROWSER_EXTENSIONS_SETTINGS_API_BUBBLE_CONTROLLER_H_
9 #include "chrome/browser/extensions/extension_message_bubble_controller.h"
10 #include "chrome/common/extensions/manifest_handlers/settings_overrides_handler.h"
12 class ExtensionService
;
14 namespace extensions
{
16 class SettingsApiBubble
;
18 class SettingsApiBubbleController
: public ExtensionMessageBubbleController
{
20 SettingsApiBubbleController(Profile
* profile
, SettingsApiOverrideType type
);
21 virtual ~SettingsApiBubbleController();
23 // Whether the controller knows that we should show the bubble for extension
24 // with |extension_id|. Returns true if so.
25 bool ShouldShow(const std::string
& extension_id
);
27 // ExtensionMessageBubbleController:
28 virtual bool CloseOnDeactivate() OVERRIDE
;
31 // A weak pointer to the profile we are associated with. Not owned by us.
34 // The type of settings override this bubble will report on.
35 SettingsApiOverrideType type_
;
37 DISALLOW_COPY_AND_ASSIGN(SettingsApiBubbleController
);
40 } // namespace extensions
42 #endif // CHROME_BROWSER_EXTENSIONS_SETTINGS_API_BUBBLE_CONTROLLER_H_