OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/webui/extensions/extension_settings_handler.h" | 5 #include "chrome/browser/ui/webui/extensions/extension_settings_handler.h" |
6 | 6 |
7 #include "base/auto_reset.h" | 7 #include "base/auto_reset.h" |
8 #include "base/base64.h" | 8 #include "base/base64.h" |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
293 source->AddString("extensionSettingsReloadTerminated", | 293 source->AddString("extensionSettingsReloadTerminated", |
294 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_TERMINATED)); | 294 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_TERMINATED)); |
295 source->AddString("extensionSettingsLaunch", | 295 source->AddString("extensionSettingsLaunch", |
296 l10n_util::GetStringUTF16(IDS_EXTENSIONS_LAUNCH)); | 296 l10n_util::GetStringUTF16(IDS_EXTENSIONS_LAUNCH)); |
297 source->AddString("extensionSettingsRestart", | 297 source->AddString("extensionSettingsRestart", |
298 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RESTART)); | 298 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RESTART)); |
299 source->AddString("extensionSettingsReloadUnpacked", | 299 source->AddString("extensionSettingsReloadUnpacked", |
300 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_UNPACKED)); | 300 l10n_util::GetStringUTF16(IDS_EXTENSIONS_RELOAD_UNPACKED)); |
301 source->AddString("extensionSettingsOptions", | 301 source->AddString("extensionSettingsOptions", |
302 l10n_util::GetStringUTF16(IDS_EXTENSIONS_OPTIONS_LINK)); | 302 l10n_util::GetStringUTF16(IDS_EXTENSIONS_OPTIONS_LINK)); |
303 source->AddString("extensionSettingsPermissions", | |
304 l10n_util::GetStringUTF16(IDS_EXTENSIONS_PERMISSIONS_LINK)); | |
303 source->AddString("extensionSettingsActivity", | 305 source->AddString("extensionSettingsActivity", |
304 l10n_util::GetStringUTF16(IDS_EXTENSIONS_ACTIVITY_LINK)); | 306 l10n_util::GetStringUTF16(IDS_EXTENSIONS_ACTIVITY_LINK)); |
305 source->AddString("extensionSettingsVisitWebsite", | 307 source->AddString("extensionSettingsVisitWebsite", |
306 l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSITE)); | 308 l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSITE)); |
307 source->AddString("extensionSettingsVisitWebStore", | 309 source->AddString("extensionSettingsVisitWebStore", |
308 l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSTORE)); | 310 l10n_util::GetStringUTF16(IDS_EXTENSIONS_VISIT_WEBSTORE)); |
309 source->AddString("extensionSettingsPolicyControlled", | 311 source->AddString("extensionSettingsPolicyControlled", |
310 l10n_util::GetStringUTF16(IDS_EXTENSIONS_POLICY_CONTROLLED)); | 312 l10n_util::GetStringUTF16(IDS_EXTENSIONS_POLICY_CONTROLLED)); |
311 source->AddString("extensionSettingsManagedMode", | 313 source->AddString("extensionSettingsManagedMode", |
312 l10n_util::GetStringUTF16(IDS_EXTENSIONS_LOCKED_MANAGED_MODE)); | 314 l10n_util::GetStringUTF16(IDS_EXTENSIONS_LOCKED_MANAGED_MODE)); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
387 base::Unretained(this))); | 389 base::Unretained(this))); |
388 web_ui()->RegisterMessageCallback("extensionSettingsAllowFileAccess", | 390 web_ui()->RegisterMessageCallback("extensionSettingsAllowFileAccess", |
389 base::Bind(&ExtensionSettingsHandler::HandleAllowFileAccessMessage, | 391 base::Bind(&ExtensionSettingsHandler::HandleAllowFileAccessMessage, |
390 base::Unretained(this))); | 392 base::Unretained(this))); |
391 web_ui()->RegisterMessageCallback("extensionSettingsUninstall", | 393 web_ui()->RegisterMessageCallback("extensionSettingsUninstall", |
392 base::Bind(&ExtensionSettingsHandler::HandleUninstallMessage, | 394 base::Bind(&ExtensionSettingsHandler::HandleUninstallMessage, |
393 base::Unretained(this))); | 395 base::Unretained(this))); |
394 web_ui()->RegisterMessageCallback("extensionSettingsOptions", | 396 web_ui()->RegisterMessageCallback("extensionSettingsOptions", |
395 base::Bind(&ExtensionSettingsHandler::HandleOptionsMessage, | 397 base::Bind(&ExtensionSettingsHandler::HandleOptionsMessage, |
396 base::Unretained(this))); | 398 base::Unretained(this))); |
399 web_ui()->RegisterMessageCallback("extensionSettingsPermissions", | |
400 base::Bind(&ExtensionSettingsHandler::HandlePermissionsMessage, | |
401 base::Unretained(this))); | |
397 web_ui()->RegisterMessageCallback("extensionSettingsShowButton", | 402 web_ui()->RegisterMessageCallback("extensionSettingsShowButton", |
398 base::Bind(&ExtensionSettingsHandler::HandleShowButtonMessage, | 403 base::Bind(&ExtensionSettingsHandler::HandleShowButtonMessage, |
399 base::Unretained(this))); | 404 base::Unretained(this))); |
400 web_ui()->RegisterMessageCallback("extensionSettingsAutoupdate", | 405 web_ui()->RegisterMessageCallback("extensionSettingsAutoupdate", |
401 base::Bind(&ExtensionSettingsHandler::HandleAutoUpdateMessage, | 406 base::Bind(&ExtensionSettingsHandler::HandleAutoUpdateMessage, |
402 base::Unretained(this))); | 407 base::Unretained(this))); |
403 web_ui()->RegisterMessageCallback("extensionSettingsLoadUnpackedExtension", | 408 web_ui()->RegisterMessageCallback("extensionSettingsLoadUnpackedExtension", |
404 base::Bind(&ExtensionSettingsHandler::HandleLoadUnpackedExtensionMessage, | 409 base::Bind(&ExtensionSettingsHandler::HandleLoadUnpackedExtensionMessage, |
405 base::Unretained(this))); | 410 base::Unretained(this))); |
406 } | 411 } |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
494 } | 499 } |
495 | 500 |
496 void ExtensionSettingsHandler::ExtensionUninstallCanceled() { | 501 void ExtensionSettingsHandler::ExtensionUninstallCanceled() { |
497 extension_id_prompting_ = ""; | 502 extension_id_prompting_ = ""; |
498 } | 503 } |
499 | 504 |
500 void ExtensionSettingsHandler::ExtensionWarningsChanged() { | 505 void ExtensionSettingsHandler::ExtensionWarningsChanged() { |
501 MaybeUpdateAfterNotification(); | 506 MaybeUpdateAfterNotification(); |
502 } | 507 } |
503 | 508 |
509 void ExtensionSettingsHandler::InstallUIProceed() { | |
510 CHECK(false); | |
James Hawkins
2013/01/29 18:27:46
Why is this here?
Finnur
2013/01/30 18:27:32
Because this should never happen. Changed it to a
| |
511 } | |
512 | |
513 void ExtensionSettingsHandler::InstallUIAbort(bool user_initiated) { | |
514 } | |
515 | |
504 void ExtensionSettingsHandler::ReloadUnpackedExtensions() { | 516 void ExtensionSettingsHandler::ReloadUnpackedExtensions() { |
505 const ExtensionSet* extensions = extension_service_->extensions(); | 517 const ExtensionSet* extensions = extension_service_->extensions(); |
506 std::vector<const Extension*> unpacked_extensions; | 518 std::vector<const Extension*> unpacked_extensions; |
507 for (ExtensionSet::const_iterator extension = extensions->begin(); | 519 for (ExtensionSet::const_iterator extension = extensions->begin(); |
508 extension != extensions->end(); ++extension) { | 520 extension != extensions->end(); ++extension) { |
509 if ((*extension)->location() == Extension::LOAD) | 521 if ((*extension)->location() == Extension::LOAD) |
510 unpacked_extensions.push_back(*extension); | 522 unpacked_extensions.push_back(*extension); |
511 } | 523 } |
512 | 524 |
513 for (std::vector<const Extension*>::iterator iter = | 525 for (std::vector<const Extension*>::iterator iter = |
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
787 void ExtensionSettingsHandler::HandleOptionsMessage(const ListValue* args) { | 799 void ExtensionSettingsHandler::HandleOptionsMessage(const ListValue* args) { |
788 const Extension* extension = GetActiveExtension(args); | 800 const Extension* extension = GetActiveExtension(args); |
789 if (!extension || | 801 if (!extension || |
790 extensions::ManifestURL::GetOptionsPage(extension).is_empty()) | 802 extensions::ManifestURL::GetOptionsPage(extension).is_empty()) |
791 return; | 803 return; |
792 extensions::ExtensionSystem::Get(Profile::FromWebUI(web_ui()))-> | 804 extensions::ExtensionSystem::Get(Profile::FromWebUI(web_ui()))-> |
793 process_manager()->OpenOptionsPage(extension, | 805 process_manager()->OpenOptionsPage(extension, |
794 chrome::FindBrowserWithWebContents(web_ui()->GetWebContents())); | 806 chrome::FindBrowserWithWebContents(web_ui()->GetWebContents())); |
795 } | 807 } |
796 | 808 |
809 void ExtensionSettingsHandler::HandlePermissionsMessage(const ListValue* args) { | |
810 std::string extension_id = UTF16ToUTF8(ExtractStringValue(args)); | |
811 CHECK(!extension_id.empty()); | |
James Hawkins
2013/01/29 18:27:46
s/CHECK/DCHECK/
Finnur
2013/01/30 18:27:32
No, this is consistent with how we handle untruste
| |
812 const Extension* extension = | |
813 extension_service_->GetExtensionById(extension_id, true); | |
814 if (!extension) | |
815 return; | |
816 | |
817 prompt_.reset(new ExtensionInstallPrompt(web_contents())); | |
818 prompt_->ReviewPermissions(this, extension); | |
819 } | |
820 | |
797 void ExtensionSettingsHandler::HandleShowButtonMessage(const ListValue* args) { | 821 void ExtensionSettingsHandler::HandleShowButtonMessage(const ListValue* args) { |
798 const Extension* extension = GetActiveExtension(args); | 822 const Extension* extension = GetActiveExtension(args); |
799 if (!extension) | 823 if (!extension) |
800 return; | 824 return; |
801 extension_service_->extension_prefs()-> | 825 extension_service_->extension_prefs()-> |
802 SetBrowserActionVisibility(extension, true); | 826 SetBrowserActionVisibility(extension, true); |
803 } | 827 } |
804 | 828 |
805 void ExtensionSettingsHandler::HandleAutoUpdateMessage(const ListValue* args) { | 829 void ExtensionSettingsHandler::HandleAutoUpdateMessage(const ListValue* args) { |
806 ExtensionUpdater* updater = extension_service_->updater(); | 830 ExtensionUpdater* updater = extension_service_->updater(); |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1007 std::vector<std::string> requirement_errors) { | 1031 std::vector<std::string> requirement_errors) { |
1008 if (requirement_errors.empty()) { | 1032 if (requirement_errors.empty()) { |
1009 extension_service_->EnableExtension(extension_id); | 1033 extension_service_->EnableExtension(extension_id); |
1010 } else { | 1034 } else { |
1011 ExtensionErrorReporter::GetInstance()->ReportError( | 1035 ExtensionErrorReporter::GetInstance()->ReportError( |
1012 UTF8ToUTF16(JoinString(requirement_errors, ' ')), | 1036 UTF8ToUTF16(JoinString(requirement_errors, ' ')), |
1013 true /* be noisy */); | 1037 true /* be noisy */); |
1014 } | 1038 } |
1015 requirements_checker_.reset(); | 1039 requirements_checker_.reset(); |
1016 } | 1040 } |
OLD | NEW |