[webkit-changes] [WebKit/WebKit] dc6a09: Avoid full style rebuild for :-webkit-animating-fu...
Tim Nguyen
noreply at github.com
Wed Oct 19 11:43:46 PDT 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: dc6a098a9b7ca96c4350524ff967e46dbe93fc5d
https://github.com/WebKit/WebKit/commit/dc6a098a9b7ca96c4350524ff967e46dbe93fc5d
Author: Tim Nguyen <ntim at apple.com>
Date: 2022-10-19 (Wed, 19 Oct 2022)
Changed paths:
M Source/WebCore/dom/FullscreenManager.cpp
M Source/WebCore/dom/FullscreenManager.h
Log Message:
-----------
Avoid full style rebuild for :-webkit-animating-full-screen-transition and :-webkit-full-screen-controls-hidden
https://bugs.webkit.org/show_bug.cgi?id=246736
rdar://101325585
Reviewed by Antti Koivisto.
Calling scheduleFullStyleRebuild() is unnecessarily costly here. It is likely copy-paste from
methods that enter/exit fullscreen, which actually do need a rebuild because they need to
re-resolve style for all elements (un)matching :-webkit-full-screen-ancestor.
We can use PseudoClassChangeInvalidation which is more optimized for this purpose.
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::setAnimatingFullscreen):
(WebCore::FullscreenManager::setFullscreenControlsHidden):
(WebCore::FullscreenManager::didExitFullscreen):
* Source/WebCore/dom/FullscreenManager.h:
Canonical link: https://commits.webkit.org/255748@main
More information about the webkit-changes
mailing list