diff options
Diffstat (limited to 'src/webengine/api/qquickwebengineview.cpp')
-rw-r--r-- | src/webengine/api/qquickwebengineview.cpp | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index 7fddb16a9..8a426c887 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -482,11 +482,29 @@ void QQuickWebEngineViewPrivate::loadCommitted() m_history->reset(); } -void QQuickWebEngineViewPrivate::loadVisuallyCommitted() +void QQuickWebEngineViewPrivate::didFirstVisuallyNonEmptyPaint() { #if QT_CONFIG(webengine_testsupport) - if (m_testSupport) - Q_EMIT m_testSupport->loadVisuallyCommitted(); + if (m_loadVisuallyCommittedState == NotCommitted) { + m_loadVisuallyCommittedState = DidFirstVisuallyNonEmptyPaint; + } else if (m_loadVisuallyCommittedState == DidFirstCompositorFrameSwap) { + if (m_testSupport) + Q_EMIT m_testSupport->loadVisuallyCommitted(); + m_loadVisuallyCommittedState = NotCommitted; + } +#endif +} + +void QQuickWebEngineViewPrivate::didCompositorFrameSwap() +{ +#if QT_CONFIG(webengine_testsupport) + if (m_loadVisuallyCommittedState == NotCommitted) { + m_loadVisuallyCommittedState = DidFirstCompositorFrameSwap; + } else if (m_loadVisuallyCommittedState == DidFirstVisuallyNonEmptyPaint) { + if (m_testSupport) + Q_EMIT m_testSupport->loadVisuallyCommitted(); + m_loadVisuallyCommittedState = NotCommitted; + } #endif } |