EPG: WebView pausieren bei EPG-Overlay, zurueck zu WebView beim Schliessen

This commit is contained in:
administrator 2026-05-12 22:30:34 +02:00
parent c1e832e08d
commit d2eeffd200

View file

@ -761,12 +761,27 @@ public partial class MainWindow : Window
private async void BtnEpgGrid_Click(object sender, RoutedEventArgs e)
{
// WebView pausieren damit EPG-Overlay sichtbar ist
if (_currentChannel?.Kind == ChannelKind.Web && _webViewReady)
{
await WebView.CoreWebView2.ExecuteScriptAsync(
"document.querySelectorAll('video,audio').forEach(m => m.pause())");
WebView.Visibility = Visibility.Collapsed;
VideoView.Visibility = Visibility.Visible;
}
await ShowEpgOverlayAsync();
}
private void BtnCloseEpg_Click(object sender, RoutedEventArgs e)
{
HideEpgOverlay();
// Wenn Web-Sender aktiv: WebView wieder anzeigen
if (_currentChannel?.Kind == ChannelKind.Web)
{
VideoView.Visibility = Visibility.Collapsed;
VideoOverlay.Visibility = Visibility.Collapsed;
WebView.Visibility = Visibility.Visible;
}
}
// ────────── EPG-Overlay (Joyn-Style) ──────────
@ -1108,7 +1123,16 @@ public partial class MainWindow : Window
{
case Key.F11: ToggleFullscreen(); e.Handled = true; break;
case Key.Escape:
if (EpgOverlay.Visibility == Visibility.Visible) HideEpgOverlay();
if (EpgOverlay.Visibility == Visibility.Visible)
{
HideEpgOverlay();
if (_currentChannel?.Kind == ChannelKind.Web)
{
VideoView.Visibility = Visibility.Collapsed;
VideoOverlay.Visibility = Visibility.Collapsed;
WebView.Visibility = Visibility.Visible;
}
}
else if (_isFullscreen) ToggleFullscreen();
e.Handled = true;
break;