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