fix: if theme is a store theme and installed externally, update status in importFromFile

This commit is contained in:
2026-05-26 11:39:36 +02:00
parent 8a964d0a6a
commit f88a33c2aa
2 changed files with 32 additions and 17 deletions
+22
View File
@@ -416,6 +416,28 @@ export const importThemeFromFile = async (themeName: string, filePath: string) =
}
}
const themeInfo = await fs.readTextFile(await path.join(themeFolder, 'theme.json'));
const themeInfoObj = JSON.parse(themeInfo) as ThemeInfo;
const themeScriptUrl = convertFileSrc(
await path.normalize(`${themeFolder}/${themeInfoObj.entry}`)
);
const themeAssets = convertFileSrc(await path.normalize(`${themeFolder}/assets`));
const themePreview = convertFileSrc(
await path.normalize(`${themeFolder}/assets/${themeInfoObj.preview}`)
);
custom_themes.update((themes) => {
const matchedTheme = themes.find((t) => t.name === themeInfoObj.name);
if (matchedTheme) {
matchedTheme.scriptUrl = themeScriptUrl;
matchedTheme.assets = themeAssets;
matchedTheme.preview = themePreview;
matchedTheme.status = 'installed';
matchedTheme.progress = 1;
}
return themes;
});
await reloadThemes();
return {
success: true,
+10 -17
View File
@@ -58,18 +58,12 @@
event.key === 'F8' ||
event.key === 'F10' ||
event.key === 'F12' ||
(event.ctrlKey && event.key === 'r') ||
(event.metaKey && event.key === 'r') ||
(event.ctrlKey && event.key === 'f') ||
(event.metaKey && event.key === 'f') ||
(event.ctrlKey && event.key === 'g') ||
(event.metaKey && event.key === 'g') ||
(event.ctrlKey && event.key === 'j') ||
(event.metaKey && event.key === 'j') ||
(event.ctrlKey && event.key === 'p') ||
(event.metaKey && event.key === 'p') ||
(event.ctrlKey && event.key === 'u') ||
(event.metaKey && event.key === 'u')
((event.ctrlKey || event.metaKey) && event.key === 'r') ||
((event.ctrlKey || event.metaKey) && event.key === 'f') ||
((event.ctrlKey || event.metaKey) && event.key === 'g') ||
((event.ctrlKey || event.metaKey) && event.key === 'j') ||
((event.ctrlKey || event.metaKey) && event.key === 'p') ||
((event.ctrlKey || event.metaKey) && event.key === 'u')
) {
event.preventDefault();
}
@@ -150,11 +144,10 @@
config_discord_presence.set(val);
try {
presenceLoading.set(true);
if (val) {
await presence.connect();
} else {
await presence.disconnect();
}
if (val) await presence.connect();
else await presence.disconnect();
presenceLoading.set(false);
} catch (err) {
console.log(err);