Diff
Modified: trunk/Source/WebKit2/ChangeLog (111198 => 111199)
--- trunk/Source/WebKit2/ChangeLog 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/ChangeLog 2012-03-19 17:10:17 UTC (rev 111199)
@@ -1,3 +1,31 @@
+2012-03-19 Kenneth Rohde Christiansen <[email protected]>
+
+ Merge _q_commitScaleChange and _q_commitPositionChange
+ https://bugs.webkit.org/show_bug.cgi?id=81511
+
+ Reviewed by Simon Hausmann.
+
+ Both methods were used for notifying WebCore of the new
+ viewport and re-tiling. The methods are merge into
+ _q_contentViewportChanged.
+
+ * UIProcess/API/qt/qquickwebview.cpp:
+ (QQuickWebViewFlickablePrivate::onComponentComplete):
+ (QQuickWebViewFlickablePrivate::updateViewportSize):
+ (QQuickWebViewFlickablePrivate::_q_contentViewportChanged):
+ (QQuickWebViewFlickablePrivate::_q_resume):
+ * UIProcess/API/qt/qquickwebview_p.h:
+ * UIProcess/API/qt/qquickwebview_p_p.h:
+ (QQuickWebViewPrivate::_q_contentViewportChanged):
+ (QQuickWebViewFlickablePrivate):
+ * UIProcess/qt/QtViewportInteractionEngine.cpp:
+ (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
+ (WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
+ (WebKit::QtViewportInteractionEngine::wheelEvent):
+ (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
+ * UIProcess/qt/QtViewportInteractionEngine.h:
+ (QtViewportInteractionEngine):
+
2012-03-19 Allan Sandfeld Jensen <[email protected]>
Select best target for tap gesture.
Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp (111198 => 111199)
--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp 2012-03-19 17:10:17 UTC (rev 111199)
@@ -551,8 +551,7 @@
QObject::connect(interactionEngine.data(), SIGNAL(contentSuspendRequested()), q, SLOT(_q_suspend()));
QObject::connect(interactionEngine.data(), SIGNAL(contentResumeRequested()), q, SLOT(_q_resume()));
- QObject::connect(interactionEngine.data(), SIGNAL(contentWasMoved(const QPointF&)), q, SLOT(_q_commitPositionChange(const QPointF&)));
- QObject::connect(interactionEngine.data(), SIGNAL(contentWasScaled()), q, SLOT(_q_commitScaleChange()));
+ QObject::connect(interactionEngine.data(), SIGNAL(contentViewportChanged(QPointF)), q, SLOT(_q_contentViewportChanged(QPointF)));
_q_resume();
@@ -619,28 +618,15 @@
webPageProxy->setViewportSize(viewportSize);
interactionEngine->applyConstraints(computeViewportConstraints());
- _q_commitScaleChange();
+ _q_contentViewportChanged(QPointF());
}
-void QQuickWebViewFlickablePrivate::_q_commitScaleChange()
+void QQuickWebViewFlickablePrivate::_q_contentViewportChanged(const QPointF& trajectoryVector)
{
- DrawingAreaProxy* drawingArea = webPageProxy->drawingArea();
- if (!drawingArea)
- return;
-
Q_Q(QQuickWebView);
// This is only for our QML ViewportInfo debugging API.
q->experimental()->viewportInfo()->didUpdateCurrentScale();
- const QRect visibleRect(visibleContentsRect());
- float scale = pageView->contentsScale();
-
- drawingArea->setVisibleContentsRect(visibleRect, scale, FloatPoint());
- webPageProxy->setFixedVisibleContentRect(visibleRect);
-}
-
-void QQuickWebViewPrivate::_q_commitPositionChange(const QPointF& trajectoryVector)
-{
DrawingAreaProxy* drawingArea = webPageProxy->drawingArea();
if (!drawingArea)
return;
@@ -671,8 +657,7 @@
postTransitionState->apply();
}
- // FIXME: Revise this.
- _q_commitScaleChange();
+ _q_contentViewportChanged(QPointF());
}
void QQuickWebViewFlickablePrivate::pageDidRequestScroll(const QPoint& pos)
Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h (111198 => 111199)
--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h 2012-03-19 17:10:17 UTC (rev 111199)
@@ -188,8 +188,7 @@
Q_PRIVATE_SLOT(d_func(), void _q_suspend());
Q_PRIVATE_SLOT(d_func(), void _q_resume());
- Q_PRIVATE_SLOT(d_func(), void _q_commitPositionChange(const QPointF&));
- Q_PRIVATE_SLOT(d_func(), void _q_commitScaleChange());
+ Q_PRIVATE_SLOT(d_func(), void _q_contentViewportChanged(const QPointF&));
Q_PRIVATE_SLOT(d_func(), void _q_onVisibleChanged());
Q_PRIVATE_SLOT(d_func(), void _q_onUrlChanged());
Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h (111198 => 111199)
--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h 2012-03-19 17:10:17 UTC (rev 111199)
@@ -88,10 +88,8 @@
virtual void _q_suspend() { }
virtual void _q_resume() { }
+ virtual void _q_contentViewportChanged(const QPointF& trajectory) { };
- virtual void _q_commitScaleChange() { }
- void _q_commitPositionChange(const QPointF&);
-
void _q_onVisibleChanged();
void _q_onUrlChanged();
void _q_onReceivedResponseFromDownload(QWebDownloadItem*);
@@ -198,7 +196,7 @@
virtual void _q_suspend();
virtual void _q_resume();
- virtual void _q_commitScaleChange();
+ virtual void _q_contentViewportChanged(const QPointF& trajectory);
virtual void pageDidRequestScroll(const QPoint& pos);
virtual void didChangeContentsSize(const QSize& newSize);
Modified: trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp (111198 => 111199)
--- trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp 2012-03-19 17:10:17 UTC (rev 111199)
@@ -86,7 +86,7 @@
}
// Make sure that tiles all around the viewport will be requested.
- emit engine->contentWasMoved(QPointF());
+ emit engine->contentViewportChanged(QPointF());
}
private:
@@ -222,7 +222,7 @@
{
QPointF newPosition = m_flickProvider->contentPos();
- emit contentWasMoved(m_lastScrollPosition - newPosition);
+ emit contentViewportChanged(m_lastScrollPosition - newPosition);
m_lastScrollPosition = newPosition;
}
@@ -279,7 +279,7 @@
QPointF newPosition = -boundPosition(endPosRange.topLeft(), newPos, endPosRange.bottomRight());
m_flickProvider->setContentPos(newPosition);
- emit contentWasMoved(currentPosition - newPosition);
+ emit contentViewportChanged(currentPosition - newPosition);
}
void QtViewportInteractionEngine::pagePositionRequest(const QPoint& pagePosition)
@@ -528,7 +528,7 @@
m_pinchStartScale = m_content->contentsScale();
// Reset the tiling look-ahead vector so that tiles all around the viewport will be requested on pinch-end.
- emit contentWasMoved(QPointF());
+ emit contentViewportChanged(QPointF());
}
void QtViewportInteractionEngine::pinchGestureRequestUpdate(const QPointF& pinchCenterInViewportCoordinates, qreal totalScaleFactor)
Modified: trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.h (111198 => 111199)
--- trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.h 2012-03-19 17:09:53 UTC (rev 111198)
+++ trunk/Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.h 2012-03-19 17:10:17 UTC (rev 111199)
@@ -104,8 +104,7 @@
void contentSuspendRequested();
void contentResumeRequested();
- void contentWasMoved(const QPointF& trajectoryVector);
- void contentWasScaled();
+ void contentViewportChanged(const QPointF& trajectory = QPointF());
void viewportTrajectoryVectorChanged(const QPointF&);
void visibleContentRectAndScaleChanged();