From 4a2ef183755d44041ef7de9b09ea080f2bcb3374 Mon Sep 17 00:00:00 2001 From: Aidan Timson Date: Tue, 10 Feb 2026 12:28:48 +0000 Subject: [PATCH] Migrate media browser dialog to wa (#29529) --- .../hui-dialog-web-browser-play-media.ts | 38 +++++++++---------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/src/panels/media-browser/hui-dialog-web-browser-play-media.ts b/src/panels/media-browser/hui-dialog-web-browser-play-media.ts index 79d71d045c..67f3448dfb 100644 --- a/src/panels/media-browser/hui-dialog-web-browser-play-media.ts +++ b/src/panels/media-browser/hui-dialog-web-browser-play-media.ts @@ -2,7 +2,7 @@ import type { CSSResultGroup } from "lit"; import { css, html, LitElement, nothing } from "lit"; import { customElement, property, state } from "lit/decorators"; import { fireEvent } from "../../common/dom/fire_event"; -import { createCloseHeading } from "../../components/ha-dialog"; +import "../../components/ha-wa-dialog"; import "../../components/ha-hls-player"; import { haStyleDialog } from "../../resources/styles"; import type { HomeAssistant } from "../../types"; @@ -14,17 +14,24 @@ export class HuiDialogWebBrowserPlayMedia extends LitElement { @state() private _params?: WebBrowserPlayMediaDialogParams; + @state() private _open = false; + public showDialog(params: WebBrowserPlayMediaDialogParams): void { this._params = params; + this._open = true; } - public closeDialog() { - this._params = undefined; + public closeDialog(): void { + this._open = false; + } + + private _dialogClosed(): void { const img = this.renderRoot.querySelector("img"); if (img) { // Unload streaming images so the connection can be closed img.src = ""; } + this._params = undefined; fireEvent(this, "dialog-closed", { dialog: this.localName }); } @@ -36,15 +43,13 @@ export class HuiDialogWebBrowserPlayMedia extends LitElement { const mediaType = this._params.sourceType.split("/", 1)[0]; return html` - ${mediaType === "audio" ? html` @@ -88,7 +93,7 @@ export class HuiDialogWebBrowserPlayMedia extends LitElement { : html`${this.hass.localize( "ui.components.media-browser.media_not_supported" )}`} - + `; } @@ -96,13 +101,6 @@ export class HuiDialogWebBrowserPlayMedia extends LitElement { return [ haStyleDialog, css` - @media (min-width: 800px) { - ha-dialog { - --mdc-dialog-max-width: 800px; - --mdc-dialog-min-width: 400px; - } - } - video, audio, img {