Changeset 243310 in webkit
- Timestamp:
- Mar 21, 2019, 12:01:47 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 8 added
- 3 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/fast/events/touch/ios/content-observation/0ms-delay-0ms-transition-on-mousemove-expected.txt (added)
-
LayoutTests/fast/events/touch/ios/content-observation/0ms-delay-0ms-transition-on-mousemove.html (added)
-
LayoutTests/fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove-expected.txt (added)
-
LayoutTests/fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove.html (added)
-
LayoutTests/fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-mousemove-expected.txt (added)
-
LayoutTests/fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-mousemove.html (added)
-
LayoutTests/fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-touch-start-expected.txt (added)
-
LayoutTests/fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-touch-start.html (added)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/page/ios/ContentChangeObserver.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r243309 r243310 1 2019-03-21 Zalan Bujtas <zalan@apple.com> 2 3 [ContentChangeObserver] Start tracking implicit transitions at mousemove 4 https://bugs.webkit.org/show_bug.cgi?id=196054 5 <rdar://problem/49093840> 6 7 Reviewed by Simon Fraser. 8 9 * fast/events/touch/ios/content-observation/0ms-delay-0ms-transition-on-mousemove-expected.txt: Added. 10 * fast/events/touch/ios/content-observation/0ms-delay-0ms-transition-on-mousemove.html: Added. 11 * fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove-expected.txt: Added. 12 * fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove.html: Added. 13 * fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-mousemove-expected.txt: Added. 14 * fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-mousemove.html: Added. 15 * fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-touch-start-expected.txt: Added. 16 * fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-touch-start.html: Added. 17 1 18 2019-03-21 Simon Fraser <simon.fraser@apple.com> 2 19 -
trunk/Source/WebCore/ChangeLog
r243309 r243310 1 2019-03-21 Zalan Bujtas <zalan@apple.com> 2 3 [ContentChangeObserver] Start tracking implicit transitions at mousemove 4 https://bugs.webkit.org/show_bug.cgi?id=196054 5 <rdar://problem/49093840> 6 7 Reviewed by Simon Fraser. 8 9 This patch fixes the hover menu issue on seriouseats.com. After tapping on the menu items, the submenus show up now. 10 11 1. Start observing at mousemove 12 2. Check if the style change is synchronous or not and start observing it accordingly. 13 14 Tests: fast/events/touch/ios/content-observation/0ms-delay-0ms-transition-on-mousemove.html 15 fast/events/touch/ios/content-observation/100ms-delay-10ms-transition-on-mousemove.html 16 fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-mousemove.html 17 fast/events/touch/ios/content-observation/10ms-delay-0ms-transition-on-touch-start.html 18 19 * page/ios/ContentChangeObserver.cpp: 20 (WebCore::ContentChangeObserver::adjustObservedState): 21 1 22 2019-03-21 Simon Fraser <simon.fraser@apple.com> 2 23 -
trunk/Source/WebCore/page/ios/ContentChangeObserver.cpp
r243307 r243310 385 385 case Event::StartedMouseMovedEventDispatching: 386 386 ASSERT(!m_document.hasPendingStyleRecalc()); 387 if (!isBetweenTouchEndAndMouseMoved()) { 388 setHasNoChangeState(); 389 clearObservedDOMTimers(); 390 setShouldObserveDOMTimerScheduling(true); 391 } else 392 setShouldObserveDOMTimerScheduling(!hasVisibleChangeState()); 387 if (!isBetweenTouchEndAndMouseMoved()) 388 reset(); 393 389 setIsBetweenTouchEndAndMouseMoved(false); 390 setShouldObserveDOMTimerScheduling(!hasVisibleChangeState()); 391 setShouldObserveTransitions(!hasVisibleChangeState()); 394 392 break; 395 393 case Event::EndedMouseMovedEventDispatching: 396 394 setShouldObserveDOMTimerScheduling(false); 395 setShouldObserveTransitions(false); 397 396 break; 398 397 case Event::StartedStyleRecalc: … … 409 408 break; 410 409 case Event::EndedDOMTimerExecution: 411 case Event::EndedTransition:412 410 setShouldObserveNextStyleRecalc(m_document.hasPendingStyleRecalc()); 413 411 FALLTHROUGH; … … 417 415 if (!isObservationTimeWindowActive()) 418 416 adjustStateAndNotifyContentChangeIfNeeded(); 417 break; 418 case Event::EndedTransition: 419 // onAnimationEnd can be called while in the middle of resolving the document (synchronously) or 420 // asynchronously right before the style update is issued. 421 if (m_document.inStyleRecalc()) { 422 // We need to start observing this style change synchronously. 423 m_isInObservedStyleRecalc = true; 424 } else 425 setShouldObserveNextStyleRecalc(true); 419 426 break; 420 427 case Event::EndedFixedObservationTimeWindow:
Note:
See TracChangeset
for help on using the changeset viewer.