Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e6a8ede67b0919c59b9bef1c1368c8869c1f14b7
      
https://github.com/WebKit/WebKit/commit/e6a8ede67b0919c59b9bef1c1368c8869c1f14b7
  Author: Matt Woodrow <mattwood...@apple.com>
  Date:   2024-06-03 (Mon, 03 Jun 2024)

  Changed paths:
    A 
LayoutTests/fast/css/view-transitions-scrolling-position-fixed-expected.html
    A LayoutTests/fast/css/view-transitions-scrolling-position-fixed.html
    M Source/WebCore/animation/CSSTransition.cpp
    M Source/WebCore/animation/CSSTransition.h
    M Source/WebCore/animation/KeyframeEffect.cpp
    M Source/WebCore/animation/KeyframeEffect.h
    M Source/WebCore/animation/KeyframeEffectStack.cpp
    M Source/WebCore/animation/WebAnimation.cpp
    M Source/WebCore/animation/WebAnimation.h
    M Source/WebCore/dom/ViewTransition.cpp

  Log Message:
  -----------
  [view-transitions] Back icon jiggles while animating on 
https://codepen.io/bramus/full/mdowgYX.
https://bugs.webkit.org/show_bug.cgi?id=274606
<rdar://128627261>

Reviewed by Antoine Quint.

If the view transition is capturing the root element, then we reparent the 
GraphicsLayer for
the RenderView instead. Make sure we request a geometry update on the right 
RenderLayer to
account for this.

New non-WPT test added, since this requires overlay scrollbars to be enabled to 
reproduce (otherwise
the scrollbar move requests a geometry update on the RenderView as well and 
hides the bug).

This also exposed a bug where the transition from 'active' to 'after' state of 
the view transition
animations wasn't invalidating layer composition, but does affect compositing 
decisions.

The original testcase still isn't perfect with these changes, since async 
scrolling still
incorrectly accounts for the view transition overlays. That will be fixed by 
bug 273612.

* LayoutTests/fast/css/view-transitions-scrolling-position-fixed-expected.html: 
Added.
* LayoutTests/fast/css/view-transitions-scrolling-position-fixed.html: Added.
* Source/WebCore/animation/CSSTransition.cpp:
(WebCore::CSSTransition::resolve):
* Source/WebCore/animation/CSSTransition.h:
* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::apply):
* Source/WebCore/animation/KeyframeEffect.h:
* Source/WebCore/animation/KeyframeEffectStack.cpp:
(WebCore::KeyframeEffectStack::applyKeyframeEffects):
* Source/WebCore/animation/WebAnimation.cpp:
(WebCore::WebAnimation::resolve):
* Source/WebCore/animation/WebAnimation.h:
* Source/WebCore/dom/ViewTransition.cpp:
(WebCore::ViewTransition::updatePseudoElementStyles):

Canonical link: https://commits.webkit.org/279674@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to