Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(548)

Unified Diff: chrome/browser/extensions/extension_install_prompt.cc

Issue 1004123003: Extensions: Switch to new permission message system, part III (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@permissions_tests
Patch Set: Mac Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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);
}
}

Powered by Google App Engine
This is Rietveld 408576698