Chromium Code Reviews| Index: go-back-with-backspace/pages/options.js |
| diff --git a/go-back-with-backspace/pages/options.js b/go-back-with-backspace/pages/options.js |
| index 9ff25d65f1c7564e76834ea643093fd4fa7893ba..001acb9e3783cee25e703c90a83c1e9d29ecf700 100644 |
| --- a/go-back-with-backspace/pages/options.js |
| +++ b/go-back-with-backspace/pages/options.js |
| @@ -2,33 +2,32 @@ |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| +// Disable the whitelist field when it's not relevant. |
| +function updateEnabledInputs() { |
| + $('whitelist').disabled = !$('disableInApplets').checked; |
| +} |
| + |
| // Initialize the page. |
| function init() { |
| - LoadInternationalizedStrings(); |
| - |
| - var blacklist = document.getElementById('blacklist'); |
| - var checkbox = document.getElementById('disableInApplets'); |
| - var whitelist = document.getElementById('whitelist'); |
| + loadInternationalizedStrings(); |
| // Configure the textboxes, allowing 200 characters for JSON serialization |
| // and key length. |
| - blacklist.maxlength = chrome.storage.sync.QUOTA_BYTES_PER_ITEM - 200; |
| - whitelist.maxlength = chrome.storage.sync.QUOTA_BYTES_PER_ITEM - 200; |
| + $('blacklist').maxlength = chrome.storage.sync.QUOTA_BYTES_PER_ITEM - 200; |
| + $('whitelist').maxlength = chrome.storage.sync.QUOTA_BYTES_PER_ITEM - 200; |
| // Set event handlers. |
| - document.getElementById('done_button').onclick = function() { |
| + $('done-button').onclick = function() { |
| chrome.storage.sync.set({ |
| // Split the lists into arrays at whitespace before saving. |
| - blacklist: |
| - document.getElementById('blacklist').value.split(/\s+/), |
| - disableInApplets: document.getElementById('disableInApplets').checked, |
| - whitelist: |
| - document.getElementById('whitelist').value.split(/\s+/) |
| + blacklist: $('blacklist').value.split(/\s+/), |
| + disableInApplets: $('disableInApplets').checked, |
| + whitelist: $('whitelist').value.split(/\s+/) |
| }, function() { |
| // One easy way to force an error for testing is to change "sync" to |
| // "managed" in the chrome.storage.sync.set() call above. |
| if (chrome.runtime.lastError) { |
| - document.getElementById('error').textContent = |
| + $('error').textContent = |
| chrome.i18n.getMessage('errorSaving', |
| chrome.runtime.lastError.message); |
| } else { |
| @@ -37,12 +36,10 @@ function init() { |
| }); |
| }; |
| - document.getElementById('cancel_button').onclick = function() { |
| - window.close(); |
| - }; |
| - |
| - document.getElementById('report_page').onclick = function() { |
| - reportPage(); |
| + $('disableInApplets').onchange = updateEnabledInputs; |
| + $('cancel-button').onclick = window.close.bind(window); |
| + $('feedback-link').onclick = function() { |
|
Devlin
2016/11/05 02:18:21
why not just = sendFeedback?
Pam (message me for reviews)
2016/11/05 04:12:56
sendFeedback takes an optional argument: if it's p
Devlin
2016/11/05 04:56:09
Whoops, missed your reply, sorry for the repeat!
|
| + sendFeedback(); |
| }; |
| // Load saved settings into the form fields. |
| @@ -51,10 +48,12 @@ function init() { |
| disableInApplets: true, |
| whitelist: [] |
| }, function(items) { |
| - blacklist.value = items.blacklist.join('\n'); |
| - checkbox.checked = items.disableInApplets; |
| - whitelist.value = items.whitelist.join('\n'); |
| + $('blacklist').value = items.blacklist.join('\n'); |
| + $('disableInApplets').checked = items.disableInApplets; |
| + $('whitelist').value = items.whitelist.join('\n'); |
| + |
| + updateEnabledInputs(); |
| }); |
| } |
| -window.addEventListener('load', init, false); |
| +window.addEventListener('load', init); |