1From 65dce9bd2fc22cef26460a834ca770982322fda9 Mon Sep 17 00:00:00 2001 2From: Jeffy Chen <jeffy.chen@rock-chips.com> 3Date: Mon, 18 Oct 2021 16:10:11 +0800 4Subject: [PATCH 15/17] gsttools: videowidget: Reflush window handle even it's 5 unchanged 6 7To avoid losing video after hide() and show(). 8 9Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 10--- 11 src/gsttools/qgstreamervideowidget.cpp | 7 ++----- 12 1 file changed, 2 insertions(+), 5 deletions(-) 13 14diff --git a/src/gsttools/qgstreamervideowidget.cpp b/src/gsttools/qgstreamervideowidget.cpp 15index f082bec..878702c 100644 16--- a/src/gsttools/qgstreamervideowidget.cpp 17+++ b/src/gsttools/qgstreamervideowidget.cpp 18@@ -187,11 +187,8 @@ void QGstreamerVideoWidgetControl::onNativeVideoSizeChanged() 19 bool QGstreamerVideoWidgetControl::eventFilter(QObject *object, QEvent *e) 20 { 21 if (m_widget && object == m_widget) { 22- if (e->type() == QEvent::ParentChange || e->type() == QEvent::Show || e->type() == QEvent::WinIdChange) { 23- WId newWId = m_widget->videoWinId(); 24- if (newWId != m_windowId) 25- m_videoOverlay.setWindowHandle(m_windowId = newWId); 26- } 27+ if (e->type() == QEvent::ParentChange || e->type() == QEvent::Show || e->type() == QEvent::WinIdChange) 28+ m_videoOverlay.setWindowHandle(m_windowId = m_widget->videoWinId()); 29 30 if (e->type() == QEvent::Paint) { 31 // Update overlay by new size if any. 32-- 332.20.1 34 35