feat: add badgeLayout toggle, rename FOUC class to rt-badges-enabled
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -5,17 +5,24 @@
|
|||||||
const settings = await window.RedditTweaks.loadSettings();
|
const settings = await window.RedditTweaks.loadSettings();
|
||||||
if (!settings.enabled) return;
|
if (!settings.enabled) return;
|
||||||
|
|
||||||
document.documentElement.classList.add("rt-enabled");
|
if (settings.badgeLayout) {
|
||||||
|
document.documentElement.classList.add("rt-badges-enabled");
|
||||||
window.RedditTweaks.badgeTweak.apply(settings);
|
window.RedditTweaks.badgeTweak.apply(settings);
|
||||||
|
}
|
||||||
|
|
||||||
browser.storage.onChanged.addListener(function (changes) {
|
browser.storage.onChanged.addListener(function (changes) {
|
||||||
if (changes.enabled && changes.enabled.newValue !== changes.enabled.oldValue) {
|
if (
|
||||||
|
(changes.enabled && changes.enabled.newValue !== changes.enabled.oldValue) ||
|
||||||
|
(changes.badgeLayout && changes.badgeLayout.newValue !== changes.badgeLayout.oldValue)
|
||||||
|
) {
|
||||||
location.reload();
|
location.reload();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
window.RedditTweaks.loadSettings().then(function (updated) {
|
window.RedditTweaks.loadSettings().then(function (updated) {
|
||||||
|
if (settings.badgeLayout) {
|
||||||
window.RedditTweaks.badgeTweak.updateColors(updated);
|
window.RedditTweaks.badgeTweak.updateColors(updated);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/* --- FOUC prevention: hide original elements immediately --- */
|
/* --- FOUC prevention: hide original elements immediately --- */
|
||||||
html.rt-enabled .thing.link .tagline .subreddit,
|
html.rt-badges-enabled .thing.link .tagline .subreddit,
|
||||||
html.rt-enabled .thing.link .flat-list li:has(> .comments) {
|
html.rt-badges-enabled .thing.link .flat-list li:has(> .comments) {
|
||||||
display: none !important;
|
display: none !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,6 +13,10 @@
|
|||||||
<span>Enabled</span>
|
<span>Enabled</span>
|
||||||
<input type="checkbox" id="enabled">
|
<input type="checkbox" id="enabled">
|
||||||
</label>
|
</label>
|
||||||
|
<label class="toggle-row">
|
||||||
|
<span>Badge layout</span>
|
||||||
|
<input type="checkbox" id="badgeLayout">
|
||||||
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="section">
|
<div class="section">
|
||||||
|
|||||||
@@ -68,6 +68,7 @@
|
|||||||
|
|
||||||
function populateControls(settings) {
|
function populateControls(settings) {
|
||||||
document.getElementById("enabled").checked = settings.enabled;
|
document.getElementById("enabled").checked = settings.enabled;
|
||||||
|
document.getElementById("badgeLayout").checked = settings.badgeLayout;
|
||||||
document.getElementById("darkMode").value = settings.darkMode;
|
document.getElementById("darkMode").value = settings.darkMode;
|
||||||
|
|
||||||
COLOR_KEYS.forEach(function (key) {
|
COLOR_KEYS.forEach(function (key) {
|
||||||
@@ -280,6 +281,7 @@
|
|||||||
async function saveFromControls() {
|
async function saveFromControls() {
|
||||||
var settings = {
|
var settings = {
|
||||||
enabled: document.getElementById("enabled").checked,
|
enabled: document.getElementById("enabled").checked,
|
||||||
|
badgeLayout: document.getElementById("badgeLayout").checked,
|
||||||
darkMode: document.getElementById("darkMode").value,
|
darkMode: document.getElementById("darkMode").value,
|
||||||
subredditColors: collectSubredditOverrides(),
|
subredditColors: collectSubredditOverrides(),
|
||||||
};
|
};
|
||||||
@@ -301,6 +303,7 @@
|
|||||||
populateControls(settings);
|
populateControls(settings);
|
||||||
|
|
||||||
document.getElementById("enabled").addEventListener("change", saveFromControls);
|
document.getElementById("enabled").addEventListener("change", saveFromControls);
|
||||||
|
document.getElementById("badgeLayout").addEventListener("change", saveFromControls);
|
||||||
document.getElementById("darkMode").addEventListener("change", saveFromControls);
|
document.getElementById("darkMode").addEventListener("change", saveFromControls);
|
||||||
|
|
||||||
COLOR_KEYS.forEach(function (key) {
|
COLOR_KEYS.forEach(function (key) {
|
||||||
|
|||||||
Reference in New Issue
Block a user