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

Unified Diff: extensions/common/permissions/permission_message_util.cc

Issue 410023002: Show read-only messages for non-interact non-desktop Automation extensions (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Rebase Created 6 years, 1 month 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
« no previous file with comments | « extensions/common/permissions/permission_message_util.h ('k') | extensions/extensions_strings.grd » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: extensions/common/permissions/permission_message_util.cc
diff --git a/extensions/common/permissions/permission_message_util.cc b/extensions/common/permissions/permission_message_util.cc
index e38208b979c895c0378d1dc59bf6a37a00d1d5c6..e4c1d09d742fb184ce011bf083c00e62954bec18 100644
--- a/extensions/common/permissions/permission_message_util.cc
+++ b/extensions/common/permissions/permission_message_util.cc
@@ -4,6 +4,7 @@
#include "extensions/common/permissions/permission_message_util.h"
+#include "base/macros.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_split.h"
#include "base/strings/utf_string_conversions.h"
@@ -39,9 +40,10 @@ bool RcdBetterThan(const std::string& a, const std::string& b) {
namespace permission_message_util {
-PermissionMessage CreateFromHostList(const std::set<std::string>& hosts) {
+PermissionMessage CreateFromHostList(const std::set<std::string>& hosts,
+ PermissionMessageProperties properties) {
typedef std::pair<PermissionMessage::ID, int> MsgPair;
- const MsgPair kMessagesList[] = {
+ static const MsgPair kReadWriteMessagesList[] = {
std::make_pair(PermissionMessage::kHosts1,
IDS_EXTENSION_PROMPT_WARNING_1_HOST),
std::make_pair(PermissionMessage::kHosts2,
@@ -50,8 +52,23 @@ PermissionMessage CreateFromHostList(const std::set<std::string>& hosts) {
IDS_EXTENSION_PROMPT_WARNING_3_HOSTS),
std::make_pair(PermissionMessage::kHosts4OrMore,
IDS_EXTENSION_PROMPT_WARNING_HOSTS_LIST)};
-
- int host_msg_id = hosts.size() < arraysize(kMessagesList)
+ static const MsgPair kReadOnlyMessagesList[] = {
+ std::make_pair(PermissionMessage::kHosts1ReadOnly,
+ IDS_EXTENSION_PROMPT_WARNING_1_HOST_READ_ONLY),
+ std::make_pair(PermissionMessage::kHosts2ReadOnly,
+ IDS_EXTENSION_PROMPT_WARNING_2_HOSTS_READ_ONLY),
+ std::make_pair(PermissionMessage::kHosts3ReadOnly,
+ IDS_EXTENSION_PROMPT_WARNING_3_HOSTS_READ_ONLY),
+ std::make_pair(PermissionMessage::kHosts4OrMoreReadOnly,
+ IDS_EXTENSION_PROMPT_WARNING_HOSTS_LIST_READ_ONLY)};
+ COMPILE_ASSERT(
+ arraysize(kReadWriteMessagesList) == arraysize(kReadOnlyMessagesList),
+ message_lists_different_size);
+ static const int kNumMessages = arraysize(kReadWriteMessagesList);
+ const MsgPair(&messages_list)[kNumMessages] =
+ properties == kReadOnly ? kReadOnlyMessagesList : kReadWriteMessagesList;
+
+ int host_msg_id = hosts.size() < kNumMessages
? IDS_EXTENSION_PROMPT_WARNING_HOST_AND_SUBDOMAIN
: IDS_EXTENSION_PROMPT_WARNING_HOST_AND_SUBDOMAIN_LIST;
std::vector<base::string16> host_list;
@@ -67,11 +84,11 @@ PermissionMessage CreateFromHostList(const std::set<std::string>& hosts) {
}
DCHECK(host_list.size());
- if (host_list.size() < arraysize(kMessagesList)) {
+ if (host_list.size() < kNumMessages) {
return PermissionMessage(
- kMessagesList[host_list.size() - 1].first,
- l10n_util::GetStringFUTF16(
- kMessagesList[host_list.size() - 1].second, host_list, NULL));
+ messages_list[host_list.size() - 1].first,
+ l10n_util::GetStringFUTF16(messages_list[host_list.size() - 1].second,
+ host_list, NULL));
}
base::string16 details;
@@ -81,9 +98,9 @@ PermissionMessage CreateFromHostList(const std::set<std::string>& hosts) {
details += host_list[i];
}
return PermissionMessage(
- kMessagesList[arraysize(kMessagesList) - 1].first,
+ messages_list[arraysize(messages_list) - 1].first,
l10n_util::GetStringUTF16(
- kMessagesList[arraysize(kMessagesList) - 1].second),
+ messages_list[arraysize(messages_list) - 1].second),
details);
}
« no previous file with comments | « extensions/common/permissions/permission_message_util.h ('k') | extensions/extensions_strings.grd » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698