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

Unified Diff: chrome/browser/extensions/extension_install_ui_default.h

Issue 10388252: Refactoring ExtenionInstallUI to abstract the Browser references. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Synced + mac fix Created 8 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_install_ui_default.h
diff --git a/chrome/browser/extensions/extension_install_ui_default.h b/chrome/browser/extensions/extension_install_ui_default.h
new file mode 100644
index 0000000000000000000000000000000000000000..5e37d067a9c1a699c9cadc99507c60fe8a500977
--- /dev/null
+++ b/chrome/browser/extensions/extension_install_ui_default.h
@@ -0,0 +1,59 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_INSTALL_UI_DEFAULT_H_
+#define CHROME_BROWSER_EXTENSIONS_EXTENSION_INSTALL_UI_DEFAULT_H_
+#pragma once
+
+#include "chrome/browser/extensions/extension_install_ui.h"
+
+class InfoBarDelegate;
+class TabContents;
+typedef TabContents TabContentsWrapper;
+
+class ExtensionInstallUIDefault : public ExtensionInstallUI {
+ public:
+ explicit ExtensionInstallUIDefault(Profile* profile);
+ virtual ~ExtensionInstallUIDefault();
+
+ // ExtensionInstallUI implementation:
+ virtual void OnInstallSuccess(const extensions::Extension* extension,
+ SkBitmap* icon) OVERRIDE;
+ virtual void OnInstallFailure(const string16& error) OVERRIDE;
+ virtual void SetSkipPostInstallUI(bool skip_ui) OVERRIDE;
+ virtual void SetUseAppInstalledBubble(bool use_bubble) OVERRIDE;
+
+ private:
+ // Shows an infobar for a newly-installed theme. previous_theme_id should be
+ // empty if the previous theme was the system/default theme.
+ static void ShowThemeInfoBar(const std::string& previous_theme_id,
+ bool previous_using_native_theme,
+ const extensions::Extension* new_theme,
+ Profile* profile);
+
+ // Returns the delegate to control the browser's info bar. This is
+ // within its own function due to its platform-specific nature.
+ static InfoBarDelegate* GetNewThemeInstalledInfoBarDelegate(
+ TabContentsWrapper* tab_contents,
+ const extensions::Extension* new_theme,
+ const std::string& previous_theme_id,
+ bool previous_using_native_theme);
+
+ Profile* profile_;
+
+ // Whether or not to show the default UI after completing the installation.
+ bool skip_post_install_ui_;
+
+ // Used to undo theme installation.
+ std::string previous_theme_id_;
+ bool previous_using_native_theme_;
+
+ // Whether to show an installed bubble on app install, or use the default
+ // action of opening a new tab page.
+ bool use_app_installed_bubble_;
+
+ DISALLOW_IMPLICIT_CONSTRUCTORS(ExtensionInstallUIDefault);
+};
+
+#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_INSTALL_UI_DEFAULT_H_
« no previous file with comments | « chrome/browser/extensions/extension_install_ui_android.cc ('k') | chrome/browser/extensions/extension_install_ui_default.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698