| Index: chrome/common/extensions/permissions/chrome_permission_message_provider.cc
|
| diff --git a/chrome/common/extensions/permissions/chrome_permission_message_provider.cc b/chrome/common/extensions/permissions/chrome_permission_message_provider.cc
|
| index f0c415d5f79b70d1c8f4d86d16a28c3d99da7408..84c25188d1fe56c736be872997029d2423a5557a 100644
|
| --- a/chrome/common/extensions/permissions/chrome_permission_message_provider.cc
|
| +++ b/chrome/common/extensions/permissions/chrome_permission_message_provider.cc
|
| @@ -73,6 +73,17 @@ PermissionMessages::iterator FindMessageByID(PermissionMessages& messages,
|
| return messages.end();
|
| }
|
|
|
| +void SuppressMessage(PermissionMessages& messages,
|
| + int suppressing_message,
|
| + int suppressed_message) {
|
| + PermissionMessages::iterator suppressed =
|
| + FindMessageByID(messages, suppressed_message);
|
| + if (suppressed != messages.end() &&
|
| + FindMessageByID(messages, suppressing_message) != messages.end()) {
|
| + messages.erase(suppressed);
|
| + }
|
| +}
|
| +
|
| } // namespace
|
|
|
| ChromePermissionMessageProvider::ChromePermissionMessageProvider() {
|
| @@ -104,16 +115,14 @@ PermissionMessages ChromePermissionMessageProvider::GetPermissionMessages(
|
| messages.insert(messages.end(), manifest_permission_msgs.begin(),
|
| manifest_permission_msgs.end());
|
|
|
| - // Special hack: bookmarks permission message supersedes override bookmarks UI
|
| - // permission message if both permissions are specified.
|
| - PermissionMessages::iterator override_bookmarks_ui =
|
| - FindMessageByID(messages, PermissionMessage::kOverrideBookmarksUI);
|
| - if (override_bookmarks_ui != messages.end() &&
|
| - FindMessageByID(messages, PermissionMessage::kBookmarks) !=
|
| - messages.end()) {
|
| - messages.erase(override_bookmarks_ui);
|
| - }
|
| -
|
| + // Some warnings are more generic and/or powerful and superseed other
|
| + // warnings. In that case, suppress the superseeded warning.
|
| + SuppressMessage(messages,
|
| + PermissionMessage::kBookmarks,
|
| + PermissionMessage::kOverrideBookmarksUI);
|
| + SuppressMessage(messages,
|
| + PermissionMessage::kBrowsingHistory,
|
| + PermissionMessage::kTabs);
|
| return messages;
|
| }
|
|
|
|
|