Ajoe Alex
excellent.Just What I wanted. could be better to have a button to start injecting or stop injecting.
|
m.ali petek
Excellent. There are a lot of extensions do injection for domain. But this injects to all pages, every page. Awesome.
Here is my darkener, I just dont want to see white anymore.
function rgb2hsl(rgbArr) var r1 = rgbArr[0] / 255; var g1 = rgbArr[1] / 255; var b1 = rgbArr[2] / 255; var alpha = rgbArr[3] ? rgbArr[3] : 1; var maxColor = Math.max(r1,g1,b1); var minColor = Math.min(r1,g1,b1); //Calculate L: var L = (maxColor + minColor) / 2 ; var S = 0; var H = 0; if(maxColor != minColor) //Calculate S: if(L 0.5) S = (maxColor - minColor) / (maxColor + minColor); else S = (maxColor - minColor) / (2.0 - maxColor - minColor); //Calculate H: if(r1 == maxColor) H = (g1-b1) / (maxColor - minColor); else if(g1 == maxColor) H = 2.0 + (b1 - r1) / (maxColor - minColor); else H = 4.0 + (r1 - g1) / (maxColor - minColor); L = L * 100; S = S * 100; H = H * 60; if(H0) H += 360; var result = [H, S, L, alpha]; return result;
function hslToRgb(h, s, l, a) var r, g, b;
if (s == 0) r = g = b = l; // achromatic else function hue2rgb(p, q, t) if (t 0) t += 1; if (t 1) t -= 1; if (t 1/6) return p + (q - p) * 6 * t; if (t 1/2) return q; if (t 2/3) return p + (q - p) * (2/3 - t) * 6; return p;
var q = l 0.5 ? l * (1 + s) : l + s - l * s; var p = 2 * l - q;
r = hue2rgb(p, q, h + 1/3); g = hue2rgb(p, q, h); b = hue2rgb(p, q, h - 1/3); return [ r * 255, g * 255, b * 255, a];
function hexToRGB(hex, alpha) var r, g, b; if(hex.length 5) r = parseInt(hex.slice(1, 2), 16), g = parseInt(hex.slice(2, 3), 16), b = parseInt(hex.slice(3, 4), 16); else r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16); if (alpha) return "rgba(" + r + ", " + g + ", " + b + ", " + alpha + ")"; else return "rgb(" + r + ", " + g + ", " + b + ")";
function parseRGB(str) return str.replace(/[^\d,]/g, '').split(',');
function bgcToHSL(bgc, type) var rgba, hsla; if(type == 'hex') rgba = hexToRGB(bgc,1); rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'rgb') rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'hsl') hsla = parseRGB(bgc); if(hsla.length == 3) hsla.push(1); hsla = rgb2hsl(rgba); hsla.forEach((e,i)=hsla[i] = Math.round(e);); return hsla;
function _darkit(e)
if(e.getAttribute('data-darkened')) return; e.setAttribute('data-darkened', true); var style = window.getComputedStyle(e); var bgc = style.getPropertyValue('background-color'); var bgct; var clr = style.getPropertyValue('color'); var bg = style.getPropertyValue('background-image'); if(bgc == '' bgc == 'initial' bgc == 'inherit' bgc == 'transparent') return if(bg.indexOf('gradient') !== -1) console.log(bg);
if(bgc.indexOf('rgb') !== -1) bgct = 'rgb'; if(bgc.indexOf('hsl') !== -1) bgct = 'hsl'; if(bgc.indexOf('#') !== -1) bgct = 'hex'; var bgHsl = bgcToHSL(bgc, bgct); //var newRgb = hslToRgb(bgHsl[0], bgHsl[1], bgHsl[2], bgHsl[3]); var lightness = bgHsl[2] 40 ? bgHsl[2] - 20 : bgHsl[2] / 2; var newBgc = `hsla($bgHsl[0], $bgHsl[1]%, $lightness%, $bgHsl[3])!important`; //console.log(newBgc); // e.style.background = 'none'; var existingStyle = e.getAttribute('style'); e.setAttribute('style', existingStyle + ';background-color:' + newBgc); //e.style.color = '#ccc'; //e.style.borderColor = '#555';
_darkit(document.querySelector('body')); document.querySelectorAll('body *').forEach(e= _darkit(e); );
document.addEventListener('DOMNodeInserted', (e)= document.querySelectorAll('body *').forEach(e= _darkit(e); ); );
|
Josh Lowery
Perfectly perfect!
|
Ajoe Alex
excellent.Just What I wanted. could be better to have a button to start injecting or stop injecting.
|
m.ali petek
Excellent. There are a lot of extensions do injection for domain. But this injects to all pages, every page. Awesome.
Here is my darkener, I just dont want to see white anymore.
function rgb2hsl(rgbArr) var r1 = rgbArr[0] / 255; var g1 = rgbArr[1] / 255; var b1 = rgbArr[2] / 255; var alpha = rgbArr[3] ? rgbArr[3] : 1; var maxColor = Math.max(r1,g1,b1); var minColor = Math.min(r1,g1,b1); //Calculate L: var L = (maxColor + minColor) / 2 ; var S = 0; var H = 0; if(maxColor != minColor) //Calculate S: if(L 0.5) S = (maxColor - minColor) / (maxColor + minColor); else S = (maxColor - minColor) / (2.0 - maxColor - minColor); //Calculate H: if(r1 == maxColor) H = (g1-b1) / (maxColor - minColor); else if(g1 == maxColor) H = 2.0 + (b1 - r1) / (maxColor - minColor); else H = 4.0 + (r1 - g1) / (maxColor - minColor); L = L * 100; S = S * 100; H = H * 60; if(H0) H += 360; var result = [H, S, L, alpha]; return result;
function hslToRgb(h, s, l, a) var r, g, b;
if (s == 0) r = g = b = l; // achromatic else function hue2rgb(p, q, t) if (t 0) t += 1; if (t 1) t -= 1; if (t 1/6) return p + (q - p) * 6 * t; if (t 1/2) return q; if (t 2/3) return p + (q - p) * (2/3 - t) * 6; return p;
var q = l 0.5 ? l * (1 + s) : l + s - l * s; var p = 2 * l - q;
r = hue2rgb(p, q, h + 1/3); g = hue2rgb(p, q, h); b = hue2rgb(p, q, h - 1/3); return [ r * 255, g * 255, b * 255, a];
function hexToRGB(hex, alpha) var r, g, b; if(hex.length 5) r = parseInt(hex.slice(1, 2), 16), g = parseInt(hex.slice(2, 3), 16), b = parseInt(hex.slice(3, 4), 16); else r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16); if (alpha) return "rgba(" + r + ", " + g + ", " + b + ", " + alpha + ")"; else return "rgb(" + r + ", " + g + ", " + b + ")";
function parseRGB(str) return str.replace(/[^\d,]/g, '').split(',');
function bgcToHSL(bgc, type) var rgba, hsla; if(type == 'hex') rgba = hexToRGB(bgc,1); rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'rgb') rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'hsl') hsla = parseRGB(bgc); if(hsla.length == 3) hsla.push(1); hsla = rgb2hsl(rgba); hsla.forEach((e,i)=hsla[i] = Math.round(e);); return hsla;
function _darkit(e)
if(e.getAttribute('data-darkened')) return; e.setAttribute('data-darkened', true); var style = window.getComputedStyle(e); var bgc = style.getPropertyValue('background-color'); var bgct; var clr = style.getPropertyValue('color'); var bg = style.getPropertyValue('background-image'); if(bgc == '' bgc == 'initial' bgc == 'inherit' bgc == 'transparent') return if(bg.indexOf('gradient') !== -1) console.log(bg);
if(bgc.indexOf('rgb') !== -1) bgct = 'rgb'; if(bgc.indexOf('hsl') !== -1) bgct = 'hsl'; if(bgc.indexOf('#') !== -1) bgct = 'hex'; var bgHsl = bgcToHSL(bgc, bgct); //var newRgb = hslToRgb(bgHsl[0], bgHsl[1], bgHsl[2], bgHsl[3]); var lightness = bgHsl[2] 40 ? bgHsl[2] - 20 : bgHsl[2] / 2; var newBgc = `hsla($bgHsl[0], $bgHsl[1]%, $lightness%, $bgHsl[3])!important`; //console.log(newBgc); // e.style.background = 'none'; var existingStyle = e.getAttribute('style'); e.setAttribute('style', existingStyle + ';background-color:' + newBgc); //e.style.color = '#ccc'; //e.style.borderColor = '#555';
_darkit(document.querySelector('body')); document.querySelectorAll('body *').forEach(e= _darkit(e); );
document.addEventListener('DOMNodeInserted', (e)= document.querySelectorAll('body *').forEach(e= _darkit(e); ); );
|
Josh Lowery
Perfectly perfect!
|
Ajoe Alex
excellent.Just What I wanted. could be better to have a button to start injecting or stop injecting.
|
m.ali petek
Excellent. There are a lot of extensions do injection for domain. But this injects to all pages, every page. Awesome.
Here is my darkener, I just dont want to see white anymore.
function rgb2hsl(rgbArr) var r1 = rgbArr[0] / 255; var g1 = rgbArr[1] / 255; var b1 = rgbArr[2] / 255; var alpha = rgbArr[3] ? rgbArr[3] : 1; var maxColor = Math.max(r1,g1,b1); var minColor = Math.min(r1,g1,b1); //Calculate L: var L = (maxColor + minColor) / 2 ; var S = 0; var H = 0; if(maxColor != minColor) //Calculate S: if(L 0.5) S = (maxColor - minColor) / (maxColor + minColor); else S = (maxColor - minColor) / (2.0 - maxColor - minColor); //Calculate H: if(r1 == maxColor) H = (g1-b1) / (maxColor - minColor); else if(g1 == maxColor) H = 2.0 + (b1 - r1) / (maxColor - minColor); else H = 4.0 + (r1 - g1) / (maxColor - minColor); L = L * 100; S = S * 100; H = H * 60; if(H0) H += 360; var result = [H, S, L, alpha]; return result;
function hslToRgb(h, s, l, a) var r, g, b;
if (s == 0) r = g = b = l; // achromatic else function hue2rgb(p, q, t) if (t 0) t += 1; if (t 1) t -= 1; if (t 1/6) return p + (q - p) * 6 * t; if (t 1/2) return q; if (t 2/3) return p + (q - p) * (2/3 - t) * 6; return p;
var q = l 0.5 ? l * (1 + s) : l + s - l * s; var p = 2 * l - q;
r = hue2rgb(p, q, h + 1/3); g = hue2rgb(p, q, h); b = hue2rgb(p, q, h - 1/3); return [ r * 255, g * 255, b * 255, a];
function hexToRGB(hex, alpha) var r, g, b; if(hex.length 5) r = parseInt(hex.slice(1, 2), 16), g = parseInt(hex.slice(2, 3), 16), b = parseInt(hex.slice(3, 4), 16); else r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16); if (alpha) return "rgba(" + r + ", " + g + ", " + b + ", " + alpha + ")"; else return "rgb(" + r + ", " + g + ", " + b + ")";
function parseRGB(str) return str.replace(/[^\d,]/g, '').split(',');
function bgcToHSL(bgc, type) var rgba, hsla; if(type == 'hex') rgba = hexToRGB(bgc,1); rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'rgb') rgba = parseRGB(bgc); if(rgba.length == 3) rgba.push(1); if(type == 'hsl') hsla = parseRGB(bgc); if(hsla.length == 3) hsla.push(1); hsla = rgb2hsl(rgba); hsla.forEach((e,i)=hsla[i] = Math.round(e);); return hsla;
function _darkit(e)
if(e.getAttribute('data-darkened')) return; e.setAttribute('data-darkened', true); var style = window.getComputedStyle(e); var bgc = style.getPropertyValue('background-color'); var bgct; var clr = style.getPropertyValue('color'); var bg = style.getPropertyValue('background-image'); if(bgc == '' bgc == 'initial' bgc == 'inherit' bgc == 'transparent') return if(bg.indexOf('gradient') !== -1) console.log(bg);
if(bgc.indexOf('rgb') !== -1) bgct = 'rgb'; if(bgc.indexOf('hsl') !== -1) bgct = 'hsl'; if(bgc.indexOf('#') !== -1) bgct = 'hex'; var bgHsl = bgcToHSL(bgc, bgct); //var newRgb = hslToRgb(bgHsl[0], bgHsl[1], bgHsl[2], bgHsl[3]); var lightness = bgHsl[2] 40 ? bgHsl[2] - 20 : bgHsl[2] / 2; var newBgc = `hsla($bgHsl[0], $bgHsl[1]%, $lightness%, $bgHsl[3])!important`; //console.log(newBgc); // e.style.background = 'none'; var existingStyle = e.getAttribute('style'); e.setAttribute('style', existingStyle + ';background-color:' + newBgc); //e.style.color = '#ccc'; //e.style.borderColor = '#555';
_darkit(document.querySelector('body')); document.querySelectorAll('body *').forEach(e= _darkit(e); );
document.addEventListener('DOMNodeInserted', (e)= document.querySelectorAll('body *').forEach(e= _darkit(e); ); );
|
Josh Lowery
Perfectly perfect!
|
Ajoe Alex
excellent.Just What I wanted. could be better to have a button to start injecting or stop injecting.
|