diff options
Diffstat (limited to 'js/raw-settings.js')
-rw-r--r-- | js/raw-settings.js | 144 |
1 files changed, 72 insertions, 72 deletions
diff --git a/js/raw-settings.js b/js/raw-settings.js index 5940188..54c5b3c 100644 --- a/js/raw-settings.js +++ b/js/raw-settings.js @@ -2,7 +2,7 @@ ηMatrix - a browser extension to black/white list requests. Copyright (C) 2018-2019 Raymond Hill - Copyright (C) 2019-2020 Alessio Vanni + Copyright (C) 2019-2022 Alessio Vanni This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see {http://www.gnu.org/licenses/}. - Home: https://libregit.spks.xyz/heckyel/ematrix + Home: https://gitlab.com/vannilla/ematrix uMatrix Home: https://github.com/gorhill/uBlock */ @@ -29,89 +29,89 @@ (function() { - /******************************************************************************/ +/******************************************************************************/ - var messaging = vAPI.messaging; - var cachedData = ''; - var rawSettingsInput = uDom.nodeFromId('rawSettings'); +var messaging = vAPI.messaging; +var cachedData = ''; +var rawSettingsInput = uDom.nodeFromId('rawSettings'); - /******************************************************************************/ +/******************************************************************************/ - var hashFromRawSettings = function(raw) { - return raw.trim().replace(/\s+/g, '|'); - }; +var hashFromRawSettings = function(raw) { + return raw.trim().replace(/\s+/g, '|'); +}; - /******************************************************************************/ +/******************************************************************************/ - // This is to give a visual hint that the content of user blacklist has changed. +// This is to give a visual hint that the content of user blacklist has changed. - var rawSettingsChanged = (function () { - var timer = null; +var rawSettingsChanged = (function () { + var timer = null; - var handler = function() { - timer = null; - var changed = - hashFromRawSettings(rawSettingsInput.value) !== cachedData; - uDom.nodeFromId('rawSettingsApply').disabled = !changed; - }; + var handler = function() { + timer = null; + var changed = + hashFromRawSettings(rawSettingsInput.value) !== cachedData; + uDom.nodeFromId('rawSettingsApply').disabled = !changed; + }; - return function() { - if ( timer !== null ) { - clearTimeout(timer); - } - timer = vAPI.setTimeout(handler, 100); - }; - })(); - - /******************************************************************************/ - - function renderRawSettings() { - var onRead = function(raw) { - cachedData = hashFromRawSettings(raw); - var pretty = [], - whitespaces = ' ', - lines = raw.split('\n'), - max = 0, - pos, - i, n = lines.length; - for ( i = 0; i < n; i++ ) { - pos = lines[i].indexOf(' '); - if ( pos > max ) { - max = pos; - } - } - for ( i = 0; i < n; i++ ) { - pos = lines[i].indexOf(' '); - pretty.push(whitespaces.slice(0, max - pos) + lines[i]); + return function() { + if ( timer !== null ) { + clearTimeout(timer); + } + timer = vAPI.setTimeout(handler, 100); + }; +})(); + +/******************************************************************************/ + +function renderRawSettings() { + var onRead = function(raw) { + cachedData = hashFromRawSettings(raw); + var pretty = [], + whitespaces = ' ', + lines = raw.split('\n'), + max = 0, + pos, + i, n = lines.length; + for ( i = 0; i < n; i++ ) { + pos = lines[i].indexOf(' '); + if ( pos > max ) { + max = pos; } - rawSettingsInput.value = pretty.join('\n') + '\n'; - rawSettingsChanged(); - rawSettingsInput.focus(); - }; - messaging.send('dashboard', { what: 'readRawSettings' }, onRead); - } - - /******************************************************************************/ - - var applyChanges = function() { - messaging.send( - 'dashboard', - { - what: 'writeRawSettings', - content: rawSettingsInput.value - }, - renderRawSettings - ); + } + for ( i = 0; i < n; i++ ) { + pos = lines[i].indexOf(' '); + pretty.push(whitespaces.slice(0, max - pos) + lines[i]); + } + rawSettingsInput.value = pretty.join('\n') + '\n'; + rawSettingsChanged(); + rawSettingsInput.focus(); }; + messaging.send('dashboard', { what: 'readRawSettings' }, onRead); +} + +/******************************************************************************/ + +var applyChanges = function() { + messaging.send( + 'dashboard', + { + what: 'writeRawSettings', + content: rawSettingsInput.value + }, + renderRawSettings + ); +}; - /******************************************************************************/ +/******************************************************************************/ - // Handle user interaction - uDom('#rawSettings').on('input', rawSettingsChanged); - uDom('#rawSettingsApply').on('click', applyChanges); +// Handle user interaction +uDom('#rawSettings').on('input', rawSettingsChanged); +uDom('#rawSettingsApply').on('click', applyChanges); - renderRawSettings(); +renderRawSettings(); - /******************************************************************************/ +/******************************************************************************/ })(); |