diff --git a/src/components/media-player/ha-media-player-browse.ts b/src/components/media-player/ha-media-player-browse.ts index 5c20cf4a0b63..b0024e6acd62 100644 --- a/src/components/media-player/ha-media-player-browse.ts +++ b/src/components/media-player/ha-media-player-browse.ts @@ -31,7 +31,10 @@ import { BROWSER_PLAYER, MediaClassBrowserSettings, } from "../../data/media-player"; -import { browseLocalMediaPlayer } from "../../data/media_source"; +import { + browseLocalMediaPlayer, + resolveMediaSource, +} from "../../data/media_source"; import { isTTSMediaSource } from "../../data/tts"; import { showAlertDialog } from "../../dialogs/generic/show-dialog-box"; import { haStyle } from "../../resources/styles"; @@ -81,7 +84,7 @@ export class HaMediaPlayerBrowse extends LitElement { @property() public action: MediaPlayerBrowseAction = "play"; - @property({ attribute: false }) + @property({ reflect: true, attribute: "preferred-layout" }) public preferredLayout: MediaPlayerLayoutType = "auto"; @property({ type: Boolean }) public dialog = false; @@ -94,6 +97,8 @@ export class HaMediaPlayerBrowse extends LitElement { // @todo Consider reworking to eliminate need for attribute since it is manipulated internally @property({ type: Boolean, reflect: true }) public scrolled = false; + @property({ attribute: false }) public backgroundImage: string | undefined; + @state() private _error?: { message: string; code: string }; @state() private _parentItem?: MediaPlayerItem; @@ -340,10 +345,8 @@ export class HaMediaPlayerBrowse extends LitElement { : MediaClassBrowserSettings.directory; const backgroundImage = currentItem.thumbnail - ? this._getThumbnailURLorBase64(currentItem.thumbnail).then( - (value) => `url(${value})` - ) - : "none"; + ? this._getThumbnailURLorBase64(currentItem.thumbnail) + : undefined; return html` ${ @@ -359,13 +362,14 @@ export class HaMediaPlayerBrowse extends LitElement {