When using a preventDefault in a selectstart handler, input nodes on the page will receive focus while the pointer is down and the pointer hovers over the input node. This behavior is reproducible here: https://codepen.io/psant/pen/oQwxgx This behavior is not reproducible in Chrome, Firefox, or Edge Thanks
<rdar://problem/46174389>
Created attachment 355312 [details] Reduction
The problem here is that we keep firing selectstart after the mouse drag had already started when selectstart had been canceled. No other browser does this so we just need to fire it once and set m_mouseDownMayStartSelect to false thereafter.
Created attachment 355325 [details] Fixes the bug
Comment on attachment 355325 [details] Fixes the bug View in context: https://bugs.webkit.org/attachment.cgi?id=355325&action=review > Source/WebCore/ChangeLog:15 > + Fixed the bug by not firing selectstart if the default action ahd been prevented by the initial firing 'had'
Comment on attachment 355325 [details] Fixes the bug Attachment 355325 [details] did not pass ios-sim-ews (ios-simulator-wk2): Output: https://webkit-queues.webkit.org/results/10090007 New failing tests: media/no-fullscreen-when-hidden.html
Created attachment 355354 [details] Archive of layout-test-results from ews125 for ios-simulator-wk2 The attached test failures were seen while running run-webkit-tests on the ios-sim-ews. Bot: ews125 Port: ios-simulator-wk2 Platform: Mac OS X 10.13.6
I don't think the iOS test failure is related to my patch.
Committed r238409: <https://trac.webkit.org/changeset/238409>
Mass move bugs into the DOM component.