Created
November 24, 2023 23:21
-
-
Save wyatt8740/d1377094960c4510209caaff0c65b3a3 to your computer and use it in GitHub Desktop.
dark old reddit userscript
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Old Reddit Dark Mode | |
// @namespace wyatt8740.oldRedditDarkMode | |
// @description Dark mode for Old Reddit (old.reddit.com) | |
// @include http://old.reddit.com/* | |
// @include https://old.reddit.com/* | |
// @include http://np.reddit.com/* | |
// @include https://np.reddit.com/* | |
// @version 1 | |
// @grant UnsafeWindow | |
// ==/UserScript== | |
var s = document.createElement("style"); | |
s.type = "text/css"; | |
s.innerText = ` | |
body { | |
/* background-color: #2E3436; */ | |
background-color: #181818; | |
color: #afafaf; | |
} | |
.roundfield textarea, .roundfield input[type="text"], .roundfield input[type="url"], .roundfield input[type="password"], .roundfield input[type="number"], #compose-message .roundfield select { | |
background-color: #181818; | |
color: #afafaf; | |
} | |
.reddit-infobar { | |
background-color: #282000; | |
} | |
.reddit-infobar .md { | |
color: #9a7d2e; | |
} | |
.message.recipient > .entry { | |
color: #afafaf; | |
} | |
.message.message-reply.recipient > .entry .head, .message.message-parent.recipient > .entry .head { | |
color: grey; | |
} | |
.usertext.grayed .usertext-body { | |
background-color: #2f2f2f; | |
} | |
.message .subject .correspondent { | |
background-color: #181818; | |
} | |
.drop-choices { | |
background-color: #181818; | |
} | |
.flair, .linkflairlabel { | |
background-color: #181818; | |
background: #181818; | |
} | |
.flairselector h2 { | |
background-color: #282828; | |
} | |
.flairselector li { | |
border: 1px solid black; | |
} | |
h2 { | |
color: #afafaf; | |
} | |
.crosspost-preview { | |
background-color: #282828; | |
border: 1px solid grey; | |
} | |
.link .usertext-body .md { | |
background-color: #141414; | |
border: 1px solid grey; | |
} | |
.flair, .linkflairlabel { | |
background-color: #282828; | |
color: grey; | |
border: 1px solid grey; | |
} | |
.roundfield { | |
background-color: #282828; | |
} | |
.formtabs-content { | |
border-top: 4px solid #383838; | |
} | |
.tabmenu.formtab .selected a { | |
background-color: #383838; | |
} | |
.md blockquote, .md del { | |
color: #999999; | |
} | |
.md blockquote { | |
background-color: #343434; | |
} | |
.comment .child, .comment .showreplies { | |
border-left: 1px dotted #9f9f9f; | |
} | |
.usertext .md { | |
/* user comment text color */ | |
color: #bababa !important; | |
} | |
.new-comment .usertext-body { | |
/* comment color for newly posted messages */ | |
background-color: #2f2f2f; | |
border: solid 1px #2a2a2a; | |
} | |
.new-comment .md :not(pre) > code, .link .md :not(pre) > code, .usertext.border .md :not(pre) > code, .new-comment .md pre, .link .md pre, .usertext.border .md pre | |
{ | |
background-color: #282828; | |
border: 1px solid #323232; | |
} | |
.md code, .md pre { | |
background-color: #282828; | |
border: 1px solid #323232; | |
} | |
body.with-listing-chooser .listing-chooser { | |
background-color: #080808; | |
} | |
body.with-listing-chooser .listing-chooser .grippy { | |
width: 6px; | |
background: #000000; | |
border-left: 1px solid #464646; | |
} | |
body.with-listing-chooser .listing-chooser .grippy::after { | |
border-right: 1px dotted #6f6f6f; | |
} | |
.listing-chooser li, .listing-chooser li.selected { | |
background: #181818; | |
border: 1px solid #383838; | |
} | |
.listing-chooser .intro { | |
background-color: #282820; | |
} | |
a, .thing .title { | |
color: #3086ae; | |
} | |
p.title > a.title { | |
font-weight: bold; | |
} | |
.pagename a { | |
color: #afafaf; | |
} | |
.tabmenu li { | |
border: 1px solid grey; | |
} | |
.tabmenu li a { | |
background-color: #1d1d1d; | |
color: grey; | |
} | |
.message.new > .entry { | |
background-color: #181818; | |
} | |
.usertext.border .usertext-body { | |
background-color: #282820; | |
} | |
.infobar { | |
background-color: #32322a; | |
} | |
a:visited { | |
color: #3086ae; | |
} | |
#header { | |
background-color: #282828; | |
border-bottom: 1px solid #afafaf; | |
} | |
#sr-header-area { | |
background-color: #252525; | |
color: | |
} | |
.dropdown.srdrop .selected, .sr-bar a { | |
color: #afafaf; | |
} | |
#sr-more-link { | |
background-color: #0d0d0d; | |
color: #afafaf; | |
} | |
#header-bottom-right { | |
background-color: #000000; | |
} | |
#mail.havemail { | |
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKCAIAAADkeZOuAAAARUlEQVR4AWPY70gCglL6hABCNYSDXymQRKiGcPAoRajGlEATwaE6FV0zUAS7arAEwkOY4ki+TMXry1QkX+JRiuZI0mIHAKe3cdja4fUxAAAAAElFTkSuQmCC); | |
background-position: 0px 0px; | |
} | |
#mail.nohavemail { | |
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKAQMAAABR1Za6AAAABlBMVEVgYGAvLy+FWzIyAAAAIUlEQVR4AWMAAvsfDPFfGPLfMJTfYSiew5CTA+QCBYEyAJHlCap+qtufAAAAAElFTkSuQmCC); | |
background-position: 0px 0px; | |
} | |
.message-count { | |
/* message count number is wrong color if I don't do this important: */ | |
color: #EEE !important; | |
background-color: #bf4100 !important; /* darker orange */ | |
} | |
#chat.active { | |
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAABjUlEQVR4AcVXpVatYRTc96KJF6BT8AoZL7hbpOMuBYe3IKL96AtAw90b7jKDw7eO/brXml+2zeciwYizXv47qyTdWS6jgNNZISvABcFv6mijD31Fp5AwGombgGMkfgkG9GUMY7WRVkoBEuwwmRYwljmCJ3TKPwQNaCRUwFzMGQzplBKsE8zpl9x/TfXX3Gef0sFMkEMZvcpAMgPk+DnaoWhWnMwjb/paHJR5aiLIRU7hakOFlSCncKmzmpicJHZqCJznCCXQdAsa4p3CRd5HX3QicSrff/Qz8kegn/UXqwCcJL5QDeL4s7A4fthyFGLo/Mcq+S9ouLGB+JyGQx/90AFbIt8hNzVjqiUBvu3+mtqrYXDMspYEv7UOrkk7phOJ02xZQCj4WbJ8yaTgp8HyTYKCqsdRace22ESD1QcBEi8qTmYffTjRVUcLDntQDvkJMu94C8Oqn8BH0w70cNpVyCpkDsjDCIzBuxW6I/1XGPVYWwTHUwStAz3o81jFp0/C4JcJvwnACxwAN3ouba+/IuQdj3qlKwAAAABJRU5ErkJggg==); | |
background-position: 0px 0px; | |
background-size: 15px 15px; | |
} | |
.sidebox .spacer { | |
background-color: #181818; | |
border-radius: 3px; | |
padding: 5px 0 0 44px | |
} | |
.sidebox.create .spacer a { | |
/* background-image: none; */ | |
} | |
.trophy-area .content, .server-seconds { | |
background-color: #181818; | |
/* color: #afafaf;*/ | |
border-radius: 3px; | |
padding: 4px; | |
} | |
.server-seconds em { | |
color: grey; | |
} | |
.gold-accent.comment-visits-box { | |
color: #947400; | |
} | |
.gold-accent { | |
background-color: #282000; | |
} | |
.content.submit .info-notice { | |
background-color: #20303b; | |
} | |
#newlink-with-image-upload .image-upload-drop-target { | |
background-color: #282828; | |
} | |
.trophy-name { | |
/* needs JS override apparently. ARGH */ | |
color: grey important; | |
} | |
.pinnable-content.pinned { | |
/* also needs JS override */ | |
background-color: #181818 !important; | |
} | |
.side { | |
background-color: #181818; | |
/* color: #afafaf;*/ | |
border-radius: 3px; | |
padding: 4px; | |
} | |
.titlebox h1 a { | |
color: inherit; | |
} | |
.linkinfo { | |
background-color: #0f0f0f; | |
color: inherit; | |
border: 1px solid #484848; | |
} | |
.morelink { | |
background-image: none; | |
border: 1px solid #484848; | |
} | |
.morelink a { | |
background-color: #282828; | |
/* color: #afafaf;*/ | |
color: #888888; | |
} | |
.nub { | |
display: none; | |
} | |
#search input[type="text"] { | |
background-color: #282828; | |
color: #afafaf; | |
} | |
.titlebox form.toggle, .leavemoderator { | |
background: #181818 none no-repeat scroll center left; | |
} | |
.md { | |
color: #afafaf; | |
} | |
.linkinfo .shortlink input{ | |
background-color: #282828; | |
color: inherit; | |
} | |
textarea { | |
background-color: #282828; | |
color: #afafaf; | |
border-style: solid; | |
border-color: #484848; | |
} | |
.usertext-buttons > button { | |
background-color: #282828; | |
color: #afafaf; | |
border-style: solid; | |
border-color: #484848; | |
} | |
.tabmenu li.selected a { | |
background-color: #181818; | |
color: #afafaf; | |
border: 1px solid #484848; | |
} | |
/* one ad blocking rule */ | |
.premium-banner-outer { | |
display: none; | |
border-radius: 3px; | |
border-width: 1px; | |
} | |
.premium-banner { | |
background-color: #282828; | |
} | |
.premium-banner::before { | |
border: 1px solid #484848; | |
} | |
.premium-banner__title { | |
color: #afafaf; | |
} | |
.premium-banner__button { | |
/* background-color: #bf4100; | |
border: 4px solid #bf4100;*/ | |
background-color: #181818; | |
border: 4px solid #181818; | |
color: #afafaf; | |
font-weight: normal; | |
} | |
/* new reddit annoying */ | |
#sr-header-area .redesign-beta-optin { | |
display: none; | |
} | |
` | |
document.head.appendChild(s); | |
function changeImportantProperty(selector, attribute, value) { | |
var trophy=document.querySelectorAll(selector); | |
if(trophy) { | |
trophy.forEach((item) => { | |
if(item) { | |
try{item.style.removeProperty(attribute); | |
item.style.setProperty(attribute, value, "important"); | |
} | |
catch(e){} | |
} | |
}) | |
} | |
} | |
function changeInline(selector, attribute, value, important=false) { | |
var trophy=document.querySelectorAll(selector); | |
if(trophy) { | |
trophy.forEach((item) => { | |
if(item) { | |
try{item.style.removeProperty(attribute); | |
item.style.setProperty(attribute, value, important ? "important" : null); | |
} | |
catch(e){} | |
} | |
}) | |
} | |
} | |
function RGBtoHSP(R,G,B){ | |
const Pr=0.299; | |
const Pg=0.587; | |
const Pb=0.114; | |
var H; | |
var S; | |
var P; | |
// Calculate the Perceived brightness. | |
P=Math.round(Math.sqrt(R*R*Pr+G*G*Pg+B*B*Pb)); | |
// Calculate the Hue and Saturation. (This part works | |
// the same way as in the HSV/B and HSL systems???.) | |
if (R===G && R===B) { | |
H=0; | |
S=0; | |
return([H,S,P]); | |
} | |
if (R>=G && R>=B) { // R is largest | |
if (B>=G) { | |
H=(6.0/6.0)-(1.0/6.0)*((B-G)/(R-G)); | |
S=1.0-(G/R); } | |
else { | |
H=(0.0/6.0)+(1.0/6.0)*((G-B)/(R-B)); | |
S=1.0-(B/R); }} | |
else if (G>=R && G>=B) { // G is largest | |
if (R>=B) { | |
H=(2.0/6.0)-(1.0/6.0)*((R-B)/(G-B)); | |
S=1.0-(B/G); } | |
else { | |
H=(2.0/6.0)+(1.0/6.0)*((B-R)/(G-R)); | |
S=1.0-(R/G); }} | |
else { // B is largest | |
if (G>=R) { | |
H=(4.0/6.0)-(1.0/6.0)*((G-R)/(B-R)); | |
S=1.0-(R/B); } | |
else { | |
H=(4.0/6.0)+(1.0/6.0)*((R-G)/(B-G)); | |
S=1.0-(G/B); }} | |
return [H,S,parseInt(P)]; // i hate this | |
} | |
function HSPtoRGB(H,S,P){ | |
const Pr=0.299; | |
const Pg=0.587; | |
const Pb=0.114; | |
var R; | |
var G; | |
var B; | |
var part; | |
var minOverMax=1.0-S; | |
if (minOverMax>0.0) { | |
if ( H<1.0/6.0) { // R>G>B | |
H= 6.0*( H-0.0/6.0); | |
part=1.0+H*(1.0/minOverMax-1.0); | |
B=P/Math.sqrt(Pr/minOverMax/minOverMax+Pg*part*part+Pb); | |
R=B/minOverMax; | |
G=B+H*(R-B); } | |
else if ( H<2.0/6.0) { // G>R>B | |
H= 6.0*(-H+2.0/6.0); part=1.0+H*(1.0/minOverMax-1.0); | |
B=P/Math.sqrt(Pg/minOverMax/minOverMax+Pr*part*part+Pb); | |
G=B/minOverMax; | |
R=B+H*(G-B); } | |
else if ( H<3.0/6.0) { // G>B>R | |
H= 6.0*( H-2.0/6.0); part=1.0+H*(1.0/minOverMax-1.0); | |
R=P/Math.sqrt(Pg/minOverMax/minOverMax+Pb*part*part+Pr); | |
G=R/minOverMax; B=R+H*(G-R); } | |
else if ( H<4.0/6.0) { // B>G>R | |
H= 6.0*(-H+4.0/6.0); part=1.0+H*(1.0/minOverMax-1.0); | |
R=P/Math.sqrt(Pb/minOverMax/minOverMax+Pg*part*part+Pr); | |
B=R/minOverMax; G=R+H*(B-R); } | |
else if ( H<5.0/6.0) { // B>R>G | |
H= 6.0*( H-4.0/6.0); part=1.0+H*(1.0/minOverMax-1.0); | |
G=P/Math.sqrt(Pb/minOverMax/minOverMax+Pr*part*part+Pg); | |
B=G/minOverMax; R=G+H*(B-G); } | |
else { // R>B>G | |
H= 6.0*(-H+6.0/6.0); part=1.0+H*(1.0/minOverMax-1.0); | |
G=P/Math.sqrt(Pr/minOverMax/minOverMax+Pb*part*part+Pg); | |
R=G/minOverMax; B=G+H*(R-G); } | |
return [Math.floor(R),Math.floor(G),Math.floor(B)]; | |
} | |
else { | |
if ( H<1.0/6.0) { // R>G>B | |
H= 6.0*( H-0.0/6.0); R=Math.sqrt(P*P/(Pr+Pg*H*H)); G=R*H; B=0.0; } | |
else if ( H<2.0/6.0) { // G>R>B | |
H= 6.0*(-H+2.0/6.0); G=Math.sqrt(P*P/(Pg+Pr*H*H)); R=G*H; B=0.0; } | |
else if ( H<3.0/6.0) { // G>B>R | |
H= 6.0*( H-2.0/6.0); G=Math.sqrt(P*P/(Pg+Pb*H*H)); B=G*H; R=0.0; } | |
else if ( H<4.0/6.0) { // B>G>R | |
H= 6.0*(-H+4.0/6.0); B=Math.sqrt(P*P/(Pb+Pg*H*H)); G=B*H; R=0.0; } | |
else if ( H<5.0/6.0) { // B>R>G | |
H= 6.0*( H-4.0/6.0); B=Math.sqrt(P*P/(Pb+Pr*H*H)); R=B*H; G=0.0; } | |
else { // R>B>G | |
H= 6.0*(-H+6.0/6.0); R=Math.sqrt(P*P/(Pr+Pb*H*H)); B=R*H; G=0.0; } | |
return [parseInt(R),parseInt(G),parseInt(B)]; | |
} | |
} | |
// return array of [r,g,b,a] from any valid color. if failed returns undefined | |
function colorValues(color) | |
{ | |
if (color === '') | |
return; | |
//console.log(color.toString()); | |
if (color.toLowerCase() === 'transparent') | |
return [0, 0, 0, 0]; | |
if (color[0] === '#') | |
{ | |
if (color.length < 7) | |
{ | |
// convert #RGB and #RGBA to #RRGGBB and #RRGGBBAA | |
color = '#' + color[1] + color[1] + color[2] + color[2] + color[3] + color[3] + (color.length > 4 ? color[4] + color[4] : ''); | |
} | |
return [parseInt(color.substr(1, 2), 16), | |
parseInt(color.substr(3, 2), 16), | |
parseInt(color.substr(5, 2), 16), | |
color.length > 7 ? parseInt(color.substr(7, 2), 16)/255 : 1]; | |
} | |
if (color.indexOf('rgb') === -1) | |
{ | |
// convert named colors | |
var temp_elem = document.body.appendChild(document.createElement('fictum')); // intentionally use unknown tag to lower chances of css rule override with !important | |
var flag = 'rgb(1, 2, 3)'; // this flag tested on chrome 59, ff 53, ie9, ie10, ie11, edge 14 | |
temp_elem.style.color = flag; | |
if (temp_elem.style.color !== flag) | |
return; // color set failed - some monstrous css rule is probably taking over the color of our object | |
temp_elem.style.color = color; | |
if (temp_elem.style.color === flag || temp_elem.style.color === '') | |
return; // color parse failed | |
color = getComputedStyle(temp_elem).color; | |
document.body.removeChild(temp_elem); | |
} | |
if (color.indexOf('rgb') === 0) | |
{ | |
if (color.indexOf('rgba') === -1) | |
color += ',1'; // convert 'rgb(R,G,B)' to 'rgb(R,G,B)A' which looks awful but will pass the regxep below | |
return color.match(/[\.\d]+/g).map(function (a) | |
{ | |
return +a | |
}); | |
} | |
} | |
function arrToRGB(colorArray) { | |
return 'rgba(' + colorArray[0] + ','+ colorArray[1] + ','+ colorArray[2] + ','+ colorArray[3] + ')' | |
} | |
function nameToRgba(name) { | |
var canvas = document.createElement('canvas'); | |
var context = canvas.getContext('2d'); | |
context.fillStyle = name; | |
context.fillRect(0,0,1,1); | |
return context.getImageData(0,0,1,1).data; | |
} | |
/* do note that this does not have any gamma correction, so the numbers are not really "40% as bright." */ | |
function darkenBackgroundSelector(selector, multiplier=0.2, important=null) { | |
var trophy=document.querySelectorAll(selector); | |
var str=' ' | |
if(trophy) { | |
trophy.forEach((item) => { | |
if(item) { | |
var attribute='background-color'; | |
var bgcolor=colorValues(arrToRGB(nameToRgba(item.style[attribute]))); | |
var hspbg=RGBtoHSP(bgcolor[0],bgcolor[1],bgcolor[2]); | |
var hspbg2=hspbg[2]*multiplier; | |
var bgcolor2=[]; | |
bgcolor2=HSPtoRGB(hspbg[0],hspbg[1],hspbg2); | |
var i=0; | |
while(i<3) { // preserve alpha by inserting back | |
if(bgcolor){ | |
bgcolor[i]=bgcolor2[i]; | |
} | |
i++; | |
} | |
/* | |
var fgcolor=colorValues(arrToRGB(nameToRgba(item.style['color']))); | |
console.log(fgcolor.toString()) | |
console.log* | |
var hspfg=RGBtoHSP(fgcolor[0],fgcolor[1],fgcolor[2]); | |
var hspfg2=hspfg[2]/(1/multiplier); | |
var fgcolor2=HSPtoRGB(hspfg[0],hspfg[1],hspfg2); | |
console.log(fgColor2.toString()) | |
var i=0; | |
while(i<3) { // preserve alpha by inserting back | |
if(fgcolor){ | |
fgcolor[i]=fgcolor2[i]; | |
} | |
i++; | |
}*/ | |
var myrgb=''; | |
/* | |
i=0; | |
var myrgb=''; | |
while(i<3) { | |
if(bgcolor){ | |
bgcolor2[i]=Math.floor(bgcolor[i] * multiplier); | |
} | |
i++; | |
} | |
bgcolor2[3]=bgcolor[3]; | |
i=0; | |
while(i<3) { | |
if(fgcolor) | |
fgcolor2[i]=Math.floor((multiplier * (1/ fgcolor[i]))); | |
i++; | |
} | |
fgcolor2[3]=fgcolor[3];*/ | |
try{ | |
item.style.removeProperty(attribute); | |
myrgb=arrToRGB(bgcolor); | |
item.style.setProperty(attribute, myrgb, important ? "important" : null); | |
} | |
catch(e){ | |
console.err(e); | |
} | |
/* try{ | |
item.style.removeProperty('color'); | |
myrgb=arrToRGB(fgcolor); | |
item.style.setProperty('color', myrgb, important ? "important" : null); | |
} | |
catch(e){ | |
console.err(e); | |
}*/ | |
} | |
}); | |
} | |
} | |
/* do note that this does not have any gamma correction, so the numbers are not really "40% as bright." */ | |
function darkenBorderSelector(selector, multiplier=0.2, important=null) { | |
var trophy=document.querySelectorAll(selector); | |
var str=' ' | |
if(trophy) { | |
trophy.forEach((item) => { | |
if(item) { | |
var attribute='border-color'; | |
var bgcolor=colorValues(arrToRGB(nameToRgba(item.style[attribute]))); | |
var hspbg=RGBtoHSP(bgcolor[0],bgcolor[1],bgcolor[2]); | |
var hspbg2=hspbg[2]*(multiplier); | |
var bgcolor2=[]; | |
bgcolor2=HSPtoRGB(hspbg[0],hspbg[1],hspbg2); | |
var i=0; | |
while(i<3) { // preserve alpha by inserting back | |
if(bgcolor){ | |
bgcolor[i]=bgcolor2[i]; | |
} | |
i++; | |
} | |
/* | |
var fgcolor=colorValues(arrToRGB(nameToRgba(item.style['color']))); | |
console.log(fgcolor.toString()) | |
console.log* | |
var hspfg=RGBtoHSP(fgcolor[0],fgcolor[1],fgcolor[2]); | |
var hspfg2=hspfg[2]/(1/multiplier); | |
var fgcolor2=HSPtoRGB(hspfg[0],hspfg[1],hspfg2); | |
console.log(fgColor2.toString()) | |
var i=0; | |
while(i<3) { // preserve alpha by inserting back | |
if(fgcolor){ | |
fgcolor[i]=fgcolor2[i]; | |
} | |
i++; | |
}*/ | |
var myrgb=''; | |
/* | |
i=0; | |
var myrgb=''; | |
while(i<3) { | |
if(bgcolor){ | |
bgcolor2[i]=Math.floor(bgcolor[i] * multiplier); | |
} | |
i++; | |
} | |
bgcolor2[3]=bgcolor[3]; | |
i=0; | |
while(i<3) { | |
if(fgcolor) | |
fgcolor2[i]=Math.floor((multiplier * (1/ fgcolor[i]))); | |
i++; | |
} | |
fgcolor2[3]=fgcolor[3];*/ | |
try{ | |
item.style.removeProperty(attribute); | |
myrgb=arrToRGB(bgcolor); | |
item.style.setProperty(attribute, myrgb, important ? "important" : null); | |
} | |
catch(e){ | |
console.err(e); | |
} | |
/* try{ | |
item.style.removeProperty('color'); | |
myrgb=arrToRGB(fgcolor); | |
item.style.setProperty('color', myrgb, important ? "important" : null); | |
} | |
catch(e){ | |
console.err(e); | |
}*/ | |
} | |
}); | |
} | |
} | |
darkenBackgroundSelector('.flairrichtext', 0.3, null); | |
darkenBorderSelector('.linkflairlabel', 0.45, null); | |
/*lightenForegroundSelector('.linkflairlabel', 0.4, null);*/ | |
/*darkenBackgroundSelector('.linkflairlabel', 0.8, null);*/ | |
changeInline(".trophy-name", "color", "grey", true); | |
changeInline(".pinnable-content.pinned", "background-color", "#181818", true); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment