[webkit-changes] [WebKit/WebKit] f74645: [view-transitions] Async animation of snapshot pos...

mattwoodrow noreply at github.com
Mon May 27 20:02:49 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f74645a452f8d62be08217bb1def567fd4d9b96e
      https://github.com/WebKit/WebKit/commit/f74645a452f8d62be08217bb1def567fd4d9b96e
  Author: Matt Woodrow <mattwoodrow at apple.com>
  Date:   2024-05-27 (Mon, 27 May 2024)

  Changed paths:
    M Source/WebCore/animation/KeyframeEffect.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.h
    M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp
    M Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h

  Log Message:
  -----------
  [view-transitions] Async animation of snapshot position via transform looks jumpy with sync animation of size
https://bugs.webkit.org/show_bug.cgi?id=274437
<rdar://128441578>

Reviewed by Cameron McCormack.

The default pseudo element structure results in an asynchronous animation of the snapshot position via
transform, and a sync animation of the width/height.

If there's any slowness at all on the main thread, then this looks super jumpy.

Also fixes a bug where Element::invalidateStyleForAnimation()'s forced composition update wasn't being
propagated to some pseudo elements, even if it originated from an animation on those pseudos.

* Source/WebCore/animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::computeHasSizeDependentTransform):
* Source/WebCore/rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateAfterDescendants):
* Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:
(WebCore::RenderTreeUpdater::GeneratedContent::updateBackdropRenderer):
(WebCore::RenderTreeUpdater::GeneratedContent::updateWritingSuggestionsRenderer):
* Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.h:
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.cpp:
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementTree):
(WebCore::RenderTreeUpdater::ViewTransition::updatePseudoElementGroup):
* Source/WebCore/rendering/updating/RenderTreeUpdaterViewTransition.h:

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list