From 02c8f916901cdb95ceac08e5d90a33842da47d52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Lov=C3=A9n?= Date: Sun, 24 Jul 2022 13:24:17 +0000 Subject: [PATCH] Change frontend setting prioritization --- custom_components/browser_mod/browser_mod.js | 10 ++++++---- custom_components/browser_mod/browser_mod_panel.js | 14 +++++++------- js/config_panel/browser-settings-card.ts | 2 +- js/config_panel/frontend-settings-card.ts | 12 ++++++------ js/plugin/connection.ts | 2 +- js/plugin/frontend-settings.ts | 4 ++-- js/plugin/main.ts | 4 +++- 7 files changed, 26 insertions(+), 22 deletions(-) diff --git a/custom_components/browser_mod/browser_mod.js b/custom_components/browser_mod/browser_mod.js index 1ecf64e..d6f02a3 100644 --- a/custom_components/browser_mod/browser_mod.js +++ b/custom_components/browser_mod/browser_mod.js @@ -464,7 +464,7 @@ const ConnectionMixin = (SuperClass) => { return settings; } get settings() { - return Object.assign(Object.assign(Object.assign({}, this.global_settings), this.user_settings), this.browser_settings); + return Object.assign(Object.assign(Object.assign({}, this.global_settings), this.browser_settings), this.user_settings); } set_setting(key, value, level) { var _a; @@ -1869,8 +1869,8 @@ const AutoSettingsMixin = (SuperClass) => { } // Hide sidebar if (settings.hideSidebar === true) { - selectTree(document.body, "home-assistant$home-assistant-main$app-drawer-layout").then((el) => el.style.setProperty("--app-drawer-width", "0px")); - selectTree(document.body, "home-assistant$home-assistant-main$app-drawer-layout app-drawer").then((el) => el.remove()); + selectTree(document.body, "home-assistant$home-assistant-main$app-drawer-layout").then((el) => { var _a; return (_a = el === null || el === void 0 ? void 0 : el.style) === null || _a === void 0 ? void 0 : _a.setProperty("--app-drawer-width", "0px"); }); + selectTree(document.body, "home-assistant$home-assistant-main$app-drawer-layout app-drawer").then((el) => { var _a; return (_a = el === null || el === void 0 ? void 0 : el.remove) === null || _a === void 0 ? void 0 : _a.call(el); }); } // Hide header if (settings.hideHeader === true) { @@ -2014,7 +2014,7 @@ const BrowserIDMixin = (SuperClass) => { x navigate - lovelace-reload? x window-reload - - screensaver + - screensaver ? x sequence x delay x javascript eval @@ -2036,6 +2036,8 @@ const BrowserIDMixin = (SuperClass) => { - Video player? - Media_seek - Screensavers + - IMPORTANT: FIX DEFAULT HIDING OF ENTITIES + - Check functionality with CAST - may need to add frontend part as a lovelace resource */ class BrowserMod extends ServicesMixin(PopupMixin(ActivityMixin(BrowserStateMixin(CameraMixin(MediaPlayerMixin(ScreenSaverMixin(AutoSettingsMixin(FullyMixin(RequireInteractMixin(ConnectionMixin(BrowserIDMixin(EventTarget)))))))))))) { constructor() { diff --git a/custom_components/browser_mod/browser_mod_panel.js b/custom_components/browser_mod/browser_mod_panel.js index 33772c9..05fb8c9 100644 --- a/custom_components/browser_mod/browser_mod_panel.js +++ b/custom_components/browser_mod/browser_mod_panel.js @@ -158,7 +158,7 @@ class BrowserModRegisteredBrowsersCard$1 extends s {
- Enable + Register Enable this browser as a Device in Home Assistant @@ -419,9 +419,9 @@ class BrowserModFrontendSettingsCard extends s { this._selectedTab = parseInt(ev.detail.index, 10); } render() { - const level = ["browser", "user", "global"][this._selectedTab]; + const level = ["user", "browser", "global"][this._selectedTab]; return $ ` - +

@@ -445,10 +445,10 @@ class BrowserModFrontendSettingsCard extends s { .activeIndex=${this._selectedTab} @MDCTabBar:activated=${this._handleSwitchTab} > - - + + @@ -459,9 +459,9 @@ class BrowserModFrontendSettingsCard extends s { } _render_settings(level) { const global = window.browser_mod.global_settings; - const user = window.browser_mod.user_settings; const browser = window.browser_mod.browser_settings; - const current = { global, user, browser }[level]; + const user = window.browser_mod.user_settings; + const current = { global, browser, user }[level]; const DESC_BOOLEAN = (val) => ({ true: "Enabled", false: "Disabled", undefined: "Unset" }[String(val)]); const DESC_SET_UNSET = (val) => (val === undefined ? "Unset" : "Set"); const OVERRIDDEN = (key) => { diff --git a/js/config_panel/browser-settings-card.ts b/js/config_panel/browser-settings-card.ts index 53fb3f4..032644b 100644 --- a/js/config_panel/browser-settings-card.ts +++ b/js/config_panel/browser-settings-card.ts @@ -58,7 +58,7 @@ class BrowserModRegisteredBrowsersCard extends LitElement {

- Enable + Register Enable this browser as a Device in Home Assistant diff --git a/js/config_panel/frontend-settings-card.ts b/js/config_panel/frontend-settings-card.ts index caf53f2..4782d3f 100644 --- a/js/config_panel/frontend-settings-card.ts +++ b/js/config_panel/frontend-settings-card.ts @@ -23,9 +23,9 @@ class BrowserModFrontendSettingsCard extends LitElement { } render() { - const level = ["browser", "user", "global"][this._selectedTab]; + const level = ["user", "browser", "global"][this._selectedTab]; return html` - +

@@ -49,10 +49,10 @@ class BrowserModFrontendSettingsCard extends LitElement { .activeIndex=${this._selectedTab} @MDCTabBar:activated=${this._handleSwitchTab} > - - + + @@ -64,9 +64,9 @@ class BrowserModFrontendSettingsCard extends LitElement { _render_settings(level) { const global = window.browser_mod.global_settings; - const user = window.browser_mod.user_settings; const browser = window.browser_mod.browser_settings; - const current = { global, user, browser }[level]; + const user = window.browser_mod.user_settings; + const current = { global, browser, user }[level]; const DESC_BOOLEAN = (val) => ({ true: "Enabled", false: "Disabled", undefined: "Unset" }[String(val)]); diff --git a/js/plugin/connection.ts b/js/plugin/connection.ts index eedc017..ebcfb1b 100644 --- a/js/plugin/connection.ts +++ b/js/plugin/connection.ts @@ -145,8 +145,8 @@ export const ConnectionMixin = (SuperClass) => { get settings() { return { ...this.global_settings, - ...this.user_settings, ...this.browser_settings, + ...this.user_settings, }; } diff --git a/js/plugin/frontend-settings.ts b/js/plugin/frontend-settings.ts index 997280f..eccb9ed 100644 --- a/js/plugin/frontend-settings.ts +++ b/js/plugin/frontend-settings.ts @@ -48,11 +48,11 @@ export const AutoSettingsMixin = (SuperClass) => { selectTree( document.body, "home-assistant$home-assistant-main$app-drawer-layout" - ).then((el) => el.style.setProperty("--app-drawer-width", "0px")); + ).then((el) => el?.style?.setProperty("--app-drawer-width", "0px")); selectTree( document.body, "home-assistant$home-assistant-main$app-drawer-layout app-drawer" - ).then((el) => el.remove()); + ).then((el) => el?.remove?.()); } // Hide header diff --git a/js/plugin/main.ts b/js/plugin/main.ts index b1a5ad6..b5af80c 100644 --- a/js/plugin/main.ts +++ b/js/plugin/main.ts @@ -42,7 +42,7 @@ import { BrowserIDMixin } from "./browserID"; x navigate - lovelace-reload? x window-reload - - screensaver + - screensaver ? x sequence x delay x javascript eval @@ -64,6 +64,8 @@ import { BrowserIDMixin } from "./browserID"; - Video player? - Media_seek - Screensavers + - IMPORTANT: FIX DEFAULT HIDING OF ENTITIES + - Check functionality with CAST - may need to add frontend part as a lovelace resource */ export class BrowserMod extends ServicesMixin( PopupMixin(