diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-01 17:58:35 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-01 17:58:35 +0000 |
commit | 2a464a9638588073f344df55d46da6f9910d892b (patch) | |
tree | 1176e0193d9f5933623331371587155f8b178490 /chrome/browser/extensions/extension_install_ui.h | |
parent | 963f23274defde0c604f7643616a10f0215e1fe0 (diff) | |
download | chromium_src-2a464a9638588073f344df55d46da6f9910d892b.zip chromium_src-2a464a9638588073f344df55d46da6f9910d892b.tar.gz chromium_src-2a464a9638588073f344df55d46da6f9910d892b.tar.bz2 |
Try again to land: http://codereview.chromium.org/160483
Ever closer. Extract a client interface out of CrxInstaller
and use it to implement ExtensionInstallUI.
There is (still) no dialog here. But the next CL will, um,
definitely have it.
Also, fixed the issue with theme preview infobars not updating if you install a theme while another one is
already previewed.
TBR=mpcomplete@chromium.org
BUG=17932
Review URL: http://codereview.chromium.org/160501
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22244 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_install_ui.h')
-rw-r--r-- | chrome/browser/extensions/extension_install_ui.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/chrome/browser/extensions/extension_install_ui.h b/chrome/browser/extensions/extension_install_ui.h new file mode 100644 index 0000000..1fc0379 --- /dev/null +++ b/chrome/browser/extensions/extension_install_ui.h @@ -0,0 +1,39 @@ +// Copyright (c) 2009 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_H_ +#define CHROME_BROWSER_EXTENSIONS_EXTENSION_INSTALL_UI_H_ + +#include "base/file_path.h" +#include "base/gfx/native_widget_types.h" +#include "base/ref_counted.h" +#include "chrome/browser/extensions/crx_installer.h" + +class ExtensionsService; +class MessageLoop; +class Profile; +class SandboxedExtensionUnpacker; + +// Displays all the UI around extension installation. +// +// TODO(aa): This will become a view and move to browser/views/extensions in the +// future. +class ExtensionInstallUI : public CrxInstallerClient { + public: + ExtensionInstallUI(Profile* profile); + + private: + // CrxInstallerClient + virtual bool ConfirmInstall(Extension* extension); + virtual void OnInstallSuccess(Extension* extension); + virtual void OnInstallFailure(const std::string& error); + virtual void OnOverinstallAttempted(Extension* extension); + + void ShowThemeInfoBar(Extension* extension); + + Profile* profile_; + MessageLoop* ui_loop_; +}; + +#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_INSTALL_UI_H_ |