Index: Source/core/input/EventHandler.cpp |
diff --git a/Source/core/input/EventHandler.cpp b/Source/core/input/EventHandler.cpp |
index 6576d80a2cda5b3473038540772187d121609094..c0b83918d6846fb726df0f10f6e43294b4b6c6ba 100644 |
--- a/Source/core/input/EventHandler.cpp |
+++ b/Source/core/input/EventHandler.cpp |
@@ -2115,8 +2115,13 @@ bool EventHandler::handleGestureTap(const GestureEventWithHitTestResults& target |
bool swallowed = swallowMouseDownEvent | swallowMouseUpEvent | swallowClickEvent; |
if (!swallowed && tappedNode && m_frame->page()) { |
- bool domTreeChanged = preDispatchDomTreeVersion != m_frame->document()->domTreeVersion(); |
- bool styleChanged = preDispatchStyleVersion != m_frame->document()->styleVersion(); |
+ Document* document = m_frame->document(); |
+ bool domTreeChanged = preDispatchDomTreeVersion != document->domTreeVersion(); |
+ bool styleChanged = preDispatchStyleVersion != document->styleVersion(); |
+ if (!styleChanged) { |
+ if (Element* documentElement = document->documentElement()) |
+ styleChanged = documentElement->childNeedsStyleInvalidation(); |
Eric Willigers
2015/08/31 06:40:43
WebViewTest.ShowUnhandledTapUIIfNeededWithMutateSt
|
+ } |
IntPoint tappedPositionInViewport = m_frame->page()->frameHost().visualViewport().rootFrameToViewport(tappedPosition); |
m_frame->chromeClient().showUnhandledTapUIIfNeeded(tappedPositionInViewport, tappedNode.get(), domTreeChanged || styleChanged); |