FIX: do not override logo markup when loading page in dark mode
Ensures that when loading the page in dark mode, logo can switch back to light logo if user toggles their OS appearance.
This commit is contained in:
parent
ed0e1e28b4
commit
1a7391a251
|
@ -91,10 +91,11 @@ export default {
|
|||
);
|
||||
|
||||
Session.currentProp(
|
||||
"darkColorScheme",
|
||||
getComputedStyle(document.documentElement)
|
||||
.getPropertyValue("--scheme-type")
|
||||
.trim() === "dark"
|
||||
"defaultColorSchemeIsDark",
|
||||
!window.matchMedia("(prefers-color-scheme: dark)").matches &&
|
||||
getComputedStyle(document.documentElement)
|
||||
.getPropertyValue("--scheme-type")
|
||||
.trim() === "dark"
|
||||
);
|
||||
|
||||
Session.currentProp("highlightJsPath", setupData.highlightJsPath);
|
||||
|
|
|
@ -85,7 +85,7 @@ export default createWidget("home-logo", {
|
|||
// try dark logos first when color scheme is dark
|
||||
// this is independent of browser dark mode
|
||||
// hence the fallback to normal logos
|
||||
if (Session.currentProp("darkColorScheme")) {
|
||||
if (Session.currentProp("defaultColorSchemeIsDark")) {
|
||||
return (
|
||||
siteSettings[`site_${name}_dark_url`] ||
|
||||
siteSettings[`site_${name}_url`] ||
|
||||
|
|
|
@ -202,10 +202,10 @@ widgetTest("dark color scheme and dark logo set", {
|
|||
beforeEach() {
|
||||
this.siteSettings.site_logo_url = bigLogo;
|
||||
this.siteSettings.site_logo_dark_url = darkLogo;
|
||||
Session.currentProp("darkColorScheme", true);
|
||||
Session.currentProp("defaultColorSchemeIsDark", true);
|
||||
},
|
||||
afterEach() {
|
||||
Session.currentProp("darkColorScheme", null);
|
||||
Session.currentProp("defaultColorSchemeIsDark", null);
|
||||
},
|
||||
test(assert) {
|
||||
assert.ok(find("img#site-logo.logo-big").length === 1);
|
||||
|
@ -222,10 +222,10 @@ widgetTest("dark color scheme and dark logo not set", {
|
|||
beforeEach() {
|
||||
this.siteSettings.site_logo_url = bigLogo;
|
||||
this.siteSettings.site_logo_dark_url = "";
|
||||
Session.currentProp("darkColorScheme", true);
|
||||
Session.currentProp("defaultColorSchemeIsDark", true);
|
||||
},
|
||||
afterEach() {
|
||||
Session.currentProp("darkColorScheme", null);
|
||||
Session.currentProp("defaultColorSchemeIsDark", null);
|
||||
},
|
||||
test(assert) {
|
||||
assert.ok(find("img#site-logo.logo-big").length === 1);
|
||||
|
|
Loading…
Reference in New Issue