summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp12
-rw-r--r--Source/WebKit2/UIProcess/qt/QtWebPageEventHandler.cpp3
2 files changed, 8 insertions, 7 deletions
diff --git a/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp b/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp
index 61f2aaf57..6351555cf 100644
--- a/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp
+++ b/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp
@@ -449,7 +449,7 @@ void PageViewportControllerClientQt::pinchGestureStarted(const QPointF& pinchCen
// This can only happen as a result of a user interaction.
ASSERT(m_controller->hadUserInteraction());
- if (!m_controller->allowsUserScaling())
+ if (!m_controller->allowsUserScaling() || !m_viewportItem->isInteractive())
return;
clearRelativeZoomState();
@@ -461,11 +461,10 @@ void PageViewportControllerClientQt::pinchGestureStarted(const QPointF& pinchCen
void PageViewportControllerClientQt::pinchGestureRequestUpdate(const QPointF& pinchCenterInViewportCoordinates, qreal totalScaleFactor)
{
- ASSERT(m_scaleChange.inProgress());
-
- if (!m_controller->allowsUserScaling())
+ if (!m_controller->allowsUserScaling() || !m_viewportItem->isInteractive())
return;
+ ASSERT(m_scaleChange.inProgress());
ASSERT(m_pinchStartScale > 0);
// Changes of the center position should move the page even if the zoom factor does not change.
const qreal pinchScale = m_pinchStartScale * totalScaleFactor;
@@ -483,11 +482,10 @@ void PageViewportControllerClientQt::pinchGestureRequestUpdate(const QPointF& pi
void PageViewportControllerClientQt::pinchGestureEnded()
{
- ASSERT(m_scaleChange.inProgress());
-
- if (!m_controller->allowsUserScaling())
+ if (m_pinchStartScale < 0)
return;
+ ASSERT(m_scaleChange.inProgress());
m_pinchStartScale = -1;
// This will take care of resuming the content, even if no animation was performed.
diff --git a/Source/WebKit2/UIProcess/qt/QtWebPageEventHandler.cpp b/Source/WebKit2/UIProcess/qt/QtWebPageEventHandler.cpp
index 93f759f60..8176ed1cd 100644
--- a/Source/WebKit2/UIProcess/qt/QtWebPageEventHandler.cpp
+++ b/Source/WebKit2/UIProcess/qt/QtWebPageEventHandler.cpp
@@ -271,6 +271,9 @@ void QtWebPageEventHandler::handleSingleTapEvent(const QTouchEvent::TouchPoint&
void QtWebPageEventHandler::handleDoubleTapEvent(const QTouchEvent::TouchPoint& point)
{
+ if (!m_webView->isInteractive())
+ return;
+
deactivateTapHighlight();
QTransform fromItemTransform = m_webPage->transformFromItem();
m_webPageProxy->findZoomableAreaForPoint(fromItemTransform.map(point.pos()).toPoint(), IntSize(point.rect().size().toSize()));