Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 /** | 5 /** |
| 6 * @fileoverview Behavior common to Site Settings classes. | 6 * @fileoverview Behavior common to Site Settings classes. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 /** @polymerBehavior */ | 9 /** @polymerBehavior */ |
| 10 var SiteSettingsBehaviorImpl = { | 10 var SiteSettingsBehaviorImpl = { |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 63 var key2 = origin + ',*'; | 63 var key2 = origin + ',*'; |
| 64 if (pref.value[key1] != undefined) | 64 if (pref.value[key1] != undefined) |
| 65 pref.value[key1].setting = value; | 65 pref.value[key1].setting = value; |
| 66 if (pref.value[key2] != undefined) | 66 if (pref.value[key2] != undefined) |
| 67 pref.value[key2].setting = value; | 67 pref.value[key2].setting = value; |
| 68 this.setPrefValue( | 68 this.setPrefValue( |
| 69 this.computeCategoryExceptionsPrefName(category), pref.value); | 69 this.computeCategoryExceptionsPrefName(category), pref.value); |
| 70 }, | 70 }, |
| 71 | 71 |
| 72 /** | 72 /** |
| 73 * A utility function to lookup a category name from its enum. | |
| 74 * @param {number} category The category ID to look up. | |
| 75 * @return {string} The category found or blank string if not found. | |
| 76 * @protected | |
| 77 */ | |
| 78 computeCategoryTextId: function(category) { | |
| 79 switch (category) { | |
| 80 case settings.ContentSettingsTypes.CAMERA: | |
| 81 return 'camera'; | |
| 82 case settings.ContentSettingsTypes.COOKIES: | |
| 83 return 'cookies'; | |
| 84 case settings.ContentSettingsTypes.FULLSCREEN: | |
| 85 return 'fullscreen'; | |
| 86 case settings.ContentSettingsTypes.GEOLOCATION: | |
| 87 return 'location'; | |
| 88 case settings.ContentSettingsTypes.IMAGES: | |
| 89 return 'images'; | |
| 90 case settings.ContentSettingsTypes.JAVASCRIPT: | |
| 91 return 'javascript'; | |
| 92 case settings.ContentSettingsTypes.MIC: | |
| 93 return 'microphone'; | |
| 94 case settings.ContentSettingsTypes.NOTIFICATIONS: | |
| 95 return 'notifications'; | |
| 96 case settings.ContentSettingsTypes.POPUPS: | |
| 97 return 'popups'; | |
| 98 default: | |
| 99 return ''; | |
| 100 } | |
| 101 }, | |
| 102 | |
| 103 /** | |
| 104 * A utility function to lookup a category enum from its text id. | |
| 105 * @param {string} textId The category text id to look up. | |
| 106 * @return {number} The category found or -1 if not found. | |
| 107 * @protected | |
| 108 */ | |
| 109 computeCategoryFromTextId: function(textId) { | |
|
tommycli
2016/01/07 19:30:37
I think this is no longer used.
Finnur
2016/01/08 10:36:15
Correct. Removed.
| |
| 110 switch (textId) { | |
| 111 case 'camera': | |
| 112 return settings.ContentSettingsTypes.CAMERA; | |
| 113 case 'cookies': | |
| 114 return settings.ContentSettingsTypes.COOKIES; | |
| 115 case 'fullscreen': | |
| 116 return settings.ContentSettingsTypes.FULLSCREEN; | |
| 117 case 'location': | |
| 118 return settings.ContentSettingsTypes.GEOLOCATION; | |
| 119 case 'images': | |
| 120 return settings.ContentSettingsTypes.IMAGES; | |
| 121 case 'javascript': | |
| 122 return settings.ContentSettingsTypes.JAVASCRIPT; | |
| 123 case 'microphone': | |
| 124 return settings.ContentSettingsTypes.MIC; | |
| 125 case 'notifications': | |
| 126 return settings.ContentSettingsTypes.NOTIFICATIONS; | |
| 127 case 'popups': | |
| 128 return settings.ContentSettingsTypes.POPUPS; | |
| 129 default: | |
| 130 return -1; | |
| 131 } | |
| 132 }, | |
| 133 | |
| 134 /** | |
| 73 * A utility function to compute the icon to use for the category. | 135 * A utility function to compute the icon to use for the category. |
| 74 * @param {number} category The category to show the icon for. | 136 * @param {number} category The category to show the icon for. |
| 75 * @return {string} The id of the icon for the given category. | 137 * @return {string} The id of the icon for the given category. |
| 76 * @protected | 138 * @protected |
| 77 */ | 139 */ |
| 78 computeIconForContentCategory: function(category) { | 140 computeIconForContentCategory: function(category) { |
| 79 switch (category) { | 141 switch (category) { |
| 80 case settings.ContentSettingsTypes.CAMERA: | 142 case settings.ContentSettingsTypes.CAMERA: |
| 81 return 'av:videocam'; | 143 return 'av:videocam'; |
| 82 case settings.ContentSettingsTypes.COOKIES: | 144 case settings.ContentSettingsTypes.COOKIES: |
| 83 return 'md-settings-icons:cookie'; | 145 return 'md-settings-icons:cookie'; |
| 84 case settings.ContentSettingsTypes.FULLSCREEN: | 146 case settings.ContentSettingsTypes.FULLSCREEN: |
| 85 return 'icons:fullscreen'; | 147 return 'icons:fullscreen'; |
| 86 case settings.ContentSettingsTypes.GEOLOCATION: | 148 case settings.ContentSettingsTypes.GEOLOCATION: |
| 87 return 'communication:location-on'; | 149 return 'communication:location-on'; |
| 88 case settings.ContentSettingsTypes.IMAGES: | 150 case settings.ContentSettingsTypes.IMAGES: |
| 89 return 'image:photo'; | 151 return 'image:photo'; |
| 90 case settings.ContentSettingsTypes.JAVASCRIPT: | 152 case settings.ContentSettingsTypes.JAVASCRIPT: |
| 91 return 'icons:input'; | 153 return 'icons:input'; |
| 92 case settings.ContentSettingsTypes.MIC: | 154 case settings.ContentSettingsTypes.MIC: |
| 93 return 'av:mic'; | 155 return 'av:mic'; |
| 94 case settings.ContentSettingsTypes.NOTIFICATION: | 156 case settings.ContentSettingsTypes.NOTIFICATIONS: |
| 95 return 'social:notifications'; | 157 return 'social:notifications'; |
| 96 case settings.ContentSettingsTypes.POPUPS: | 158 case settings.ContentSettingsTypes.POPUPS: |
| 97 return 'icons:open-in-new'; | 159 return 'icons:open-in-new'; |
| 98 default: | 160 default: |
| 99 assertNotReached(); | 161 assertNotReached(); |
| 100 return ''; | 162 return ''; |
| 101 } | 163 } |
| 102 }, | 164 }, |
| 103 | 165 |
| 104 /** | 166 /** |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 116 case settings.ContentSettingsTypes.FULLSCREEN: | 178 case settings.ContentSettingsTypes.FULLSCREEN: |
| 117 return loadTimeData.getString('siteSettingsFullscreen'); | 179 return loadTimeData.getString('siteSettingsFullscreen'); |
| 118 case settings.ContentSettingsTypes.GEOLOCATION: | 180 case settings.ContentSettingsTypes.GEOLOCATION: |
| 119 return loadTimeData.getString('siteSettingsLocation'); | 181 return loadTimeData.getString('siteSettingsLocation'); |
| 120 case settings.ContentSettingsTypes.IMAGES: | 182 case settings.ContentSettingsTypes.IMAGES: |
| 121 return loadTimeData.getString('siteSettingsImages'); | 183 return loadTimeData.getString('siteSettingsImages'); |
| 122 case settings.ContentSettingsTypes.JAVASCRIPT: | 184 case settings.ContentSettingsTypes.JAVASCRIPT: |
| 123 return loadTimeData.getString('siteSettingsJavascript'); | 185 return loadTimeData.getString('siteSettingsJavascript'); |
| 124 case settings.ContentSettingsTypes.MIC: | 186 case settings.ContentSettingsTypes.MIC: |
| 125 return loadTimeData.getString('siteSettingsMic'); | 187 return loadTimeData.getString('siteSettingsMic'); |
| 126 case settings.ContentSettingsTypes.NOTIFICATION: | 188 case settings.ContentSettingsTypes.NOTIFICATIONS: |
| 127 return loadTimeData.getString('siteSettingsNotifications'); | 189 return loadTimeData.getString('siteSettingsNotifications'); |
| 128 case settings.ContentSettingsTypes.POPUPS: | 190 case settings.ContentSettingsTypes.POPUPS: |
| 129 return loadTimeData.getString('siteSettingsPopups'); | 191 return loadTimeData.getString('siteSettingsPopups'); |
| 130 default: | 192 default: |
| 131 assertNotReached(); | 193 assertNotReached(); |
| 132 return ''; | 194 return ''; |
| 133 } | 195 } |
| 134 }, | 196 }, |
| 135 | 197 |
| 136 /** | 198 /** |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 172 case settings.ContentSettingsTypes.FULLSCREEN: | 234 case settings.ContentSettingsTypes.FULLSCREEN: |
| 173 return 'fullscreen'; | 235 return 'fullscreen'; |
| 174 case settings.ContentSettingsTypes.GEOLOCATION: | 236 case settings.ContentSettingsTypes.GEOLOCATION: |
| 175 return 'geolocation'; | 237 return 'geolocation'; |
| 176 case settings.ContentSettingsTypes.IMAGES: | 238 case settings.ContentSettingsTypes.IMAGES: |
| 177 return 'images'; | 239 return 'images'; |
| 178 case settings.ContentSettingsTypes.JAVASCRIPT: | 240 case settings.ContentSettingsTypes.JAVASCRIPT: |
| 179 return 'javascript'; | 241 return 'javascript'; |
| 180 case settings.ContentSettingsTypes.MIC: | 242 case settings.ContentSettingsTypes.MIC: |
| 181 return 'media_stream_mic'; | 243 return 'media_stream_mic'; |
| 182 case settings.ContentSettingsTypes.NOTIFICATION: | 244 case settings.ContentSettingsTypes.NOTIFICATIONS: |
| 183 return 'notifications'; | 245 return 'notifications'; |
| 184 case settings.ContentSettingsTypes.POPUPS: | 246 case settings.ContentSettingsTypes.POPUPS: |
| 185 return 'popups'; | 247 return 'popups'; |
| 186 default: | 248 default: |
| 187 assertNotReached(); | 249 assertNotReached(); |
| 188 return ''; | 250 return ''; |
| 189 } | 251 } |
| 190 }, | 252 }, |
| 191 | 253 |
| 192 /** | 254 /** |
| (...skipping 16 matching lines...) Expand all Loading... | |
| 209 loadTimeData.getString('siteSettingsAllowedRecommended') : | 271 loadTimeData.getString('siteSettingsAllowedRecommended') : |
| 210 loadTimeData.getString('siteSettingsAllowed'); | 272 loadTimeData.getString('siteSettingsAllowed'); |
| 211 case settings.ContentSettingsTypes.POPUPS: | 273 case settings.ContentSettingsTypes.POPUPS: |
| 212 // "Allowed" vs "Blocked (recommended)". | 274 // "Allowed" vs "Blocked (recommended)". |
| 213 if (categoryEnabled) { | 275 if (categoryEnabled) { |
| 214 return loadTimeData.getString('siteSettingsAllowed'); | 276 return loadTimeData.getString('siteSettingsAllowed'); |
| 215 } | 277 } |
| 216 return showRecommendation ? | 278 return showRecommendation ? |
| 217 loadTimeData.getString('siteSettingsBlockedRecommended') : | 279 loadTimeData.getString('siteSettingsBlockedRecommended') : |
| 218 loadTimeData.getString('siteSettingsBlocked'); | 280 loadTimeData.getString('siteSettingsBlocked'); |
| 219 case settings.ContentSettingsTypes.NOTIFICATION: | 281 case settings.ContentSettingsTypes.NOTIFICATIONS: |
| 220 // "Ask before sending (recommended)" vs "Blocked". | 282 // "Ask before sending (recommended)" vs "Blocked". |
| 221 if (!categoryEnabled) { | 283 if (!categoryEnabled) { |
| 222 return loadTimeData.getString('siteSettingsBlocked'); | 284 return loadTimeData.getString('siteSettingsBlocked'); |
| 223 } | 285 } |
| 224 return showRecommendation ? | 286 return showRecommendation ? |
| 225 loadTimeData.getString('siteSettingsAskBeforeSendingRecommended') : | 287 loadTimeData.getString('siteSettingsAskBeforeSendingRecommended') : |
| 226 loadTimeData.getString('siteSettingsAskBeforeSending'); | 288 loadTimeData.getString('siteSettingsAskBeforeSending'); |
| 227 case settings.ContentSettingsTypes.GEOLOCATION: | 289 case settings.ContentSettingsTypes.GEOLOCATION: |
| 228 case settings.ContentSettingsTypes.CAMERA: | 290 case settings.ContentSettingsTypes.CAMERA: |
| 229 case settings.ContentSettingsTypes.MIC: | 291 case settings.ContentSettingsTypes.MIC: |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 277 return settings.ContentSettingsTypes[type]; | 339 return settings.ContentSettingsTypes[type]; |
| 278 } | 340 } |
| 279 } | 341 } |
| 280 assertNotReached(); | 342 assertNotReached(); |
| 281 return 0; | 343 return 0; |
| 282 }, | 344 }, |
| 283 }; | 345 }; |
| 284 | 346 |
| 285 /** @polymerBehavior */ | 347 /** @polymerBehavior */ |
| 286 var SiteSettingsBehavior = [PrefsBehavior, SiteSettingsBehaviorImpl]; | 348 var SiteSettingsBehavior = [PrefsBehavior, SiteSettingsBehaviorImpl]; |
| OLD | NEW |