fix: disabled-state UI, settings shallow-merge, and popup save reliability

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-26 15:05:48 -04:00
parent 46d008d339
commit 8be62e1fec
4 changed files with 12 additions and 5 deletions

View File

@@ -5,6 +5,7 @@
const settings = await window.RedditTweaks.loadSettings();
if (!settings.enabled) return;
document.documentElement.classList.add("rt-enabled");
window.RedditTweaks.badgeTweak.apply(settings);
browser.storage.onChanged.addListener(function (changes) {

View File

@@ -1,6 +1,6 @@
/* --- FOUC prevention: hide original elements immediately --- */
.thing.link .tagline .subreddit,
.thing.link .flat-list .comments {
html.rt-enabled .thing.link .tagline .subreddit,
html.rt-enabled .thing.link .flat-list .comments {
display: none !important;
}

View File

@@ -21,7 +21,9 @@
async function loadSettings() {
const stored = await browser.storage.local.get(null);
return Object.assign({}, DEFAULTS, stored);
const merged = Object.assign({}, DEFAULTS, stored);
merged.subredditColors = Object.assign({}, merged.subredditColors);
return merged;
}
async function saveSettings(settings) {

View File

@@ -115,7 +115,7 @@
return overrides;
}
function saveFromControls() {
async function saveFromControls() {
const settings = {
enabled: document.getElementById("enabled").checked,
darkMode: document.getElementById("darkMode").value,
@@ -134,7 +134,11 @@
}
});
window.RedditTweaks.saveSettings(settings);
try {
await window.RedditTweaks.saveSettings(settings);
} catch (err) {
console.error("Reddit Tweaks: failed to save settings", err);
}
}
async function init() {