mirror of
https://github.com/thelounge/thelounge
synced 2024-11-26 22:10:22 +00:00
Merge pull request #3555 from thelounge/xpaw/apply-theme
Apply user theme as soon as possible on page load
This commit is contained in:
commit
3224c988b8
1 changed files with 23 additions and 0 deletions
|
@ -61,6 +61,29 @@
|
|||
document.getElementById("loading").remove();
|
||||
};
|
||||
|
||||
// Apply user theme as soon as possible, before any other code loads
|
||||
// This prevents flash of white while other code loads and socket connects
|
||||
try {
|
||||
const userSettings = JSON.parse(localStorage.getItem("settings"));
|
||||
const themeEl = document.getElementById("theme");
|
||||
|
||||
if (
|
||||
typeof userSettings.theme === "string" &&
|
||||
themeEl.dataset.serverTheme !== userSettings.theme
|
||||
) {
|
||||
themeEl.attributes.href.value = `themes/${userSettings.theme}.css`;
|
||||
}
|
||||
|
||||
if (
|
||||
typeof userSettings.userStyles === "string" &&
|
||||
!/[?&]nocss/.test(window.location.search)
|
||||
) {
|
||||
document.getElementById("user-specified-css").innerHTML = userSettings.userStyles;
|
||||
}
|
||||
} catch (e) {
|
||||
//
|
||||
}
|
||||
|
||||
// Trigger early service worker registration
|
||||
if ("serviceWorker" in navigator) {
|
||||
navigator.serviceWorker.register("service-worker.js");
|
||||
|
|
Loading…
Reference in a new issue