From d6d5ba5563a406085dfa25fedb79a8e74fac570c Mon Sep 17 00:00:00 2001
|
From: Jeffy Chen <jeffy.chen@rock-chips.com>
|
Date: Mon, 18 Oct 2021 16:10:11 +0800
|
Subject: [PATCH 15/17] gsttools: videowidget: Reflush window handle even it's
|
unchanged
|
|
To avoid losing video after hide() and show().
|
|
Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
|
---
|
src/gsttools/qgstreamervideowidget.cpp | 7 ++-----
|
1 file changed, 2 insertions(+), 5 deletions(-)
|
|
diff --git a/src/gsttools/qgstreamervideowidget.cpp b/src/gsttools/qgstreamervideowidget.cpp
|
index 931b24d0..390b36b6 100644
|
--- a/src/gsttools/qgstreamervideowidget.cpp
|
+++ b/src/gsttools/qgstreamervideowidget.cpp
|
@@ -186,11 +186,8 @@ void QGstreamerVideoWidgetControl::onNativeVideoSizeChanged()
|
bool QGstreamerVideoWidgetControl::eventFilter(QObject *object, QEvent *e)
|
{
|
if (m_widget && object == m_widget) {
|
- if (e->type() == QEvent::ParentChange || e->type() == QEvent::Show || e->type() == QEvent::WinIdChange) {
|
- WId newWId = m_widget->videoWinId();
|
- if (newWId != m_windowId)
|
- m_videoOverlay.setWindowHandle(m_windowId = newWId);
|
- }
|
+ if (e->type() == QEvent::ParentChange || e->type() == QEvent::Show || e->type() == QEvent::WinIdChange)
|
+ m_videoOverlay.setWindowHandle(m_windowId = m_widget->videoWinId());
|
|
if (e->type() == QEvent::Paint) {
|
// Update overlay by new size if any.
|
--
|
2.20.1
|