Changeset 181907 in webkit
- Timestamp:
- Mar 24, 2015, 2:31:28 PM (10 years ago)
- Location:
- trunk
- Files:
-
- 3 added
- 37 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r181904 r181907 1 2015-03-24 Beth Dakin <bdakin@apple.com> 2 3 Add events related to force click gesture 4 https://bugs.webkit.org/show_bug.cgi?id=142836 5 -and corresponding- 6 rdar://problem/20210239 7 8 Reviewed by Dean Jackson. 9 10 * fast/dom/event-handler-attributes-expected.txt: 11 * fast/dom/event-handler-attributes.html: 12 * platform/mac/js/dom/global-constructors-attributes-expected.txt: 13 1 14 2015-03-24 Chris Dumez <cdumez@apple.com> 2 15 -
trunk/LayoutTests/fast/dom/event-handler-attributes-expected.txt
r181507 r181907 89 89 PASS testScriptAttribute(window, "webkitanimationstart") is "window" 90 90 PASS testScriptAttribute(window, "webkitdeviceproximity") is "window" 91 PASS testScriptAttribute(window, "webkitmouseforcecancelled") is "window" 92 PASS testScriptAttribute(window, "webkitmouseforcechanged") is "window" 93 PASS testScriptAttribute(window, "webkitmouseforceclick") is "window" 94 PASS testScriptAttribute(window, "webkitmouseforcedown") is "window" 95 PASS testScriptAttribute(window, "webkitmouseforceup") is "window" 96 PASS testScriptAttribute(window, "webkitmouseforcewillbegin") is "window" 91 97 PASS testScriptAttribute(window, "webkittransitionend") is "window" 92 98 PASS testScriptAttribute(window, "webkitwillrevealbottom") is "window" … … 178 184 PASS testScriptAttribute(document, "touchmove") is "document" 179 185 PASS testScriptAttribute(document, "touchstart") is "document" 186 PASS testScriptAttribute(document, "webkitmouseforcecancelled") is "document" 187 PASS testScriptAttribute(document, "webkitmouseforcechanged") is "document" 188 PASS testScriptAttribute(document, "webkitmouseforceclick") is "document" 189 PASS testScriptAttribute(document, "webkitmouseforcedown") is "document" 190 PASS testScriptAttribute(document, "webkitmouseforceup") is "document" 191 PASS testScriptAttribute(document, "webkitmouseforcewillbegin") is "document" 180 192 PASS testScriptAttribute(document, "webkitfullscreenchange") is "document" 181 193 PASS testScriptAttribute(document, "webkitfullscreenerror") is "document" … … 336 348 PASS testElementAttribute(element, "webkitkeyerror") is "target" 337 349 PASS testElementAttribute(element, "webkitkeymessage") is "target" 350 PASS testElementAttribute(element, "webkitmouseforcecancelled") is "target" 351 PASS testElementAttribute(element, "webkitmouseforcechanged") is "target" 352 PASS testElementAttribute(element, "webkitmouseforceclick") is "target" 353 PASS testElementAttribute(element, "webkitmouseforcedown") is "target" 354 PASS testElementAttribute(element, "webkitmouseforceup") is "target" 355 PASS testElementAttribute(element, "webkitmouseforcewillbegin") is "target" 338 356 PASS testElementAttribute(element, "webkitneedkey") is "target" 339 357 PASS testElementAttribute(element, "webkitplaybacktargetavailabilitychanged") is "target" … … 458 476 PASS testElementAttribute(inputElement, "webkitkeyerror") is "target" 459 477 PASS testElementAttribute(inputElement, "webkitkeymessage") is "target" 478 PASS testElementAttribute(inputElement, "webkitmouseforcecancelled") is "target" 479 PASS testElementAttribute(inputElement, "webkitmouseforcechanged") is "target" 480 PASS testElementAttribute(inputElement, "webkitmouseforceclick") is "target" 481 PASS testElementAttribute(inputElement, "webkitmouseforcedown") is "target" 482 PASS testElementAttribute(inputElement, "webkitmouseforceup") is "target" 483 PASS testElementAttribute(inputElement, "webkitmouseforcewillbegin") is "target" 460 484 PASS testElementAttribute(inputElement, "webkitneedkey") is "target" 461 485 PASS testElementAttribute(inputElement, "webkitplaybacktargetavailabilitychanged") is "target" … … 580 604 PASS testElementAttribute(audioElement, "webkitkeyerror") is "target" 581 605 PASS testElementAttribute(audioElement, "webkitkeymessage") is "target" 606 PASS testElementAttribute(audioElement, "webkitmouseforcecancelled") is "target" 607 PASS testElementAttribute(audioElement, "webkitmouseforcechanged") is "target" 608 PASS testElementAttribute(audioElement, "webkitmouseforceclick") is "target" 609 PASS testElementAttribute(audioElement, "webkitmouseforcedown") is "target" 610 PASS testElementAttribute(audioElement, "webkitmouseforceup") is "target" 611 PASS testElementAttribute(audioElement, "webkitmouseforcewillbegin") is "target" 582 612 PASS testElementAttribute(audioElement, "webkitneedkey") is "target" 583 613 PASS testElementAttribute(audioElement, "webkitplaybacktargetavailabilitychanged") is "target" … … 702 732 PASS testElementAttribute(videoElement, "webkitkeyerror") is "target" 703 733 PASS testElementAttribute(videoElement, "webkitkeymessage") is "target" 734 PASS testElementAttribute(videoElement, "webkitmouseforcecancelled") is "target" 735 PASS testElementAttribute(videoElement, "webkitmouseforcechanged") is "target" 736 PASS testElementAttribute(videoElement, "webkitmouseforceclick") is "target" 737 PASS testElementAttribute(videoElement, "webkitmouseforcedown") is "target" 738 PASS testElementAttribute(videoElement, "webkitmouseforceup") is "target" 739 PASS testElementAttribute(videoElement, "webkitmouseforcewillbegin") is "target" 704 740 PASS testElementAttribute(videoElement, "webkitneedkey") is "target" 705 741 PASS testElementAttribute(videoElement, "webkitplaybacktargetavailabilitychanged") is "target" … … 756 792 PASS testElementAttribute(bodyElement, "storage") is "window" 757 793 PASS testElementAttribute(bodyElement, "unload") is "window" 794 PASS testElementAttribute(bodyElement, "webkitmouseforcecancelled") is "window" 795 PASS testElementAttribute(bodyElement, "webkitmouseforcechanged") is "window" 796 PASS testElementAttribute(bodyElement, "webkitmouseforceclick") is "window" 797 PASS testElementAttribute(bodyElement, "webkitmouseforcedown") is "window" 798 PASS testElementAttribute(bodyElement, "webkitmouseforceup") is "window" 799 PASS testElementAttribute(bodyElement, "webkitmouseforcewillbegin") is "window" 758 800 PASS testElementAttribute(bodyElement, "webkitwillrevealbottom") is "window" 759 801 PASS testElementAttribute(bodyElement, "webkitwillrevealleft") is "window" … … 884 926 PASS testElementAttribute(framesetElement, "storage") is "window" 885 927 PASS testElementAttribute(framesetElement, "unload") is "window" 928 FAIL testElementAttribute(framesetElement, "webkitmouseforcecancelled") should be window. Was script: target; content: window. 929 FAIL testElementAttribute(framesetElement, "webkitmouseforcechanged") should be window. Was script: target; content: window. 930 FAIL testElementAttribute(framesetElement, "webkitmouseforceclick") should be window. Was script: target; content: window. 931 FAIL testElementAttribute(framesetElement, "webkitmouseforcedown") should be window. Was script: target; content: window. 932 FAIL testElementAttribute(framesetElement, "webkitmouseforceup") should be window. Was script: target; content: window. 933 FAIL testElementAttribute(framesetElement, "webkitmouseforcewillbegin") should be window. Was script: target; content: window. 886 934 PASS testElementAttribute(framesetElement, "webkitwillrevealbottom") is "window" 887 935 PASS testElementAttribute(framesetElement, "webkitwillrevealleft") is "window" … … 1080 1128 PASS testElementAttribute(rectElement, "webkitkeyerror") is "target" 1081 1129 PASS testElementAttribute(rectElement, "webkitkeymessage") is "target" 1130 PASS testElementAttribute(rectElement, "webkitmouseforcecancelled") is "target" 1131 PASS testElementAttribute(rectElement, "webkitmouseforcechanged") is "target" 1132 PASS testElementAttribute(rectElement, "webkitmouseforceclick") is "target" 1133 PASS testElementAttribute(rectElement, "webkitmouseforcedown") is "target" 1134 PASS testElementAttribute(rectElement, "webkitmouseforceup") is "target" 1135 PASS testElementAttribute(rectElement, "webkitmouseforcewillbegin") is "target" 1082 1136 PASS testElementAttribute(rectElement, "webkitneedkey") is "target" 1083 1137 PASS testElementAttribute(rectElement, "webkitplaybacktargetavailabilitychanged") is "target" … … 1223 1277 FAIL testElementAttribute(nonHTMLElement, "webkitkeyerror") should be none. Was script: target; content: none. 1224 1278 FAIL testElementAttribute(nonHTMLElement, "webkitkeymessage") should be none. Was script: target; content: none. 1279 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcecancelled") should be none. Was script: target; content: none. 1280 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcechanged") should be none. Was script: target; content: none. 1281 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforceclick") should be none. Was script: target; content: none. 1282 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcedown") should be none. Was script: target; content: none. 1283 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforceup") should be none. Was script: target; content: none. 1284 FAIL testElementAttribute(nonHTMLElement, "webkitmouseforcewillbegin") should be none. Was script: target; content: none. 1225 1285 FAIL testElementAttribute(nonHTMLElement, "webkitneedkey") should be none. Was script: target; content: none. 1226 1286 FAIL testElementAttribute(nonHTMLElement, "webkitplaybacktargetavailabilitychanged") should be none. Was script: target; content: none. -
trunk/LayoutTests/fast/dom/event-handler-attributes.html
r181507 r181907 97 97 "webkitanimationstart", 98 98 "webkitdeviceproximity", 99 "webkitmouseforcecancelled", 100 "webkitmouseforcechanged", 101 "webkitmouseforceclick", 102 "webkitmouseforcedown", 103 "webkitmouseforceup", 104 "webkitmouseforcewillbegin", 99 105 "webkittransitionend", 100 106 "webkitwillrevealbottom", … … 156 162 "touchmove", 157 163 "touchstart", 164 "webkitmouseforcecancelled", 165 "webkitmouseforcechanged", 166 "webkitmouseforceclick", 167 "webkitmouseforcedown", 168 "webkitmouseforceup", 169 "webkitmouseforcewillbegin", 158 170 "webkitfullscreenchange", 159 171 "webkitfullscreenerror", … … 252 264 "webkitkeyerror", 253 265 "webkitkeymessage", 266 "webkitmouseforcecancelled", 267 "webkitmouseforcechanged", 268 "webkitmouseforceclick", 269 "webkitmouseforcedown", 270 "webkitmouseforceup", 271 "webkitmouseforcewillbegin", 254 272 "webkitneedkey", 255 273 "webkitplaybacktargetavailabilitychanged", … … 282 300 "storage", 283 301 "unload", 302 "webkitmouseforcecancelled", 303 "webkitmouseforcechanged", 304 "webkitmouseforceclick", 305 "webkitmouseforcedown", 306 "webkitmouseforceup", 307 "webkitmouseforcewillbegin", 284 308 "webkitwillrevealbottom", 285 309 "webkitwillrevealleft", -
trunk/LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt
r180616 r181907 2019 2019 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMediaKeys').enumerable is false 2020 2020 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMediaKeys').configurable is true 2021 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMouseForceChangedEvent').value is WebKitMouseForceChangedEvent 2022 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMouseForceChangedEvent').hasOwnProperty('get') is false 2023 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMouseForceChangedEvent').hasOwnProperty('set') is false 2024 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMouseForceChangedEvent').enumerable is false 2025 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMouseForceChangedEvent').configurable is true 2021 2026 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMutationObserver').value is WebKitMutationObserver 2022 2027 PASS Object.getOwnPropertyDescriptor(global, 'WebKitMutationObserver').hasOwnProperty('get') is false -
trunk/Source/WTF/ChangeLog
r181887 r181907 1 2015-03-24 Beth Dakin <bdakin@apple.com> 2 3 Add events related to force click gesture 4 https://bugs.webkit.org/show_bug.cgi?id=142836 5 -and corresponding- 6 rdar://problem/20210239 7 8 Reviewed by Dean Jackson. 9 10 New enable flag for the events. 11 * wtf/FeatureDefines.h: 12 1 13 2015-03-23 Filip Pizlo <fpizlo@apple.com> 2 14 -
trunk/Source/WTF/wtf/FeatureDefines.h
r181618 r181907 570 570 #endif 571 571 572 #if !defined(ENABLE_MOUSE_FORCE_EVENTS) 573 #define ENABLE_MOUSE_FORCE_EVENTS 1 574 #endif 575 572 576 #if !defined(ENABLE_NAVIGATOR_CONTENT_UTILS) 573 577 #define ENABLE_NAVIGATOR_CONTENT_UTILS 0 -
trunk/Source/WebCore/CMakeLists.txt
r181629 r181907 428 428 dom/UIEvent.idl 429 429 dom/WebKitAnimationEvent.idl 430 dom/WebKitMouseForceEvent.idl 430 431 dom/WebKitNamedFlow.idl 431 432 dom/WebKitTransitionEvent.idl … … 1453 1454 dom/VisitedLinkState.cpp 1454 1455 dom/WebKitAnimationEvent.cpp 1456 dom/WebKitMouseForceEvent.cpp 1455 1457 dom/WebKitNamedFlow.cpp 1456 1458 dom/WebKitTransitionEvent.cpp -
trunk/Source/WebCore/ChangeLog
r181906 r181907 1 2015-03-24 Beth Dakin <bdakin@apple.com> 2 3 Add events related to force click gesture 4 https://bugs.webkit.org/show_bug.cgi?id=142836 5 -and corresponding- 6 rdar://problem/20210239 7 8 Reviewed by Dean Jackson. 9 10 This patch adds six new events for the force click gesture: 11 12 webkitmouseforcewillbegin -> Event is sent just before mousedown to indicate that 13 force can be perceived if the user presses any harder. The author should prevent 14 default on this event to both prevent the user agent’s default force click 15 features and to receive the other 5 events. 16 17 webkitmouseforcechanged -> This event fires whenever force changes between the 18 mousedown and mouseup. It is a new type of mouse event that includes a force 19 variable which is a normalized number between 0 (corresponds to click) and 1 20 (corresponds to force click). In this patch, I have only added code to send this 21 event between mousedown and mouseforcedown, but as a followup patch, we plan to 22 send it through mouseup. 23 24 webkitmouseforcecancelled -> If the user releases their finger from the trackpad 25 after pressing hard enough to send webkitmouseforcewillbegin events but not hard 26 enough to force click, this event will be sent to indicate that the user bailed 27 out on the gesture. 28 29 webkitmouseforcedown -> The down part of the force click. 30 31 webkitmouseforceup -> The up part of the force click. This event is added in this 32 patch, but does not yet fire. That is work for a follow-up patch. 33 34 webkitmouseforceclick -> The equivalent of the click event for the force click. 35 Should fire just after webkitmouseforceup. This event is added in this patch, but 36 does not yet fire. That is work for a follow-up patch. 37 38 Add new files for WebKitMouseForceEvent to build systems. 39 * DerivedSources.cpp: 40 * DerivedSources.make: 41 * WebCore.vcxproj/WebCore.vcxproj: 42 * WebCore.vcxproj/WebCore.vcxproj.filters: 43 * WebCore.xcodeproj/project.pbxproj: 44 * WebCore.xcodeproj/project.pbxproj: 45 46 Plumbing for new events. 47 * dom/Document.idl: 48 49 Code to dispatch the new events. Currently the code that calls these functions is 50 in WebKit2. 51 * dom/Element.cpp: 52 (WebCore::Element::dispatchMouseForceWillBegin): 53 (WebCore::Element::dispatchMouseForceChanged): 54 (WebCore::Element::dispatchMouseForceDown): 55 (WebCore::Element::dispatchMouseForceUp): 56 (WebCore::Element::dispatchMouseForceClick): 57 (WebCore::Element::dispatchMouseForceCancelled): 58 * dom/Element.h: 59 60 More plumbing. 61 * dom/Element.idl: 62 * dom/EventNames.h: 63 * dom/EventNames.in: 64 65 Our new type of mouse event that includes force. 66 * dom/WebKitMouseForceEvent.cpp: Added. 67 (WebCore::WebKitMouseForceEventInit::WebKitMouseForceEventInit): 68 (WebCore::WebKitMouseForceEvent::WebKitMouseForceEvent): 69 (WebCore::WebKitMouseForceEvent::~WebKitMouseForceEvent): 70 (WebCore::WebKitMouseForceEvent::eventInterface): 71 * dom/WebKitMouseForceEvent.h: Added. 72 * dom/WebKitMouseForceEvent.idl: Added. 73 74 More plumbing. 75 * html/HTMLAttributeNames.in: 76 * html/HTMLBodyElement.cpp: 77 (WebCore::HTMLBodyElement::createWindowEventHandlerNameMap): 78 * html/HTMLBodyElement.idl: 79 * html/HTMLElement.cpp: 80 (WebCore::HTMLElement::createEventHandlerNameMap): 81 * page/DOMWindow.idl: 82 * page/EventHandler.h: 83 (WebCore::EventHandler::lastMouseDownEvent): 84 1 85 2015-03-24 Anders Carlsson <andersca@apple.com> 2 86 -
trunk/Source/WebCore/DerivedSources.cpp
r180601 r181907 510 510 #include "JSWebKitCSSMatrix.cpp" 511 511 #include "JSWebKitCSSRegionRule.cpp" 512 #include "JSWebKitMouseForceEvent.cpp" 512 513 #include "JSWebKitNamedFlow.cpp" 513 514 #include "JSWebKitPoint.cpp" -
trunk/Source/WebCore/DerivedSources.make
r181291 r181907 314 314 $(WebCore)/dom/UIEvent.idl \ 315 315 $(WebCore)/dom/WebKitAnimationEvent.idl \ 316 $(WebCore)/dom/WebKitMouseForceEvent.idl \ 316 317 $(WebCore)/dom/WebKitNamedFlow.idl \ 317 318 $(WebCore)/dom/WebKitTransitionEvent.idl \ -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
r181574 r181907 6319 6319 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild> 6320 6320 </ClCompile> 6321 <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitMouseForceEvent.cpp"> 6322 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 6323 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> 6324 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild> 6325 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild> 6326 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild> 6327 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild> 6328 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> 6329 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild> 6330 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild> 6331 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild> 6332 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild> 6333 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild> 6334 </ClCompile> 6321 6335 <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitNamedFlow.cpp"> 6322 6336 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> … … 14173 14187 </ClCompile> 14174 14188 <ClCompile Include="..\dom\WebKitAnimationEvent.cpp"> 14189 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 14190 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> 14191 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|Win32'">true</ExcludedFromBuild> 14192 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_WinCairo|x64'">true</ExcludedFromBuild> 14193 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|Win32'">true</ExcludedFromBuild> 14194 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='DebugSuffix|x64'">true</ExcludedFromBuild> 14195 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> 14196 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild> 14197 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|Win32'">true</ExcludedFromBuild> 14198 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_WinCairo|x64'">true</ExcludedFromBuild> 14199 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|Win32'">true</ExcludedFromBuild> 14200 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Production|x64'">true</ExcludedFromBuild> 14201 </ClCompile> 14202 <ClCompile Include="..\dom\WebKitMouseForceEvent.cpp"> 14175 14203 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> 14176 14204 <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> … … 18777 18805 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitCSSRegionRule.h" /> 18778 18806 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitCSSTransformValue.h" /> 18807 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitMouseForceEvent.h" /> 18779 18808 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitNamedFlow.h" /> 18780 18809 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitPoint.h" /> … … 20694 20723 <ClInclude Include="..\dom\ViewportArguments.h" /> 20695 20724 <ClInclude Include="..\dom\WebKitAnimationEvent.h" /> 20725 <ClInclude Include="..\dom\WebKitMouseForceEvent.h" /> 20696 20726 <ClInclude Include="..\dom\WebKitNamedFlow.h" /> 20697 20727 <ClInclude Include="..\dom\WebKitTransitionEvent.h" /> -
trunk/Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
r181571 r181907 3379 3379 <Filter>dom</Filter> 3380 3380 </ClCompile> 3381 <ClCompile Include="..\dom\WebKitMouseForceEvent.cpp"> 3382 <Filter>dom</Filter> 3383 </ClCompile> 3381 3384 <ClCompile Include="..\dom\WebKitNamedFlow.cpp"> 3382 3385 <Filter>dom</Filter> … … 6207 6210 </ClCompile> 6208 6211 <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitCSSTransformValue.cpp"> 6212 <Filter>DerivedSources</Filter> 6213 </ClCompile> 6214 <ClCompile Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitMouseForceEvent.cpp"> 6209 6215 <Filter>DerivedSources</Filter> 6210 6216 </ClCompile> … … 10471 10477 <Filter>dom</Filter> 10472 10478 </ClInclude> 10479 <ClInclude Include="..\dom\WebKitMouseForceEvent.h"> 10480 <Filter>dom</Filter> 10481 </ClInclude> 10473 10482 <ClInclude Include="..\dom\WebKitNamedFlow.h"> 10474 10483 <Filter>dom</Filter> … … 13573 13582 </ClInclude> 13574 13583 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitCSSTransformValue.h"> 13584 <Filter>DerivedSources</Filter> 13585 </ClInclude> 13586 <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\JSWebKitMouseForceEvent.h"> 13575 13587 <Filter>DerivedSources</Filter> 13576 13588 </ClInclude> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r181876 r181907 3417 3417 93CCF0270AF6C52900018E89 /* NavigationAction.h in Headers */ = {isa = PBXBuildFile; fileRef = 93CCF0260AF6C52900018E89 /* NavigationAction.h */; settings = {ATTRIBUTES = (Private, ); }; }; 3418 3418 93CCF0600AF6CA7600018E89 /* NavigationAction.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93CCF05F0AF6CA7600018E89 /* NavigationAction.cpp */; }; 3419 93D200ED1AB8ED090025E851 /* WebKitMouseForceEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93D200EB1AB8ED090025E851 /* WebKitMouseForceEvent.cpp */; }; 3420 93D200EE1AB8ED090025E851 /* WebKitMouseForceEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 93D200EC1AB8ED090025E851 /* WebKitMouseForceEvent.h */; }; 3421 93D200F21AB8F81F0025E851 /* JSWebKitMouseForceEvent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 93D200F01AB8F81F0025E851 /* JSWebKitMouseForceEvent.cpp */; }; 3422 93D200F31AB8F8200025E851 /* JSWebKitMouseForceEvent.h in Headers */ = {isa = PBXBuildFile; fileRef = 93D200F11AB8F81F0025E851 /* JSWebKitMouseForceEvent.h */; }; 3419 3423 93D3C1590F97A9D70053C013 /* DOMHTMLCanvasElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 93D3C1580F97A9D70053C013 /* DOMHTMLCanvasElement.h */; }; 3420 3424 93D3C17D0F97AA760053C013 /* DOMHTMLCanvasElement.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = 93D3C1580F97A9D70053C013 /* DOMHTMLCanvasElement.h */; }; … … 10654 10658 93CCF0260AF6C52900018E89 /* NavigationAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NavigationAction.h; sourceTree = "<group>"; }; 10655 10659 93CCF05F0AF6CA7600018E89 /* NavigationAction.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NavigationAction.cpp; sourceTree = "<group>"; }; 10660 93D200EB1AB8ED090025E851 /* WebKitMouseForceEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebKitMouseForceEvent.cpp; sourceTree = "<group>"; }; 10661 93D200EC1AB8ED090025E851 /* WebKitMouseForceEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitMouseForceEvent.h; sourceTree = "<group>"; }; 10662 93D200EF1AB8ED640025E851 /* WebKitMouseForceEvent.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = WebKitMouseForceEvent.idl; sourceTree = "<group>"; }; 10663 93D200F01AB8F81F0025E851 /* JSWebKitMouseForceEvent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWebKitMouseForceEvent.cpp; sourceTree = "<group>"; }; 10664 93D200F11AB8F81F0025E851 /* JSWebKitMouseForceEvent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWebKitMouseForceEvent.h; sourceTree = "<group>"; }; 10656 10665 93D3C1580F97A9D70053C013 /* DOMHTMLCanvasElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DOMHTMLCanvasElement.h; sourceTree = "<group>"; }; 10657 10666 93D9D53B0DA27E180077216C /* RangeBoundaryPoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RangeBoundaryPoint.h; sourceTree = "<group>"; }; … … 19692 19701 31C0FF390E4CEFAC007D6FE5 /* JSWebKitAnimationEvent.cpp */, 19693 19702 31C0FF3A0E4CEFAC007D6FE5 /* JSWebKitAnimationEvent.h */, 19703 93D200F01AB8F81F0025E851 /* JSWebKitMouseForceEvent.cpp */, 19704 93D200F11AB8F81F0025E851 /* JSWebKitMouseForceEvent.h */, 19694 19705 31C0FF3B0E4CEFAC007D6FE5 /* JSWebKitTransitionEvent.cpp */, 19695 19706 31C0FF3C0E4CEFAC007D6FE5 /* JSWebKitTransitionEvent.h */, … … 23165 23176 31C0FF1C0E4CEB6E007D6FE5 /* WebKitAnimationEvent.h */, 23166 23177 31C0FF1D0E4CEB6E007D6FE5 /* WebKitAnimationEvent.idl */, 23178 93D200EB1AB8ED090025E851 /* WebKitMouseForceEvent.cpp */, 23179 93D200EC1AB8ED090025E851 /* WebKitMouseForceEvent.h */, 23180 93D200EF1AB8ED640025E851 /* WebKitMouseForceEvent.idl */, 23167 23181 D7613A4E1474F13F00DB8606 /* WebKitNamedFlow.cpp */, 23168 23182 D7613A4D1474F13F00DB8606 /* WebKitNamedFlow.h */, … … 24206 24220 BC1A37B6097C715F0019F3D8 /* DOMHTML.h in Headers */, 24207 24221 319848081A1E6CB500A13318 /* DOMAnimationEvent.h in Headers */, 24222 93D200F31AB8F8200025E851 /* JSWebKitMouseForceEvent.h in Headers */, 24208 24223 85DF81270AA7787200486AD7 /* DOMHTMLAnchorElement.h in Headers */, 24209 24224 85E7119B0AC5D5350053270F /* DOMHTMLAnchorElementInternal.h in Headers */, … … 26563 26578 B2227A3C0D00BF220071B782 /* SVGLineElement.h in Headers */, 26564 26579 0810764412828556007C63BA /* SVGListProperty.h in Headers */, 26580 93D200EE1AB8ED090025E851 /* WebKitMouseForceEvent.h in Headers */, 26565 26581 088A0E09126EF1DB00978F7A /* SVGListPropertyTearOff.h in Headers */, 26566 26582 B2227A410D00BF220071B782 /* SVGLocatable.h in Headers */, … … 27491 27507 2EDEF1F3121B0EFC00726DB2 /* BlobData.cpp in Sources */, 27492 27508 E1D31CDC19196020001005A3 /* BlobDataFileReference.cpp in Sources */, 27509 93D200ED1AB8ED090025E851 /* WebKitMouseForceEvent.cpp in Sources */, 27493 27510 E164A2ED191AE6350010737D /* BlobDataFileReferenceMac.mm in Sources */, 27494 27511 E14A94D716DFDF950068DE82 /* BlobRegistry.cpp in Sources */, … … 27518 27535 BCB16C290979C3BD00467741 /* CachedResourceLoader.cpp in Sources */, 27519 27536 5081E3C33CE580C16EF8B48B /* CachedResourceRequest.cpp in Sources */, 27537 93D200F21AB8F81F0025E851 /* JSWebKitMouseForceEvent.cpp in Sources */, 27520 27538 6C638896A96CCEE50C8C946C /* CachedResourceRequestInitiators.cpp in Sources */, 27521 27539 BCB16C230979C3BD00467741 /* CachedScript.cpp in Sources */, -
trunk/Source/WebCore/dom/DOMAllInOne.cpp
r177663 r181907 150 150 #include "VisitedLinkState.cpp" 151 151 #include "WebKitAnimationEvent.cpp" 152 #include "WebKitMouseForceEvent.cpp" 152 153 #include "WebKitNamedFlow.cpp" 153 154 #include "WebKitTransitionEvent.cpp" -
trunk/Source/WebCore/dom/Document.idl
r181657 r181907 297 297 [NotEnumerable] attribute EventHandler onwebkitfullscreenchange; 298 298 [NotEnumerable] attribute EventHandler onwebkitfullscreenerror; 299 [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled; 300 [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged; 301 [NotEnumerable] attribute EventHandler onwebkitmouseforceclick; 302 [NotEnumerable] attribute EventHandler onwebkitmouseforcedown; 303 [NotEnumerable] attribute EventHandler onwebkitmouseforceup; 304 [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin; 299 305 [NotEnumerable] attribute EventHandler onwebkitwillrevealbottom; 300 306 [NotEnumerable] attribute EventHandler onwebkitwillrevealleft; -
trunk/Source/WebCore/dom/Element.cpp
r181898 r181907 79 79 #include "TextIterator.h" 80 80 #include "VoidCallback.h" 81 #include "WebKitMouseForceEvent.h" 81 82 #include "WheelEvent.h" 82 83 #include "XLinkNames.h" … … 2107 2108 } 2108 2109 2110 #if ENABLE(MOUSE_FORCE_EVENTS) 2111 bool Element::dispatchMouseForceWillBegin() 2112 { 2113 Frame* frame = document().frame(); 2114 if (!frame) 2115 return false; 2116 2117 PlatformMouseEvent platformMouseEvent(frame->eventHandler().lastKnownMousePosition(), frame->eventHandler().lastKnownMouseGlobalPosition(), NoButton, PlatformEvent::NoType, 1, false, false, false, false, WTF::currentTime()); 2118 RefPtr<Event> mouseForceWillBeginEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforcewillbeginEvent, 0, platformMouseEvent, document().defaultView()); 2119 mouseForceWillBeginEvent->setTarget(this); 2120 dispatchEvent(mouseForceWillBeginEvent); 2121 2122 if (mouseForceWillBeginEvent->defaultHandled() || mouseForceWillBeginEvent->defaultPrevented()) 2123 return true; 2124 return false; 2125 } 2126 2127 void Element::dispatchMouseForceChanged(float force, const PlatformMouseEvent& platformMouseEvent) 2128 { 2129 RefPtr<WebKitMouseForceEvent> mouseForceChangedEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforcechangedEvent, force, platformMouseEvent, document().defaultView()); 2130 mouseForceChangedEvent->setTarget(this); 2131 dispatchEvent(mouseForceChangedEvent); 2132 } 2133 2134 void Element::dispatchMouseForceDown(const PlatformMouseEvent& platformMouseEvent) 2135 { 2136 RefPtr<Event> mouseForceDownEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforcedownEvent, 1, platformMouseEvent, document().defaultView()); 2137 mouseForceDownEvent->setTarget(this); 2138 dispatchEvent(mouseForceDownEvent); 2139 } 2140 2141 void Element::dispatchMouseForceUp(const PlatformMouseEvent& platformMouseEvent) 2142 { 2143 RefPtr<Event> mouseForceUpEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforceupEvent, 1, platformMouseEvent, document().defaultView()); 2144 mouseForceUpEvent->setTarget(this); 2145 dispatchEvent(mouseForceUpEvent); 2146 } 2147 2148 void Element::dispatchMouseForceClick(const PlatformMouseEvent& platformMouseEvent) 2149 { 2150 RefPtr<Event> mouseForceClickEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforceclickEvent, 1, platformMouseEvent, document().defaultView()); 2151 mouseForceClickEvent->setTarget(this); 2152 dispatchEvent(mouseForceClickEvent); 2153 } 2154 2155 void Element::dispatchMouseForceCancelled(const PlatformMouseEvent& platformMouseEvent) 2156 { 2157 RefPtr<Event> mouseForceCancelledEvent = WebKitMouseForceEvent::create(eventNames().webkitmouseforcecancelledEvent, 0, platformMouseEvent, document().defaultView()); 2158 mouseForceCancelledEvent->setTarget(this); 2159 dispatchEvent(mouseForceCancelledEvent); 2160 } 2161 2162 #else // #if ENABLE(MOUSE_FORCE_EVENTS) 2163 2164 bool Element::dispatchMouseForceWillBegin() 2165 { 2166 return false; 2167 } 2168 2169 void Element::dispatchMouseForceChanged(float, const PlatformMouseEvent&) 2170 { 2171 } 2172 2173 void Element::dispatchMouseForceDown(const PlatformMouseEvent&) 2174 { 2175 } 2176 2177 void Element::dispatchMouseForceUp(const PlatformMouseEvent&) 2178 { 2179 } 2180 2181 void Element::dispatchMouseForceClick(const PlatformMouseEvent&) 2182 { 2183 } 2184 2185 void Element::dispatchMouseForceCancelled(const PlatformMouseEvent&) 2186 { 2187 } 2188 #endif // #if ENABLE(MOUSE_FORCE_EVENTS) 2189 2109 2190 void Element::mergeWithNextTextNode(Text& node, ExceptionCode& ec) 2110 2191 { -
trunk/Source/WebCore/dom/Element.h
r181173 r181907 469 469 virtual void dispatchBlurEvent(RefPtr<Element>&& newFocusedElement); 470 470 471 WEBCORE_EXPORT bool dispatchMouseForceWillBegin(); 472 WEBCORE_EXPORT void dispatchMouseForceChanged(float force, const PlatformMouseEvent&); 473 WEBCORE_EXPORT void dispatchMouseForceDown(const PlatformMouseEvent&); 474 WEBCORE_EXPORT void dispatchMouseForceUp(const PlatformMouseEvent&); 475 WEBCORE_EXPORT void dispatchMouseForceClick(const PlatformMouseEvent&); 476 WEBCORE_EXPORT void dispatchMouseForceCancelled(const PlatformMouseEvent&); 477 471 478 virtual bool willRecalcStyle(Style::Change); 472 479 virtual void didRecalcStyle(Style::Change); -
trunk/Source/WebCore/dom/Element.idl
r181507 r181907 255 255 [NotEnumerable] attribute EventHandler onwebkitkeyerror; 256 256 [NotEnumerable] attribute EventHandler onwebkitkeymessage; 257 [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled; 258 [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged; 259 [NotEnumerable] attribute EventHandler onwebkitmouseforceclick; 260 [NotEnumerable] attribute EventHandler onwebkitmouseforcedown; 261 [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin; 262 [NotEnumerable] attribute EventHandler onwebkitmouseforceup; 257 263 [NotEnumerable] attribute EventHandler onwebkitneedkey; 258 264 [NotEnumerable] attribute EventHandler onwebkitplaybacktargetavailabilitychanged; -
trunk/Source/WebCore/dom/EventNames.h
r181514 r181907 233 233 macro(webkitkeyerror) \ 234 234 macro(webkitkeymessage) \ 235 macro(webkitmouseforcecancelled) \ 236 macro(webkitmouseforcechanged) \ 237 macro(webkitmouseforceclick) \ 238 macro(webkitmouseforcedown) \ 239 macro(webkitmouseforcewillbegin) \ 240 macro(webkitmouseforceup) \ 235 241 macro(webkitneedkey) \ 236 242 macro(webkitnetworkinfochange) \ -
trunk/Source/WebCore/dom/EventNames.in
r180416 r181907 29 29 UIEvents interfaceName=UIEvent 30 30 WebKitAnimationEvent 31 WebKitMouseForceEvent 31 32 WebKitTransitionEvent 32 33 WheelEvent -
trunk/Source/WebCore/html/HTMLAttributeNames.in
r181507 r181907 271 271 onwebkitkeyerror 272 272 onwebkitkeymessage 273 onwebkitmouseforcecancelled 274 onwebkitmouseforcechanged 275 onwebkitmouseforceclick 276 onwebkitmouseforcedown 277 onwebkitmouseforceup 278 onwebkitmouseforcewillbegin 273 279 onwebkitneedkey 274 280 onwebkitsourceclose -
trunk/Source/WebCore/html/HTMLBodyElement.cpp
r181507 r181907 118 118 &onstorageAttr, 119 119 &onunloadAttr, 120 &onwebkitmouseforcecancelledAttr, 121 &onwebkitmouseforcechangedAttr, 122 &onwebkitmouseforceclickAttr, 123 &onwebkitmouseforcedownAttr, 124 &onwebkitmouseforceupAttr, 125 &onwebkitmouseforcewillbeginAttr, 120 126 &onwebkitwillrevealbottomAttr, 121 127 &onwebkitwillrevealleftAttr, -
trunk/Source/WebCore/html/HTMLBodyElement.idl
r181507 r181907 46 46 [NotEnumerable, WindowEventHandler] attribute EventHandler onstorage; 47 47 [NotEnumerable, WindowEventHandler] attribute EventHandler onunload; 48 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcecancelled; 49 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcechanged; 50 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforceclick; 51 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcedown; 52 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforcewillbegin; 53 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitmouseforceup; 48 54 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealbottom; 49 55 [NotEnumerable, WindowEventHandler] attribute EventHandler onwebkitwillrevealleft; -
trunk/Source/WebCore/html/HTMLElement.cpp
r181507 r181907 339 339 &onwebkitkeyerrorAttr, 340 340 &onwebkitkeymessageAttr, 341 &onwebkitmouseforcecancelledAttr, 342 &onwebkitmouseforcechangedAttr, 343 &onwebkitmouseforceclickAttr, 344 &onwebkitmouseforcedownAttr, 345 &onwebkitmouseforcewillbeginAttr, 346 &onwebkitmouseforceupAttr, 341 347 &onwebkitneedkeyAttr, 342 348 &onwebkitplaybacktargetavailabilitychangedAttr, -
trunk/Source/WebCore/page/DOMWindow.idl
r181507 r181907 270 270 [NotEnumerable] attribute EventHandler onwebkitanimationstart; 271 271 [NotEnumerable] attribute EventHandler onwebkitdeviceproximity; 272 [NotEnumerable] attribute EventHandler onwebkitmouseforcecancelled; 273 [NotEnumerable] attribute EventHandler onwebkitmouseforcechanged; 274 [NotEnumerable] attribute EventHandler onwebkitmouseforceclick; 275 [NotEnumerable] attribute EventHandler onwebkitmouseforcedown; 276 [NotEnumerable] attribute EventHandler onwebkitmouseforceup; 277 [NotEnumerable] attribute EventHandler onwebkitmouseforcewillbegin; 272 278 [NotEnumerable] attribute EventHandler onwebkittransitionend; 273 279 [NotEnumerable] attribute EventHandler onwebkitwillrevealbottom; -
trunk/Source/WebCore/page/EventHandler.cpp
r181879 r181907 4023 4023 } 4024 4024 4025 const PlatformMouseEvent& EventHandler::lastMouseDownEvent() const 4026 { 4027 return m_mouseDown; 4028 } 4029 4025 4030 void EventHandler::setImmediateActionStage(ImmediateActionStage stage) 4026 4031 { -
trunk/Source/WebCore/page/EventHandler.h
r181879 r181907 181 181 182 182 IntPoint lastKnownMousePosition() const; 183 IntPoint lastKnownMouseGlobalPosition() const { return m_lastKnownMouseGlobalPosition; } 183 184 Cursor currentMouseCursor() const { return m_currentMouseCursor; } 184 185 … … 314 315 315 316 WEBCORE_EXPORT void setImmediateActionStage(ImmediateActionStage stage); 317 WEBCORE_EXPORT const PlatformMouseEvent& lastMouseDownEvent() const; 316 318 317 319 private: -
trunk/Source/WebKit2/ChangeLog
r181906 r181907 1 2015-03-24 Beth Dakin <bdakin@apple.com> 2 3 Add events related to force click gesture 4 https://bugs.webkit.org/show_bug.cgi?id=142836 5 -and corresponding- 6 rdar://problem/20210239 7 8 Reviewed by Dean Jackson. 9 10 ActionMenuHitTestResult has a new bool indicating whether to not the HitTestResult 11 will prevent default. 12 * Shared/mac/ActionMenuHitTestResult.h: 13 * Shared/mac/ActionMenuHitTestResult.mm: 14 (WebKit::ActionMenuHitTestResult::encode): 15 (WebKit::ActionMenuHitTestResult::decode): 16 17 Send immediateActionDidUpdate and the normalized force over the the WebProcess. 18 * UIProcess/WebPageProxy.cpp: 19 (WebKit::WebPageProxy::immediateActionDidUpdate): 20 * UIProcess/WebPageProxy.h: 21 22 We need a dummy animation controller when web content is overriding the default 23 behavior. 24 * UIProcess/mac/WKImmediateActionController.mm: 25 26 Send along the update information. 27 (-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]): 28 29 Use the dummy animation controller if default has been prevented. 30 (-[WKImmediateActionController _defaultAnimationController]): 31 (-[WKImmediateActionController _updateImmediateActionItem]): 32 33 Keep track of whether m_lastActionMenuHitTes prevented the default immediate 34 action behavior. 35 * WebProcess/WebPage/WebPage.cpp: 36 (WebKit::WebPage::WebPage): 37 * WebProcess/WebPage/WebPage.h: 38 * WebProcess/WebPage/WebPage.messages.in: 39 40 Call dispatchMouseForceMayBegin() at hit test time. 41 * WebProcess/WebPage/mac/WebPageMac.mm: 42 (WebKit::WebPage::performActionMenuHitTestAtLocation): 43 44 Call dispatchMouseForceChanged() if appropriate. 45 (WebKit::WebPage::immediateActionDidUpdate): 46 47 Call dispatchMouseForceCancelled() if appropriate. 48 (WebKit::WebPage::immediateActionDidCancel): 49 50 Call dispatchMouseForceDown() if appropriate. 51 (WebKit::WebPage::immediateActionDidComplete): 52 1 53 2015-03-24 Anders Carlsson <andersca@apple.com> 2 54 -
trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.h
r181874 r181907 66 66 67 67 RefPtr<WebCore::TextIndicator> linkTextIndicator; 68 69 bool contentPreventsDefault; 68 70 }; 69 71 -
trunk/Source/WebKit2/Shared/mac/ActionMenuHitTestResult.mm
r181874 r181907 77 77 if (hasLinkTextIndicator) 78 78 encoder << linkTextIndicator->data(); 79 80 encoder << contentPreventsDefault; 79 81 } 80 82 … … 157 159 } 158 160 161 if (!decoder.decode(actionMenuHitTestResult.contentPreventsDefault)) 162 return false; 163 159 164 return true; 160 165 } -
trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp
r181836 r181907 5571 5571 } 5572 5572 5573 void WebPageProxy::immediateActionDidUpdate(float force) 5574 { 5575 m_process->send(Messages::WebPage::ImmediateActionDidUpdate(force), m_pageID); 5576 } 5577 5573 5578 void WebPageProxy::immediateActionDidCancel() 5574 5579 { -
trunk/Source/WebKit2/UIProcess/WebPageProxy.h
r181836 r181907 989 989 void focusAndSelectLastActionMenuHitTestResult(); 990 990 991 void immediateActionDidUpdate(float force); 991 992 void immediateActionDidCancel(); 992 993 void immediateActionDidComplete(); -
trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm
r181660 r181907 54 54 @end 55 55 56 @interface WebAnimationController : NSObject <NSImmediateActionAnimationController> { 57 } 58 @end 59 60 @implementation WebAnimationController 61 @end 62 56 63 @implementation WKImmediateActionController 57 64 … … 206 213 return; 207 214 215 if (_hitTestResult.contentPreventsDefault) { 216 _page->immediateActionDidUpdate([immediateActionRecognizer animationProgress]); 217 return; 218 } 219 208 220 _page->setTextIndicatorAnimationProgress([immediateActionRecognizer animationProgress]); 209 221 } … … 250 262 - (id <NSImmediateActionAnimationController>)_defaultAnimationController 251 263 { 264 if (_hitTestResult.contentPreventsDefault) { 265 RetainPtr<WebAnimationController> dummyController = [[WebAnimationController alloc] init]; 266 return dummyController.get(); 267 } 268 252 269 RefPtr<WebHitTestResult> hitTestResult = [self _webHitTestResult]; 253 270 … … 289 306 290 307 id <NSImmediateActionAnimationController> defaultAnimationController = [self _defaultAnimationController]; 308 309 if (_hitTestResult.contentPreventsDefault) { 310 [_immediateActionRecognizer.get() setAnimationController:defaultAnimationController]; 311 return; 312 } 291 313 292 314 RefPtr<WebHitTestResult> hitTestResult = [self _webHitTestResult]; -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
r181836 r181907 341 341 , m_systemWebGLPolicy(WebGLAllowCreation) 342 342 #endif 343 #if PLATFORM(MAC) 344 , m_lastActionMenuHitTestPreventsDefault(false) 345 #endif 343 346 , m_mainFrameProgressCompleted(false) 344 347 , m_shouldDispatchFakeMouseMoveEvents(true) -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h
r181836 r181907 1085 1085 void selectLastActionMenuRange(); 1086 1086 void focusAndSelectLastActionMenuHitTestResult(); 1087 void immediateActionDidUpdate(float force); 1087 1088 void immediateActionDidCancel(); 1088 1089 void immediateActionDidComplete(); … … 1342 1343 WebCore::HitTestResult m_lastActionMenuHitTestResult; 1343 1344 RefPtr<WebPageOverlay> m_lastActionMenuHitPageOverlay; 1345 bool m_lastActionMenuHitTestPreventsDefault; 1344 1346 #endif 1345 1347 -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in
r181836 r181907 406 406 SelectLastActionMenuRange() 407 407 FocusAndSelectLastActionMenuHitTestResult() 408 ImmediateActionDidUpdate(float force) 408 409 ImmediateActionDidCancel() 409 410 ImmediateActionDidComplete() -
trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm
r181874 r181907 1025 1025 HitTestResult hitTestResult = mainFrame.eventHandler().hitTestResultAtPoint(locationInContentCoordinates); 1026 1026 1027 if (forImmediateAction) 1027 m_lastActionMenuHitTestPreventsDefault = false; 1028 Element* element = hitTestResult.innerElement(); 1029 1030 if (forImmediateAction) { 1028 1031 mainFrame.eventHandler().setImmediateActionStage(ImmediateActionStage::PerformedHitTest); 1032 if (element) 1033 m_lastActionMenuHitTestPreventsDefault = element->dispatchMouseForceWillBegin(); 1034 } 1029 1035 1030 1036 ActionMenuHitTestResult actionMenuResult; 1031 1037 actionMenuResult.hitTestLocationInViewCooordinates = locationInViewCooordinates; 1032 1038 actionMenuResult.hitTestResult = WebHitTestResult::Data(hitTestResult); 1039 actionMenuResult.contentPreventsDefault = m_lastActionMenuHitTestPreventsDefault; 1033 1040 1034 1041 RefPtr<Range> selectionRange = corePage()->focusController().focusedOrMainFrame().selection().selection().firstRange(); … … 1150 1157 } 1151 1158 1159 void WebPage::immediateActionDidUpdate(float force) 1160 { 1161 Element* element = m_lastActionMenuHitTestResult.innerElement(); 1162 if (!element) 1163 return; 1164 1165 if (!m_lastActionMenuHitTestPreventsDefault) 1166 return; 1167 1168 element->dispatchMouseForceChanged(force, m_page->mainFrame().eventHandler().lastMouseDownEvent()); 1169 } 1170 1152 1171 void WebPage::immediateActionDidCancel() 1153 1172 { 1154 1173 m_page->mainFrame().eventHandler().setImmediateActionStage(ImmediateActionStage::ActionCancelled); 1174 1175 Element* element = m_lastActionMenuHitTestResult.innerElement(); 1176 if (!element) 1177 return; 1178 1179 if (!m_lastActionMenuHitTestPreventsDefault) 1180 return; 1181 1182 element->dispatchMouseForceCancelled(m_page->mainFrame().eventHandler().lastMouseDownEvent()); 1155 1183 } 1156 1184 … … 1158 1186 { 1159 1187 m_page->mainFrame().eventHandler().setImmediateActionStage(ImmediateActionStage::ActionCompleted); 1188 1189 Element* element = m_lastActionMenuHitTestResult.innerElement(); 1190 if (!element) 1191 return; 1192 1193 if (!m_lastActionMenuHitTestPreventsDefault) 1194 return; 1195 1196 element->dispatchMouseForceDown(m_page->mainFrame().eventHandler().lastMouseDownEvent()); 1160 1197 } 1161 1198
Note:
See TracChangeset
for help on using the changeset viewer.