Isolate publisher return test and use native widget input

This commit is contained in:
evgeny committed 2026-10-20 20:44:42 +02:00
1 parent 2781208361
commit 03e8caf849
2 files changed
+39 -4

No files matched your search

+3 -4
View File
@@ -514,10 +514,9 @@ private slots:
QSignalSpy manage(&grid, &StreamGridWindow::publishRequested);
QTest::mouseClick(preview, Qt::LeftButton); QTRY_COMPARE(manage.count(), 1);
QCOMPARE(manage.at(0).at(0).toULongLong(), group); QCOMPARE(grid.focusedSource(), uint64_t(0));
auto nativeWindows = preview->findChildren<QWindow*>();
DEBUG_INFO(DEBUG_CATEGORY_STREAM, "fixture local preview native_windows=%lld", (long long)nativeWindows.size());
QVERIFY(!nativeWindows.isEmpty());
QTest::mouseClick(nativeWindows.first(), Qt::LeftButton); QTRY_COMPARE(manage.count(), 2);
QVERIFY(grid.windowHandle());
QTest::mouseClick(grid.windowHandle(), Qt::LeftButton, Qt::NoModifier, preview->mapTo(&grid, preview->rect().center()));
QTRY_COMPARE(manage.count(), 2); // Доставка через нативное окно, включая внутренний QWidget поверхности Qt.
snapshot(true);
QPointer<StreamPlayerWindow> remote = grid.findChild<StreamPlayerWindow*>();
QVERIFY(remote); auto* video = remote->findChild<VideoRenderWidget*>(); QVERIFY(video);