| Index: chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.mm
|
| diff --git a/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.mm b/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.mm
|
| index 4af95eb24a14a591b2dd72ce8b6be060b9bea211..a5a6cdb6ce16b0611e3e7b4ad5c0e0a1d795807c 100644
|
| --- a/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.mm
|
| +++ b/chrome/browser/ui/cocoa/extensions/extension_install_dialog_controller.mm
|
| @@ -11,6 +11,30 @@
|
| #include "chrome/browser/ui/tab_contents/tab_contents.h"
|
| #include "chrome/browser/ui/tabs/tab_strip_model.h"
|
|
|
| +namespace {
|
| +
|
| +void ShowExtensionInstallDialogImpl(
|
| + gfx::NativeWindow parent,
|
| + content::PageNavigator* navigator,
|
| + ExtensionInstallPrompt::Delegate* delegate,
|
| + const ExtensionInstallPrompt::Prompt& prompt) {
|
| + // TODO(sail) Update ShowExtensionInstallDialogImpl to take a web contents.
|
| + Browser* browser = browser::FindBrowserWithWindow(parent);
|
| + if (!browser)
|
| + return;
|
| + TabContents* tab = browser->tab_strip_model()->GetActiveTabContents();
|
| + if (!tab)
|
| + return;
|
| +
|
| + // This object will delete itself when the dialog closes.
|
| + new ExtensionInstallDialogController(tab->web_contents(),
|
| + navigator,
|
| + delegate,
|
| + prompt);
|
| +}
|
| +
|
| +} // namespace
|
| +
|
| ExtensionInstallDialogController::ExtensionInstallDialogController(
|
| content::WebContents* webContents,
|
| content::PageNavigator* navigator,
|
| @@ -40,22 +64,8 @@ void ExtensionInstallDialogController::InstallUIAbort(bool user_initiated) {
|
| delete this;
|
| }
|
|
|
| -void ShowExtensionInstallDialogImpl(
|
| - gfx::NativeWindow parent,
|
| - content::PageNavigator* navigator,
|
| - ExtensionInstallPrompt::Delegate* delegate,
|
| - const ExtensionInstallPrompt::Prompt& prompt) {
|
| - // TODO(sail) Update ShowExtensionInstallDialogImpl to take a web contents.
|
| - Browser* browser = browser::FindBrowserWithWindow(parent);
|
| - if (!browser)
|
| - return;
|
| - TabContents* tab = browser->tab_strip_model()->GetActiveTabContents();
|
| - if (!tab)
|
| - return;
|
| -
|
| - // This object will delete itself when the dialog closes.
|
| - new ExtensionInstallDialogController(tab->web_contents(),
|
| - navigator,
|
| - delegate,
|
| - prompt);
|
| +// static
|
| +ExtensionInstallPrompt::ShowDialogCallback
|
| +ExtensionInstallPrompt::GetDefaultShowDialogCallback() {
|
| + return base::Bind(&ShowExtensionInstallDialogImpl);
|
| }
|
|
|