Index: chrome/browser/ui/views/uninstall_view.cc |
diff --git a/chrome/browser/ui/views/uninstall_view.cc b/chrome/browser/ui/views/uninstall_view.cc |
index 3c8e6326b465f81c2d64b983180799f135930262..808d245b8790141ae4e95b6a74eca9f36b5ea05e 100644 |
--- a/chrome/browser/ui/views/uninstall_view.cc |
+++ b/chrome/browser/ui/views/uninstall_view.cc |
@@ -69,10 +69,15 @@ void UninstallView::SetupControls() { |
l10n_util::GetStringUTF16(IDS_UNINSTALL_DELETE_PROFILE)); |
layout->AddView(delete_profile_); |
- // Set default browser combo box |
+ // Set default browser combo box. If the default should not or cannot be |
+ // changed, widgets are not shown. We assume here that if Chrome cannot |
+ // be set programatically as default, neither can any other browser (for |
+ // instance because the OS doesn't permit that). |
BrowserDistribution* dist = BrowserDistribution::GetDistribution(); |
if (dist->CanSetAsDefault() && |
- ShellIntegration::IsDefaultBrowser()) { |
+ ShellIntegration::IsDefaultBrowser() && |
+ (ShellIntegration::CanSetAsDefaultBrowser() != |
+ ShellIntegration::SET_DEFAULT_INTERACTIVE)) { |
browsers_.reset(new BrowsersMap()); |
ShellUtil::GetRegisteredBrowsers(dist, browsers_.get()); |
if (!browsers_->empty()) { |