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/content_settings/content_setting_bubble_model.h" | 5 #include "chrome/browser/ui/content_settings/content_setting_bubble_model.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/prefs/pref_service.h" | 9 #include "base/prefs/pref_service.h" |
10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
114 TabSpecificContentSettings* content_settings = NULL; | 114 TabSpecificContentSettings* content_settings = NULL; |
115 if (web_contents()) { | 115 if (web_contents()) { |
116 content_settings = | 116 content_settings = |
117 TabSpecificContentSettings::FromWebContents(web_contents()); | 117 TabSpecificContentSettings::FromWebContents(web_contents()); |
118 } | 118 } |
119 | 119 |
120 static const ContentSettingsTypeIdEntry kBlockedTitleIDs[] = { | 120 static const ContentSettingsTypeIdEntry kBlockedTitleIDs[] = { |
121 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_TITLE}, | 121 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_TITLE}, |
122 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_TITLE}, | 122 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_TITLE}, |
123 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_TITLE}, | 123 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_TITLE}, |
124 {CONTENT_SETTINGS_TYPE_KEYGEN, IDS_BLOCKED_KEYGEN_TITLE}, | |
msramek
2015/12/03 17:48:04
Please reorder according to the position of CONTEN
svaldez
2015/12/04 15:25:31
Done.
| |
124 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_TITLE}, | 125 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_TITLE}, |
125 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_TITLE}, | 126 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_TITLE}, |
126 {CONTENT_SETTINGS_TYPE_MIXEDSCRIPT, | 127 {CONTENT_SETTINGS_TYPE_MIXEDSCRIPT, |
127 IDS_BLOCKED_DISPLAYING_INSECURE_CONTENT}, | 128 IDS_BLOCKED_DISPLAYING_INSECURE_CONTENT}, |
128 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, | 129 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_BLOCKED_PPAPI_BROKER_TITLE}, |
129 IDS_BLOCKED_PPAPI_BROKER_TITLE}, | |
130 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_TITLE}, | 130 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_TITLE}, |
131 }; | 131 }; |
132 // Fields as for kBlockedTitleIDs, above. | 132 // Fields as for kBlockedTitleIDs, above. |
133 static const ContentSettingsTypeIdEntry kAccessedTitleIDs[] = { | 133 static const ContentSettingsTypeIdEntry kAccessedTitleIDs[] = { |
134 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ACCESSED_COOKIES_TITLE}, | 134 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ACCESSED_COOKIES_TITLE}, |
135 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_TITLE}, | 135 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_TITLE}, |
136 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_TITLE}, | 136 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_TITLE}, |
137 }; | 137 }; |
138 const ContentSettingsTypeIdEntry *title_ids = kBlockedTitleIDs; | 138 const ContentSettingsTypeIdEntry *title_ids = kBlockedTitleIDs; |
139 size_t num_title_ids = arraysize(kBlockedTitleIDs); | 139 size_t num_title_ids = arraysize(kBlockedTitleIDs); |
140 if (content_settings && content_settings->IsContentAllowed(content_type()) && | 140 if (content_settings && content_settings->IsContentAllowed(content_type()) && |
141 !content_settings->IsContentBlocked(content_type())) { | 141 !content_settings->IsContentBlocked(content_type())) { |
142 title_ids = kAccessedTitleIDs; | 142 title_ids = kAccessedTitleIDs; |
143 num_title_ids = arraysize(kAccessedTitleIDs); | 143 num_title_ids = arraysize(kAccessedTitleIDs); |
144 } | 144 } |
145 int title_id = | 145 int title_id = |
146 GetIdForContentType(title_ids, num_title_ids, content_type()); | 146 GetIdForContentType(title_ids, num_title_ids, content_type()); |
147 if (title_id) | 147 if (title_id) |
148 set_title(l10n_util::GetStringUTF8(title_id)); | 148 set_title(l10n_util::GetStringUTF8(title_id)); |
149 } | 149 } |
150 | 150 |
151 void ContentSettingTitleAndLinkModel::SetManageLink() { | 151 void ContentSettingTitleAndLinkModel::SetManageLink() { |
152 static const ContentSettingsTypeIdEntry kLinkIDs[] = { | 152 static const ContentSettingsTypeIdEntry kLinkIDs[] = { |
153 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_LINK}, | 153 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_LINK}, |
154 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_LINK}, | 154 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_LINK}, |
155 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_LINK}, | 155 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_LINK}, |
156 {CONTENT_SETTINGS_TYPE_KEYGEN, IDS_BLOCKED_KEYGEN_LINK}, | |
156 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_LINK}, | 157 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_LINK}, |
157 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_LINK}, | 158 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_LINK}, |
158 {CONTENT_SETTINGS_TYPE_GEOLOCATION, IDS_GEOLOCATION_BUBBLE_MANAGE_LINK}, | 159 {CONTENT_SETTINGS_TYPE_GEOLOCATION, IDS_GEOLOCATION_BUBBLE_MANAGE_LINK}, |
159 {CONTENT_SETTINGS_TYPE_MIXEDSCRIPT, IDS_LEARN_MORE}, | 160 {CONTENT_SETTINGS_TYPE_MIXEDSCRIPT, IDS_LEARN_MORE}, |
160 {CONTENT_SETTINGS_TYPE_PROTOCOL_HANDLERS, IDS_HANDLERS_BUBBLE_MANAGE_LINK}, | 161 {CONTENT_SETTINGS_TYPE_PROTOCOL_HANDLERS, IDS_HANDLERS_BUBBLE_MANAGE_LINK}, |
161 {CONTENT_SETTINGS_TYPE_MEDIASTREAM, IDS_MEDIASTREAM_BUBBLE_MANAGE_LINK}, | 162 {CONTENT_SETTINGS_TYPE_MEDIASTREAM, IDS_MEDIASTREAM_BUBBLE_MANAGE_LINK}, |
162 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_PPAPI_BROKER_BUBBLE_MANAGE_LINK}, | 163 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_PPAPI_BROKER_BUBBLE_MANAGE_LINK}, |
163 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOADS_LINK}, | 164 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOADS_LINK}, |
164 {CONTENT_SETTINGS_TYPE_MIDI_SYSEX, IDS_MIDI_SYSEX_BUBBLE_MANAGE_LINK}, | 165 {CONTENT_SETTINGS_TYPE_MIDI_SYSEX, IDS_MIDI_SYSEX_BUBBLE_MANAGE_LINK}, |
165 }; | 166 }; |
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
288 DCHECK(!allowed || | 289 DCHECK(!allowed || |
289 content_settings->IsContentAllowed(content_type())); | 290 content_settings->IsContentAllowed(content_type())); |
290 | 291 |
291 RadioGroup radio_group; | 292 RadioGroup radio_group; |
292 radio_group.url = url; | 293 radio_group.url = url; |
293 | 294 |
294 static const ContentSettingsTypeIdEntry kBlockedAllowIDs[] = { | 295 static const ContentSettingsTypeIdEntry kBlockedAllowIDs[] = { |
295 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_UNBLOCK}, | 296 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_UNBLOCK}, |
296 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_UNBLOCK}, | 297 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_UNBLOCK}, |
297 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_UNBLOCK}, | 298 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_UNBLOCK}, |
299 {CONTENT_SETTINGS_TYPE_KEYGEN, IDS_BLOCKED_KEYGEN_UNBLOCK}, | |
298 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_UNBLOCK_ALL}, | 300 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_UNBLOCK_ALL}, |
299 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_UNBLOCK}, | 301 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_UNBLOCK}, |
300 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_BLOCKED_PPAPI_BROKER_UNBLOCK}, | 302 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_BLOCKED_PPAPI_BROKER_UNBLOCK}, |
301 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_UNBLOCK}, | 303 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_UNBLOCK}, |
302 }; | 304 }; |
303 // Fields as for kBlockedAllowIDs, above. | 305 // Fields as for kBlockedAllowIDs, above. |
304 static const ContentSettingsTypeIdEntry kAllowedAllowIDs[] = { | 306 static const ContentSettingsTypeIdEntry kAllowedAllowIDs[] = { |
305 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ALLOWED_COOKIES_NO_ACTION}, | 307 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ALLOWED_COOKIES_NO_ACTION}, |
306 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_NO_ACTION}, | 308 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_NO_ACTION}, |
307 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_NO_ACTION}, | 309 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_NO_ACTION}, |
308 }; | 310 }; |
309 | 311 |
310 std::string radio_allow_label; | 312 std::string radio_allow_label; |
311 if (allowed) { | 313 if (allowed) { |
312 int resource_id = GetIdForContentType(kAllowedAllowIDs, | 314 int resource_id = GetIdForContentType(kAllowedAllowIDs, |
313 arraysize(kAllowedAllowIDs), | 315 arraysize(kAllowedAllowIDs), |
314 content_type()); | 316 content_type()); |
315 radio_allow_label = l10n_util::GetStringUTF8(resource_id); | 317 radio_allow_label = l10n_util::GetStringUTF8(resource_id); |
316 } else { | 318 } else { |
317 radio_allow_label = l10n_util::GetStringFUTF8( | 319 radio_allow_label = l10n_util::GetStringFUTF8( |
318 GetIdForContentType(kBlockedAllowIDs, arraysize(kBlockedAllowIDs), | 320 GetIdForContentType(kBlockedAllowIDs, arraysize(kBlockedAllowIDs), |
319 content_type()), | 321 content_type()), |
320 display_host); | 322 display_host); |
321 } | 323 } |
322 | 324 |
323 static const ContentSettingsTypeIdEntry kBlockedBlockIDs[] = { | 325 static const ContentSettingsTypeIdEntry kBlockedBlockIDs[] = { |
324 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_NO_ACTION}, | 326 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_BLOCKED_COOKIES_NO_ACTION}, |
325 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_NO_ACTION}, | 327 {CONTENT_SETTINGS_TYPE_IMAGES, IDS_BLOCKED_IMAGES_NO_ACTION}, |
326 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_NO_ACTION}, | 328 {CONTENT_SETTINGS_TYPE_JAVASCRIPT, IDS_BLOCKED_JAVASCRIPT_NO_ACTION}, |
329 {CONTENT_SETTINGS_TYPE_KEYGEN, IDS_BLOCKED_KEYGEN_NO_ACTION}, | |
327 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_NO_ACTION}, | 330 {CONTENT_SETTINGS_TYPE_PLUGINS, IDS_BLOCKED_PLUGINS_NO_ACTION}, |
328 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_NO_ACTION}, | 331 {CONTENT_SETTINGS_TYPE_POPUPS, IDS_BLOCKED_POPUPS_NO_ACTION}, |
329 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_BLOCKED_PPAPI_BROKER_NO_ACTION}, | 332 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_BLOCKED_PPAPI_BROKER_NO_ACTION}, |
330 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_NO_ACTION}, | 333 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_BLOCKED_DOWNLOAD_NO_ACTION}, |
331 }; | 334 }; |
332 static const ContentSettingsTypeIdEntry kAllowedBlockIDs[] = { | 335 static const ContentSettingsTypeIdEntry kAllowedBlockIDs[] = { |
333 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ALLOWED_COOKIES_BLOCK}, | 336 {CONTENT_SETTINGS_TYPE_COOKIES, IDS_ALLOWED_COOKIES_BLOCK}, |
334 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_BLOCK}, | 337 {CONTENT_SETTINGS_TYPE_PPAPI_BROKER, IDS_ALLOWED_PPAPI_BROKER_BLOCK}, |
335 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_BLOCK}, | 338 {CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS, IDS_ALLOWED_DOWNLOAD_BLOCK}, |
336 }; | 339 }; |
(...skipping 915 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1252 ProtocolHandlerRegistryFactory::GetForBrowserContext(profile); | 1255 ProtocolHandlerRegistryFactory::GetForBrowserContext(profile); |
1253 return new ContentSettingRPHBubbleModel(delegate, web_contents, profile, | 1256 return new ContentSettingRPHBubbleModel(delegate, web_contents, profile, |
1254 registry); | 1257 registry); |
1255 } | 1258 } |
1256 if (content_type == CONTENT_SETTINGS_TYPE_MIDI_SYSEX) { | 1259 if (content_type == CONTENT_SETTINGS_TYPE_MIDI_SYSEX) { |
1257 return new ContentSettingMidiSysExBubbleModel(delegate, web_contents, | 1260 return new ContentSettingMidiSysExBubbleModel(delegate, web_contents, |
1258 profile); | 1261 profile); |
1259 } | 1262 } |
1260 if (content_type == CONTENT_SETTINGS_TYPE_IMAGES || | 1263 if (content_type == CONTENT_SETTINGS_TYPE_IMAGES || |
1261 content_type == CONTENT_SETTINGS_TYPE_JAVASCRIPT || | 1264 content_type == CONTENT_SETTINGS_TYPE_JAVASCRIPT || |
1265 content_type == CONTENT_SETTINGS_TYPE_KEYGEN || | |
1262 content_type == CONTENT_SETTINGS_TYPE_PPAPI_BROKER || | 1266 content_type == CONTENT_SETTINGS_TYPE_PPAPI_BROKER || |
1263 content_type == CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS) { | 1267 content_type == CONTENT_SETTINGS_TYPE_AUTOMATIC_DOWNLOADS) { |
1264 return new ContentSettingSingleRadioGroup(delegate, web_contents, profile, | 1268 return new ContentSettingSingleRadioGroup(delegate, web_contents, profile, |
1265 content_type); | 1269 content_type); |
1266 } | 1270 } |
1267 NOTREACHED() << "No bubble for the content type " << content_type << "."; | 1271 NOTREACHED() << "No bubble for the content type " << content_type << "."; |
1268 return nullptr; | 1272 return nullptr; |
1269 } | 1273 } |
1270 | 1274 |
1271 ContentSettingBubbleModel::ContentSettingBubbleModel( | 1275 ContentSettingBubbleModel::ContentSettingBubbleModel( |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1311 if (type == content::NOTIFICATION_WEB_CONTENTS_DESTROYED) { | 1315 if (type == content::NOTIFICATION_WEB_CONTENTS_DESTROYED) { |
1312 DCHECK_EQ(web_contents_, | 1316 DCHECK_EQ(web_contents_, |
1313 content::Source<WebContents>(source).ptr()); | 1317 content::Source<WebContents>(source).ptr()); |
1314 web_contents_ = NULL; | 1318 web_contents_ = NULL; |
1315 } else { | 1319 } else { |
1316 DCHECK_EQ(chrome::NOTIFICATION_PROFILE_DESTROYED, type); | 1320 DCHECK_EQ(chrome::NOTIFICATION_PROFILE_DESTROYED, type); |
1317 DCHECK_EQ(profile_, content::Source<Profile>(source).ptr()); | 1321 DCHECK_EQ(profile_, content::Source<Profile>(source).ptr()); |
1318 profile_ = NULL; | 1322 profile_ = NULL; |
1319 } | 1323 } |
1320 } | 1324 } |
OLD | NEW |