Fix pick-theme-row and behavior of default theme mode (#20783)

This commit is contained in:
karwosts 2024-05-24 07:06:22 -07:00 committed by GitHub
parent afc624bf4b
commit 3c3d54243c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 6 deletions

View File

@ -37,6 +37,8 @@ export class HaPickThemeRow extends LitElement {
protected render(): TemplateResult {
const hasThemes =
this.hass.themes.themes && Object.keys(this.hass.themes.themes).length;
const curThemeIsUseDefault = this.hass.selectedTheme?.theme === "";
const curTheme = this.hass.selectedTheme?.theme
? this.hass.selectedTheme?.theme
: this.hass.themes.darkMode
@ -86,6 +88,9 @@ export class HaPickThemeRow extends LitElement {
</ha-select>
</ha-settings-row>
${curTheme === HOME_ASSISTANT_THEME ||
(curThemeIsUseDefault &&
this.hass.themes.default_dark_theme &&
this.hass.themes.default_theme) ||
this._supportsModeSelection(curTheme)
? html` <div class="inputs">
<ha-formfield

View File

@ -84,15 +84,15 @@ export default <T extends Constructor<HassBaseEl>>(superClass: T) =>
}
: this.hass.selectedTheme;
const themeName =
themeSettings?.theme ||
(darkPreferred && this.hass.themes.default_dark_theme
? this.hass.themes.default_dark_theme
: this.hass.themes.default_theme);
let darkMode =
themeSettings?.dark === undefined ? darkPreferred : themeSettings.dark;
const themeName =
themeSettings?.theme ||
(darkMode && this.hass.themes.default_dark_theme
? this.hass.themes.default_dark_theme
: this.hass.themes.default_theme);
const selectedTheme = themeName
? this.hass.themes.themes[themeName]
: undefined;