Chromium Code Reviews| Index: chrome/browser/extensions/extension_uninstall_dialog.cc |
| diff --git a/chrome/browser/extensions/extension_uninstall_dialog.cc b/chrome/browser/extensions/extension_uninstall_dialog.cc |
| index 8c89ded52dc4d0e1b0f8d1b6951819b7c7306019..625d18382e5463ac5006e577054b21c7d01c0a6c 100644 |
| --- a/chrome/browser/extensions/extension_uninstall_dialog.cc |
| +++ b/chrome/browser/extensions/extension_uninstall_dialog.cc |
| @@ -25,6 +25,7 @@ |
| #if defined(ENABLE_MANAGED_USERS) |
| #include "chrome/browser/managed_mode/managed_user_service.h" |
| #include "chrome/browser/managed_mode/managed_user_service_factory.h" |
| +#include "chrome/browser/ui/tabs/tab_strip_model.h" |
|
Bernhard Bauer
2013/03/27 15:48:14
Include this unconditionally.
Adrian Kuegel
2013/03/27 16:17:43
Done.
|
| #endif |
| namespace { |
| @@ -150,13 +151,17 @@ void ExtensionUninstallDialog::Observe( |
| bool ExtensionUninstallDialog::ShowAuthorizationDialog() { |
| ManagedUserService* service = |
| ManagedUserServiceFactory::GetForProfile(profile_); |
| - if (service->ProfileIsManaged() && !service->CanSkipPassphraseDialog()) { |
| - service->RequestAuthorizationUsingActiveWebContents( |
| - browser_, |
| + content::WebContents* web_contents = |
| + browser_->tab_strip_model()->GetActiveWebContents(); |
| + if (service->ProfileIsManaged() && |
| + !service->CanSkipPassphraseDialog(web_contents)) { |
| + service->RequestAuthorization( |
| + web_contents, |
| base::Bind(&ExtensionUninstallDialog::OnAuthorizationResult, |
| base::Unretained(this))); |
| return true; |
| } |
| + service->AddElevationForExtension(extension_->id()); |
| return false; |
| } |