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

Unified Diff: chrome/browser/plugins/plugin_infobar_delegates.cc

Issue 1025303007: Remove PluginInstallerInfoBarDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 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
« no previous file with comments | « chrome/browser/plugins/plugin_infobar_delegates.h ('k') | chrome/browser/plugins/plugin_observer.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/plugins/plugin_infobar_delegates.cc
diff --git a/chrome/browser/plugins/plugin_infobar_delegates.cc b/chrome/browser/plugins/plugin_infobar_delegates.cc
index 15d7b048d498afdd9058a2a520a3551c171775cf..198777e4e53f96eca5a7aa9aa06a3113a7ff1cc1 100644
--- a/chrome/browser/plugins/plugin_infobar_delegates.cc
+++ b/chrome/browser/plugins/plugin_infobar_delegates.cc
@@ -213,151 +213,23 @@ void OutdatedPluginInfoBarDelegate::ReplaceWithInfoBar(
// keep replacing infobar delegates infinitely).
if ((message_ == message) || !infobar()->owner())
return;
- PluginInstallerInfoBarDelegate::Replace(
- infobar(), installer(), plugin_metadata_->Clone(), false, message);
+ Replace(infobar(), installer(), plugin_metadata_->Clone(), message);
}
-
-// PluginInstallerInfoBarDelegate ---------------------------------------------
-
-void PluginInstallerInfoBarDelegate::Create(
- InfoBarService* infobar_service,
- PluginInstaller* installer,
- scoped_ptr<PluginMetadata> plugin_metadata,
- const InstallCallback& callback) {
- base::string16 name(plugin_metadata->name());
-#if defined(OS_WIN)
- if (base::win::IsMetroProcess()) {
- PluginMetroModeInfoBarDelegate::Create(
- infobar_service, PluginMetroModeInfoBarDelegate::MISSING_PLUGIN, name);
- return;
- }
-#endif
- infobar_service->AddInfoBar(infobar_service->CreateConfirmInfoBar(
- scoped_ptr<ConfirmInfoBarDelegate>(new PluginInstallerInfoBarDelegate(
- installer, plugin_metadata.Pass(), callback, true,
- l10n_util::GetStringFUTF16(
- (installer->state() == PluginInstaller::INSTALLER_STATE_IDLE)
- ? IDS_PLUGININSTALLER_INSTALLPLUGIN_PROMPT
- : IDS_PLUGIN_DOWNLOADING,
- name)))));
-}
-
-void PluginInstallerInfoBarDelegate::Replace(
+// static
+void OutdatedPluginInfoBarDelegate::Replace(
infobars::InfoBar* infobar,
PluginInstaller* installer,
scoped_ptr<PluginMetadata> plugin_metadata,
- bool new_install,
const base::string16& message) {
DCHECK(infobar->owner());
infobar->owner()->ReplaceInfoBar(
infobar,
infobar->owner()->CreateConfirmInfoBar(
- scoped_ptr<ConfirmInfoBarDelegate>(new PluginInstallerInfoBarDelegate(
- installer, plugin_metadata.Pass(),
- PluginInstallerInfoBarDelegate::InstallCallback(), new_install,
- message))));
-}
-
-PluginInstallerInfoBarDelegate::PluginInstallerInfoBarDelegate(
- PluginInstaller* installer,
- scoped_ptr<PluginMetadata> plugin_metadata,
- const InstallCallback& callback,
- bool new_install,
- const base::string16& message)
- : ConfirmInfoBarDelegate(),
- WeakPluginInstallerObserver(installer),
- plugin_metadata_(plugin_metadata.Pass()),
- callback_(callback),
- new_install_(new_install),
- message_(message) {
-}
-
-PluginInstallerInfoBarDelegate::~PluginInstallerInfoBarDelegate() {
-}
-
-int PluginInstallerInfoBarDelegate::GetIconID() const {
- return IDR_INFOBAR_PLUGIN_INSTALL;
-}
-
-base::string16 PluginInstallerInfoBarDelegate::GetMessageText() const {
- return message_;
-}
-
-int PluginInstallerInfoBarDelegate::GetButtons() const {
- return callback_.is_null() ? BUTTON_NONE : BUTTON_OK;
-}
-
-base::string16 PluginInstallerInfoBarDelegate::GetButtonLabel(
- InfoBarButton button) const {
- DCHECK_EQ(BUTTON_OK, button);
- return l10n_util::GetStringUTF16(IDS_PLUGININSTALLER_INSTALLPLUGIN_BUTTON);
-}
-
-bool PluginInstallerInfoBarDelegate::Accept() {
- callback_.Run(plugin_metadata_.get());
- return false;
-}
-
-base::string16 PluginInstallerInfoBarDelegate::GetLinkText() const {
- return l10n_util::GetStringUTF16(new_install_ ?
- IDS_PLUGININSTALLER_PROBLEMSINSTALLING :
- IDS_PLUGININSTALLER_PROBLEMSUPDATING);
-}
-
-bool PluginInstallerInfoBarDelegate::LinkClicked(
- WindowOpenDisposition disposition) {
- GURL url(plugin_metadata_->help_url());
- if (url.is_empty()) {
- url = GURL(
- "https://www.google.com/support/chrome/bin/answer.py?answer=142064");
- }
- InfoBarService::WebContentsFromInfoBar(infobar())->OpenURL(
- content::OpenURLParams(
- url, content::Referrer(),
- (disposition == CURRENT_TAB) ? NEW_FOREGROUND_TAB : disposition,
- ui::PAGE_TRANSITION_LINK, false));
- return false;
-}
-
-void PluginInstallerInfoBarDelegate::DownloadStarted() {
- ReplaceWithInfoBar(l10n_util::GetStringFUTF16(IDS_PLUGIN_DOWNLOADING,
- plugin_metadata_->name()));
+ scoped_ptr<ConfirmInfoBarDelegate>(new OutdatedPluginInfoBarDelegate(
+ installer, plugin_metadata.Pass(), message))));
}
-void PluginInstallerInfoBarDelegate::DownloadCancelled() {
- ReplaceWithInfoBar(l10n_util::GetStringFUTF16(IDS_PLUGIN_DOWNLOAD_CANCELLED,
- plugin_metadata_->name()));
-}
-
-void PluginInstallerInfoBarDelegate::DownloadError(const std::string& message) {
- ReplaceWithInfoBar(l10n_util::GetStringFUTF16(IDS_PLUGIN_DOWNLOAD_ERROR_SHORT,
- plugin_metadata_->name()));
-}
-
-void PluginInstallerInfoBarDelegate::DownloadFinished() {
- ReplaceWithInfoBar(
- l10n_util::GetStringFUTF16(
- new_install_ ? IDS_PLUGIN_INSTALLING : IDS_PLUGIN_UPDATING,
- plugin_metadata_->name()));
-}
-
-void PluginInstallerInfoBarDelegate::OnlyWeakObserversLeft() {
- infobar()->RemoveSelf();
-}
-
-void PluginInstallerInfoBarDelegate::ReplaceWithInfoBar(
- const base::string16& message) {
- // Return early if the message doesn't change. This is important in case the
- // PluginInstaller is still iterating over its observers (otherwise we would
- // keep replacing infobar delegates infinitely).
- if ((message_ == message) || !infobar()->owner())
- return;
- Replace(infobar(), installer(), plugin_metadata_->Clone(), new_install_,
- message);
-}
-
-
#if defined(OS_WIN)
// PluginMetroModeInfoBarDelegate ---------------------------------------------
« no previous file with comments | « chrome/browser/plugins/plugin_infobar_delegates.h ('k') | chrome/browser/plugins/plugin_observer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698