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

Side by Side Diff: ui/accessibility/extensions/colorenhancer/src/popup.js

Issue 1102033005: Fix i18n for the color enhancer extension (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address feedback Created 5 years, 7 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 unified diff | Download patch
OLDNEW
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 var site; 5 var site;
6 6
7 /** 7 /**
8 * Toggle between filters 0 and 1 in order to force a repaint. 8 * Toggle between filters 0 and 1 in order to force a repaint.
9 * TODO(kevers): Consolidate with filter in CVD. 9 * TODO(kevers): Consolidate with filter in CVD.
10 * @type {!number} 10 * @type {!number}
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 * Creates a radio button for selecting the given type of CVD and a series of 100 * Creates a radio button for selecting the given type of CVD and a series of
101 * color swatches for testing color vision. 101 * color swatches for testing color vision.
102 * @param {string} cvdType Type of CVD, either "PROTANOMALY" or "DEUTERANOMALY" 102 * @param {string} cvdType Type of CVD, either "PROTANOMALY" or "DEUTERANOMALY"
103 * or "TRITANOMALY". 103 * or "TRITANOMALY".
104 * @return {!Element} Row of color swatches with a leading radio button. 104 * @return {!Element} Row of color swatches with a leading radio button.
105 */ 105 */
106 function createTestRow(type) { 106 function createTestRow(type) {
107 var toCssColor = function(rgb) { 107 var toCssColor = function(rgb) {
108 return 'rgb(' + rgb.join(',') + ')'; 108 return 'rgb(' + rgb.join(',') + ')';
109 }; 109 };
110 var row = document.createElement('div'); 110 var row = document.createElement('label');
111 row.classList.add('row'); 111 row.classList.add('row');
112 112
113 var button = document.createElement('input'); 113 var button = document.createElement('input');
114 button.id = 'select-' + type; 114 button.id = 'select-' + type;
115 button.name = 'cvdType'; 115 button.name = 'cvdType';
116 button.setAttribute('type', 'radio'); 116 button.setAttribute('type', 'radio');
117 button.value = type; 117 button.value = type;
118 button.checked = false; 118 button.checked = false;
119 row.appendChild(button); 119 row.appendChild(button);
120 button.addEventListener('change', function() { 120 button.addEventListener('change', function() {
121 onTypeChange(this.value); 121 onTypeChange(this.value);
122 }); 122 });
123 button.setAttribute('aria-label', type);
123 124
124 SWATCH_COLORS.forEach(function(data) { 125 SWATCH_COLORS.forEach(function(data) {
125 var swatch = document.querySelector('.swatch.template').cloneNode(true); 126 var swatch = document.querySelector('.swatch.template').cloneNode(true);
126 swatch.style.background = toCssColor(data.BACKGROUND); 127 swatch.style.background = toCssColor(data.BACKGROUND);
127 swatch.style.color = toCssColor(data[type]); 128 swatch.style.color = toCssColor(data[type]);
128 swatch.classList.remove('template'); 129 swatch.classList.remove('template');
129 row.appendChild(swatch); 130 row.appendChild(swatch);
130 }); 131 });
131 return row; 132 return row;
132 } 133 }
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 debugPrint('onReset'); 314 debugPrint('onReset');
314 resetSiteDeltas(); 315 resetSiteDeltas();
315 update(); 316 update();
316 } 317 }
317 318
318 /** 319 /**
319 * Attach event handlers to controls and update the filter config values for the 320 * Attach event handlers to controls and update the filter config values for the
320 * currently visible tab. 321 * currently visible tab.
321 */ 322 */
322 function initialize() { 323 function initialize() {
324 var i18nElements = document.querySelectorAll('*[i18n-content]');
325 for (var i = 0; i < i18nElements.length; i++) {
326 var elem = i18nElements[i];
327 var msg = elem.getAttribute('i18n-content');
328 elem.textContent = chrome.i18n.getMessage(msg);
329 }
330
323 $('setup').onclick = function() { 331 $('setup').onclick = function() {
324 $('setup-panel').classList.remove('collapsed'); 332 $('setup-panel').classList.remove('collapsed');
325 // Store current settings in the event of a canceled setup. 333 // Store current settings in the event of a canceled setup.
326 restoreSettings = { 334 restoreSettings = {
327 type: getDefaultType(), 335 type: getDefaultType(),
328 severity: getDefaultSeverity() 336 severity: getDefaultSeverity()
329 }; 337 };
330 // Initalize controls based on current settings. 338 // Initalize controls based on current settings.
331 setCvdTypeSelection(restoreSettings.type); 339 setCvdTypeSelection(restoreSettings.type);
332 $('severity').value = restoreSettings.severity; 340 $('severity').value = restoreSettings.severity;
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
391 return; 399 return;
392 } 400 }
393 } 401 }
394 site = 'unknown site'; 402 site = 'unknown site';
395 update(); 403 update();
396 }); 404 });
397 } 405 }
398 406
399 // TODO(wnwen): Use Promise instead, more reliable. 407 // TODO(wnwen): Use Promise instead, more reliable.
400 window.addEventListener('load', initialize, false); 408 window.addEventListener('load', initialize, false);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698