mirror of
https://git.tt-rss.org/git/tt-rss.git
synced 2025-12-13 14:25:55 +00:00
support night mode when using share by URL
This commit is contained in:
39
js/utility.js
Normal file
39
js/utility.js
Normal file
@@ -0,0 +1,39 @@
|
||||
Event.observe(window, "load", function() {
|
||||
const UtilityJS = {
|
||||
apply_night_mode: function (is_night, link) {
|
||||
console.log("night mode changed to", is_night);
|
||||
|
||||
if (link) {
|
||||
const css_override = is_night ? "themes/night.css" : "css/default.css";
|
||||
|
||||
link.setAttribute("href", css_override + "?" + Date.now());
|
||||
}
|
||||
},
|
||||
setup_night_mode: function() {
|
||||
const mql = window.matchMedia('(prefers-color-scheme: dark)');
|
||||
|
||||
const link = new Element("link", {
|
||||
rel: "stylesheet",
|
||||
id: "theme_auto_css"
|
||||
});
|
||||
|
||||
link.onload = function() {
|
||||
document.querySelector("body").removeClassName("css_loading");
|
||||
};
|
||||
|
||||
try {
|
||||
mql.addEventListener("change", () => {
|
||||
UtilityJS.apply_night_mode(mql.matches, link);
|
||||
});
|
||||
} catch (e) {
|
||||
console.warn("exception while trying to set MQL event listener");
|
||||
}
|
||||
|
||||
document.querySelector("head").appendChild(link);
|
||||
|
||||
UtilityJS.apply_night_mode(mql.matches, link);
|
||||
}
|
||||
};
|
||||
|
||||
UtilityJS.setup_night_mode();
|
||||
});
|
||||
Reference in New Issue
Block a user