Files
ersatztv/ErsatzTV/Shared/ChannelPreviewDialog.razor
T
Jason DoveandGitHub 140a663da4 update dependencies (#2003)
* update dependencies

* more dependency updates
2025-04-28 17:20:45 +00:00

62 lines
1.5 KiB
Plaintext

@inject IJSRuntime JsRuntime
@implements IDisposable
<div>
<MudDialog>
<DialogContent>
<media-controller style="width: 800px; height: calc(800px * 9/16)">
<video id="video" slot="media"></video>
<media-control-bar>
<media-mute-button></media-mute-button>
<media-volume-range></media-volume-range>
<media-fullscreen-button></media-fullscreen-button>
</media-control-bar>
</media-controller>
</DialogContent>
<DialogActions>
<MudButton Color="Color.Primary" OnClick="Close">Close</MudButton>
</DialogActions>
</MudDialog>
</div>
@code {
[CascadingParameter]
IMudDialogInstance MudDialog { get; set; }
[Parameter]
public string StreamUri { get; set; }
protected override Task OnParametersSetAsync() => Task.CompletedTask;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
try
{
await JsRuntime.InvokeVoidAsync("previewChannel", StreamUri);
}
catch (Exception)
{
// ignored
}
await base.OnAfterRenderAsync(true);
}
private void Close()
{
MudDialog.Close(DialogResult.Ok(true));
}
public void Dispose()
{
try
{
JsRuntime.InvokeVoidAsync("stopPreview");
}
catch (Exception)
{
// ignore
}
}
}