diff options
Diffstat (limited to 'Source/WebKit2/UIProcess/qt/QtPageClient.cpp')
-rw-r--r-- | Source/WebKit2/UIProcess/qt/QtPageClient.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/Source/WebKit2/UIProcess/qt/QtPageClient.cpp b/Source/WebKit2/UIProcess/qt/QtPageClient.cpp index d5a5f7ece..7737f6529 100644 --- a/Source/WebKit2/UIProcess/qt/QtPageClient.cpp +++ b/Source/WebKit2/UIProcess/qt/QtPageClient.cpp @@ -73,6 +73,16 @@ void QtPageClient::setViewNeedsDisplay(const WebCore::IntRect& rect) QQuickWebViewPrivate::get(m_webView)->setNeedsDisplay(); } +void QtPageClient::didRenderFrame(const WebCore::IntSize& contentsSize, const WebCore::IntRect& coveredRect) +{ + // The viewport has to be notified first so that the viewport position + // is adjusted before the loadVisuallyCommitted() signal. + PageViewportController* pvc = QQuickWebViewPrivate::get(m_webView)->viewportController(); + if (pvc) + pvc->didRenderFrame(contentsSize, coveredRect); + QQuickWebViewPrivate::get(m_webView)->didRenderFrame(); +} + void QtPageClient::pageDidRequestScroll(const IntPoint& pos) { QQuickWebViewPrivate::get(m_webView)->pageDidRequestScroll(pos); @@ -90,7 +100,9 @@ void QtPageClient::didRelaunchProcess() void QtPageClient::didChangeContentsSize(const IntSize& newSize) { - QQuickWebViewPrivate::get(m_webView)->didChangeContentsSize(newSize); + PageViewportController* pvc = QQuickWebViewPrivate::get(m_webView)->viewportController(); + if (pvc) + pvc->didChangeContentsSize(newSize); } void QtPageClient::didChangeViewportProperties(const WebCore::ViewportAttributes& attr) @@ -220,6 +232,13 @@ void QtPageClient::flashBackingStoreUpdates(const Vector<IntRect>&) notImplemented(); } +void QtPageClient::pageTransitionViewportReady() +{ + PageViewportController* pvc = QQuickWebViewPrivate::get(m_webView)->viewportController(); + if (pvc) + pvc->pageTransitionViewportReady(); +} + void QtPageClient::didFindZoomableArea(const IntPoint& target, const IntRect& area) { ASSERT(m_eventHandler); |