Index: chrome/browser/extensions/extension_install_prompt.cc |
diff --git a/chrome/browser/extensions/extension_install_prompt.cc b/chrome/browser/extensions/extension_install_prompt.cc |
index 670d23e377917f74199251caaa445ef9f5b25f30..9d970e8cd7eab2e867fc92bf5c6eebf1cf714d76 100644 |
--- a/chrome/browser/extensions/extension_install_prompt.cc |
+++ b/chrome/browser/extensions/extension_install_prompt.cc |
@@ -37,7 +37,6 @@ |
#include "extensions/common/manifest_constants.h" |
#include "extensions/common/manifest_handlers/icons_handler.h" |
#include "extensions/common/manifest_handlers/permissions_parser.h" |
-#include "extensions/common/permissions/permission_message_provider.h" |
#include "extensions/common/permissions/permission_set.h" |
#include "extensions/common/permissions/permissions_data.h" |
#include "extensions/common/url_pattern.h" |
@@ -50,6 +49,8 @@ |
using extensions::BundleInstaller; |
using extensions::Extension; |
using extensions::Manifest; |
+using extensions::PermissionMessageString; |
+using extensions::PermissionMessageStrings; |
using extensions::PermissionSet; |
namespace { |
@@ -249,38 +250,31 @@ ExtensionInstallPrompt::Prompt::~Prompt() { |
} |
void ExtensionInstallPrompt::Prompt::SetPermissions( |
- const std::vector<base::string16>& permissions, |
- PermissionsType permissions_type) { |
- GetPermissionsForType(permissions_type).permissions = permissions; |
-} |
- |
-void ExtensionInstallPrompt::Prompt::SetPermissionsDetails( |
- const std::vector<base::string16>& details, |
+ const PermissionMessageStrings& permissions, |
PermissionsType permissions_type) { |
InstallPromptPermissions& install_permissions = |
GetPermissionsForType(permissions_type); |
- // Add a dash to the front of each permission detail. |
- for (const auto& details_entry : details) { |
- if (!details_entry.empty()) { |
- std::vector<base::string16> detail_lines; |
- base::SplitString(details_entry, base::char16('\n'), &detail_lines); |
+ install_permissions.permissions.clear(); |
+ install_permissions.details.clear(); |
+ install_permissions.is_showing_details.clear(); |
+ for (const PermissionMessageString& str : permissions) { |
+ install_permissions.permissions.push_back(str.message); |
+ // Add a dash to the front of each permission detail. |
+ base::string16 details; |
+ if (!str.submessages.empty()) { |
std::vector<base::string16> detail_lines_with_bullets; |
- for (const auto& detail_line : detail_lines) |
+ for (const auto& detail_line : str.submessages) { |
detail_lines_with_bullets.push_back(base::ASCIIToUTF16("- ") + |
detail_line); |
+ } |
- install_permissions.details.push_back( |
- JoinString(detail_lines_with_bullets, '\n')); |
- } else { |
- install_permissions.details.push_back(details_entry); |
+ details = JoinString(detail_lines_with_bullets, '\n'); |
} |
+ install_permissions.details.push_back(details); |
+ install_permissions.is_showing_details.push_back(false); |
} |
- |
- install_permissions.is_showing_details.clear(); |
- install_permissions.is_showing_details.insert( |
- install_permissions.is_showing_details.begin(), details.size(), false); |
} |
void ExtensionInstallPrompt::Prompt::SetIsShowingDetails( |
@@ -928,23 +922,16 @@ void ExtensionInstallPrompt::ShowConfirmation() { |
extension_ ? extension_->GetType() : Manifest::TYPE_UNKNOWN; |
const extensions::PermissionMessageProvider* message_provider = |
extensions::PermissionMessageProvider::Get(); |
- prompt_->SetPermissions(message_provider->GetLegacyWarningMessages( |
+ |
+ prompt_->SetPermissions(message_provider->GetPermissionMessageStrings( |
permissions_to_display.get(), type), |
REGULAR_PERMISSIONS); |
- prompt_->SetPermissionsDetails( |
- message_provider->GetLegacyWarningMessagesDetails( |
- permissions_to_display.get(), type), |
- REGULAR_PERMISSIONS); |
scoped_refptr<const extensions::PermissionSet> withheld = |
extension_->permissions_data()->withheld_permissions(); |
if (!withheld->IsEmpty()) { |
prompt_->SetPermissions( |
- message_provider->GetLegacyWarningMessages(withheld.get(), type), |
- PermissionsType::WITHHELD_PERMISSIONS); |
- prompt_->SetPermissionsDetails( |
- message_provider->GetLegacyWarningMessagesDetails(withheld.get(), |
- type), |
+ message_provider->GetPermissionMessageStrings(withheld.get(), type), |
PermissionsType::WITHHELD_PERMISSIONS); |
} |
} |