Source/WebCore:
authorzalan@apple.com <zalan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 16 Mar 2019 19:54:18 +0000 (19:54 +0000)
committerzalan@apple.com <zalan@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 16 Mar 2019 19:54:18 +0000 (19:54 +0000)
commit97276747568d879c6b5f88a7926f90a58fbd95fa
tree7525e0183daad2ff3d4de96924e0fd45f3dfdf4e
parent27385c4f359afe8ef4750a346cb3839bdcaacad0
Source/WebCore:
[iOS] Unable to close trending window on naver.com.
https://bugs.webkit.org/show_bug.cgi?id=195842
<rdar://problem/48067338>

This patch issues a synthetic mouse move to the tap location after we decided to hover.
It ensures that the node under the mouse is up-to-date and when a new tap comes in we can
send the mouseout event to the correct node. It fixes the case when the hover content is positioned over
the tap target so that the tap target is no longer "under the mouse".
On desktop this "transition" happens automatically since the mouse is always present.

Reviewed by Simon Fraser.

Tests: fast/events/touch/ios/content-observation/new-content-covers-tap-target.html
       fast/events/touch/ios/content-observation/prevent-default-on-touch-start.html

* page/EventHandler.h:
* page/ios/EventHandlerIOS.mm:
(WebCore::EventHandler::dispatchSyntheticMouseMove):

Source/WebKit:
Unable to close trending window on naver.com.
https://bugs.webkit.org/show_bug.cgi?id=195842
<rdar://problem/48067338>

Reviewed by Simon Fraser.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::dispatchSyntheticMouseMove):
(WebKit::WebPage::handleSyntheticClick):
(WebKit::WebPage::completePendingSyntheticClickForContentChangeObserver):

LayoutTests:
[iOS] Unable to close trending window on naver.com.
https://bugs.webkit.org/show_bug.cgi?id=195842
<rdar://problem/48067338>

Reviewed by Simon Fraser.

* fast/events/touch/ios/content-observation/new-content-covers-tap-target-expected.txt: Added.
* fast/events/touch/ios/content-observation/new-content-covers-tap-target.html: Added.
* fast/events/touch/ios/content-observation/prevent-default-on-touch-start.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@243043 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/fast/events/touch/ios/content-observation/new-content-covers-tap-target-expected.txt [new file with mode: 0644]
LayoutTests/fast/events/touch/ios/content-observation/new-content-covers-tap-target.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/page/EventHandler.h
Source/WebCore/page/ios/EventHandlerIOS.mm
Source/WebKit/ChangeLog
Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm