diff options
author | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-26 21:50:23 +0000 |
---|---|---|
committer | aa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-11-26 21:50:23 +0000 |
commit | bb461530cb42d050c91bacc9ec1a6a48100c6be7 (patch) | |
tree | 8b88b90958fdd1d2dcdc666b4414a93ca833c97e /chrome/browser/ui | |
parent | 11740d25bd6ac9c9da9ceb99ba1ba59d3caabeeb (diff) | |
download | chromium_src-bb461530cb42d050c91bacc9ec1a6a48100c6be7.zip chromium_src-bb461530cb42d050c91bacc9ec1a6a48100c6be7.tar.gz chromium_src-bb461530cb42d050c91bacc9ec1a6a48100c6be7.tar.bz2 |
Revert "Revert "Finish wiring up chrome.app.install().""
This reverts commit 89f4de523e9c916950f72c264cdefed662849124.
TBR=aa@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@67474 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/ui')
-rw-r--r-- | chrome/browser/ui/browser.cc | 15 | ||||
-rw-r--r-- | chrome/browser/ui/browser.h | 3 |
2 files changed, 18 insertions, 0 deletions
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc index b113408..24f7c6f 100644 --- a/chrome/browser/ui/browser.cc +++ b/chrome/browser/ui/browser.cc @@ -46,6 +46,7 @@ #include "chrome/browser/download/download_shelf.h" #include "chrome/browser/download/download_started_animation.h" #include "chrome/browser/extensions/crashed_extension_infobar.h" +#include "chrome/browser/extensions/crx_installer.h" #include "chrome/browser/extensions/extension_browser_event_router.h" #include "chrome/browser/extensions/extension_disabled_infobar_delegate.h" #include "chrome/browser/extensions/extension_host.h" @@ -97,6 +98,7 @@ #include "chrome/common/page_transition_types.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" +#include "chrome/common/web_apps.h" #include "grit/chromium_strings.h" #include "grit/generated_resources.h" #include "grit/locale_settings.h" @@ -3143,6 +3145,19 @@ void Browser::OnDidGetApplicationInfo(TabContents* tab_contents, pending_web_app_action_ = NONE; } +void Browser::OnInstallApplication(TabContents* source, + const WebApplicationInfo& web_app) { + ExtensionsService* extensions_service = profile()->GetExtensionsService(); + if (!extensions_service) + return; + + scoped_refptr<CrxInstaller> installer( + new CrxInstaller(extensions_service, + extensions_service->show_extensions_prompts() ? + new ExtensionInstallUI(profile()) : NULL)); + installer->InstallWebApp(web_app); +} + void Browser::ContentRestrictionsChanged(TabContents* source) { UpdateCommandsForContentRestrictionState(); } diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h index 79bde6d..faa316c 100644 --- a/chrome/browser/ui/browser.h +++ b/chrome/browser/ui/browser.h @@ -47,6 +47,7 @@ class SkBitmap; class StatusBubble; class TabNavigation; class TabStripModel; +struct WebApplicationInfo; namespace gfx { class Point; } @@ -776,6 +777,8 @@ class Browser : public TabHandlerDelegate, NavigationType::Type navigation_type); virtual void OnDidGetApplicationInfo(TabContents* tab_contents, int32 page_id); + virtual void OnInstallApplication(TabContents* tab_contents, + const WebApplicationInfo& app_info); virtual void ContentRestrictionsChanged(TabContents* source); // Overridden from SelectFileDialog::Listener: |