[webkit-changes] [WebKit/WebKit] 29ce0c: Cherry-pick 274448 at main (ac976a6da88c). https://bu...
Tim Nguyen
noreply at github.com
Fri Feb 23 00:18:06 PST 2024
Branch: refs/heads/webkitglib/2.44
Home: https://github.com/WebKit/WebKit
Commit: 29ce0c76196f16f8d5c901e734addfa40cbf7ce4
https://github.com/WebKit/WebKit/commit/29ce0c76196f16f8d5c901e734addfa40cbf7ce4
Author: Jean-Yves Avenard <jya at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WTF/wtf/NativePromise.h
M Tools/TestWebKitAPI/Tests/WTF/NativePromise.cpp
Log Message:
-----------
Cherry-pick 274448 at main (ac976a6da88c). https://bugs.webkit.org/show_bug.cgi?id=269160
NativePromise: ASSERTION FAILED: !m_callback
https://bugs.webkit.org/show_bug.cgi?id=269160
rdar://122738739
Reviewed by Youenn Fablet.
Following 273828 at main, NativePromiseRequest now inherits from CanMakeWeakPtr,
making it possible to disconnect it while not owning it. If the NativePromiseRequest
was owned by the NativePromise callback, when disconnecting the NativePromiseRequest
the callback would be deleted before the NativePromiseRequest::m_callback member
got cleared, which trigger the assertion.
We clear m_callback prior call disconnect().
Added API test.
* Source/WTF/wtf/NativePromise.h:
(WTF::NativePromiseRequest::disconnect):
* Tools/TestWebKitAPI/Tests/WTF/NativePromise.cpp:
(TestWebKitAPI::TEST):
Canonical link: https://commits.webkit.org/274448@main
Commit: 7e26f96d7f4540893b35a15a5cd0f2ba61d3487e
https://github.com/WebKit/WebKit/commit/7e26f96d7f4540893b35a15a5cd0f2ba61d3487e
Author: Jer Noble <jer.noble at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp
Log Message:
-----------
Cherry-pick 274460 at main (8a0987250d87). https://bugs.webkit.org/show_bug.cgi?id=269120
[iOS] youtube.com: Exiting fullscreen causes page to scroll down slightly, cropping top of video
https://bugs.webkit.org/show_bug.cgi?id=269120
rdar://120492434
Reviewed by Aditya Keerthi.
In 271567 at main, we added a call to `scrollIntoView()` to ensure the element which was exiting
fullscreen was visible in the viewport, no matter how much layout shifted the element during
the fullscreen transition. However, this has the side effect of "pinning" the fullscreen element
to the top of the page, which for the case of YouTube, is under the YouTube header bar.
Instead, call `scrollIntoViewIfNotVisible()` (passing in `true` to center the element if
offscreen) which is a no-op if the element is already visible.
* Source/WebKit/WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::didExitFullScreen):
Canonical link: https://commits.webkit.org/274460@main
Commit: 43eff15a763d3c22e3a5f3ab3df1b550c8878cc9
https://github.com/WebKit/WebKit/commit/43eff15a763d3c22e3a5f3ab3df1b550c8878cc9
Author: Vivienne Watermeier <vwatermeier at igalia.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
Log Message:
-----------
Cherry-pick 274464 at main (41a2e3c52030). https://bugs.webkit.org/show_bug.cgi?id=268559
[GStreamer] Include MpegAudioParse plugin in Brcm Nexus gstreamer pipeline
https://bugs.webkit.org/show_bug.cgi?id=268559
Reviewed by Xabier Rodriguez-Calvar.
On broadcom/nexus with progressive audio, gst_element_query_duration()
returns wrong values, which is avoided by forcing mpegaudioparse.
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1213
Original author: suresh-khurdiya-epam <skhurdiya.contractor at libertyglobal.com>
* Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::ensureGStreamerInitialized): Override mpegaudioparse rank
Canonical link: https://commits.webkit.org/274464@main
Commit: cf178e40b0ca3b14c5c29600c9d057c649f00444
https://github.com/WebKit/WebKit/commit/cf178e40b0ca3b14c5c29600c9d057c649f00444
Author: Vivienne Watermeier <vwatermeier at igalia.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
Log Message:
-----------
Cherry-pick 274469 at main (48efea40e980). https://bugs.webkit.org/show_bug.cgi?id=268549
[GStreamer] Trim leading zeroes from track IDs
https://bugs.webkit.org/show_bug.cgi?id=268549
Reviewed by Xabier Rodriguez-Calvar and Philippe Normand.
Qtdemux inserts leading zeroes when generating stream-ids, this patch
trims them in TrackPrivateBaseGStreamer for a better representation of
their underlying integers.
* Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::trimStreamId):
(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfStreamChanged):
(WebCore::TrackPrivateBaseGStreamer::trackIdFromPadStreamStartOrUniqueID):
Canonical link: https://commits.webkit.org/274469@main
Commit: 8450b1daa6de8014b177008750d111d185ee590b
https://github.com/WebKit/WebKit/commit/8450b1daa6de8014b177008750d111d185ee590b
Author: Dana Estra <destra at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebCore/html/track/VTTCue.cpp
Log Message:
-----------
Cherry-pick 274480 at main (379505f1665c). https://bugs.webkit.org/show_bug.cgi?id=269085
Subtitle size is enlarged in Full screen
https://bugs.webkit.org/show_bug.cgi?id=269085
rdar://122584350
Reviewed by Jer Noble.
Webkit-media-text-track-display pseudo-elements should have a font size unit of CQMIN instead of CQH. CQMIN will be calculated to be CQW if the width of the video element is shorter than the height, or CQH vice versa. This creates a more appropriate font size.
* Source/WebCore/html/track/VTTCue.cpp:
(WebCore::VTTCueBox::applyCSSProperties):
Canonical link: https://commits.webkit.org/274480@main
Commit: b3715824855ef7f7f9e1d738938e6956f7012da3
https://github.com/WebKit/WebKit/commit/b3715824855ef7f7f9e1d738938e6956f7012da3
Author: Sihui Liu <sihui_liu at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebCore/page/Quirks.cpp
Log Message:
-----------
Cherry-pick 274575 at main (31136601a244). https://bugs.webkit.org/show_bug.cgi?id=269308
Null pointer dereference in elementHasClassInClosestAncestors
https://bugs.webkit.org/show_bug.cgi?id=269308
rdar://122892811
Reviewed by Brent Fulgham.
Ensure ancestor is non-null before accessing it.
* Source/WebCore/page/Quirks.cpp:
(WebCore::elementHasClassInClosestAncestors):
Canonical link: https://commits.webkit.org/274575@main
Commit: 26b04adc18e67f79da629ce14704767fa9056242
https://github.com/WebKit/WebKit/commit/26b04adc18e67f79da629ce14704767fa9056242
Author: Chris Dumez <cdumez at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebCore/html/HTMLSelectElement.cpp
M Source/WebCore/rendering/RenderMenuList.cpp
Log Message:
-----------
Cherry-pick 274586 at main (35318b4d5407). https://bugs.webkit.org/show_bug.cgi?id=269322
Crash under ~RenderMenuList due to CheckedPtr usage
https://bugs.webkit.org/show_bug.cgi?id=269322
rdar://119790256
Reviewed by Alan Baradlay.
From the crash trace, we can see that HTMLSelectElement::defaultEventHandler()
holds a CheckedPtr to its RenderMenuList renderer and calls showPopup() on
the renderer. This ends up running JS, which removes the select element from
the DOM and in turns destroys the renderer. The usage is currently safe since
nothing is using the renderer after the JS has run. However, it was tripping
the CheckedPtr assertion.
To address the issue, switch to using WeakPtr for now and add comments to
clarify lifetime. We should consider refactoring this in a follow up though.
* Source/WebCore/html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::showPicker):
* Source/WebCore/rendering/RenderMenuList.cpp:
(RenderMenuList::showPopup):
Canonical link: https://commits.webkit.org/274586@main
Commit: 2ff1b38fa441be287d398cd7d9853b01ffebcd9b
https://github.com/WebKit/WebKit/commit/2ff1b38fa441be287d398cd7d9853b01ffebcd9b
Author: Philippe Normand <philn at igalia.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M LayoutTests/platform/glib/TestExpectations
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
Log Message:
-----------
Cherry-pick 274614 at main (518c5dcd9b48). https://bugs.webkit.org/show_bug.cgi?id=268906
REGRESSION(273906 at main): [GStreamer] webrtc/receiver-track-should-stay-live-even-if-receiver-is-inactive.html is flaky crash
https://bugs.webkit.org/show_bug.cgi?id=268906
Reviewed by Xabier Rodriguez-Calvar.
Flaky crashes were triggered when the codecPreferencesChanged() was called while the blocking pad
probe was still active. We now prevent re-entry when this is the case.
* LayoutTests/platform/glib/TestExpectations:
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingMediaSourceGStreamer::start):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::setSinkPad):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::teardown):
(WebCore::RealtimeOutgoingMediaSourceGStreamer::codecPreferencesChanged):
* Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h:
Canonical link: https://commits.webkit.org/274614@main
Commit: 22216dae0c02fd500a1acf84e612b73a33066af7
https://github.com/WebKit/WebKit/commit/22216dae0c02fd500a1acf84e612b73a33066af7
Author: Chris Dumez <cdumez at apple.com>
Date: 2024-02-16 (Fri, 16 Feb 2024)
Changed paths:
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
Log Message:
-----------
Cherry-pick 274641 at main (c3b754f8cd59). https://bugs.webkit.org/show_bug.cgi?id=269373
Crash under WebPage::close()
https://bugs.webkit.org/show_bug.cgi?id=269373
rdar://118486861
Reviewed by Brent Fulgham.
Add a null check for the LocalFrame given that nothing prevents it
from being null and we're seeing null dereferences in the wild.
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
Canonical link: https://commits.webkit.org/274641@main
Commit: dc51c550ece4c3b56fe03bac80e4d356cb828577
https://github.com/WebKit/WebKit/commit/dc51c550ece4c3b56fe03bac80e4d356cb828577
Author: Enrique Ocaña González <eocanha at igalia.com>
Date: 2024-02-20 (Tue, 20 Feb 2024)
Changed paths:
M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
Log Message:
-----------
Cherry-pick 274643 at main (3e214abe9459). https://bugs.webkit.org/show_bug.cgi?id=269203
[GStreamer] Buffer end equals video duration for progressive video
https://bugs.webkit.org/show_bug.cgi?id=269203
Reviewed by Philippe Normand.
On some long regular videos, the current buffer management mechanism
reports 100% of the video as loaded when that's not actually happening.
This causes document.getElementsByTagName('video')[0].buffered.end(0) to
be equal to document.getElementsByTagName('video')[0].duration when that
should clearly not the case.
The current default way of computing m_maxTimeLoaded isn't working
properly because oftern, when the buffering messages are received by
MediaPlayerPrivateGStreamer, the duration is still unknown and the code
in charge of computing the fill status bails out.
The WebKitWebSrc network downloading statistics provide a much more
accurate source of information for the buffered data, and should be used
in more cases when available. The download statistics tend to arrive
later than the buffer fill messages and at that moment duration is
already available, leading to a proper computation of m_maxTimeLoaded.
See: https://github.com/WebPlatformForEmbedded/WPEWebKit/pull/1238
This patch calls updateMaxTimeLoaded() when the network statistics are
received. That update must be done here because the current system in
place to perform such update is based on m_fillTimer, and when the
network stats are received the timer is usually already stopped. This
method works fine both with on-disk cache and without it (the typical
use case on set-top-box devices).
Original patch authored by: suresh-khurdiya-epam <skhurdiya.contractor at libertyglobal.com>
* Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleMessage): When a webkit-network-statistics message is received, compute the fill status and update m_maxTimeLoaded.
Canonical link: https://commits.webkit.org/274643@main
Commit: 3033f5c7c086932709ea33a534085b51477d9911
https://github.com/WebKit/WebKit/commit/3033f5c7c086932709ea33a534085b51477d9911
Author: Justin Michaud <justin_michaud at apple.com>
Date: 2024-02-20 (Tue, 20 Feb 2024)
Changed paths:
M Source/JavaScriptCore/runtime/Options.cpp
Log Message:
-----------
Cherry-pick 274663 at main (c9407f23b73e). https://bugs.webkit.org/show_bug.cgi?id=269245
REGRESSION (December 2023?): 2x increase in JSC-Tests-EWS build duration
https://bugs.webkit.org/show_bug.cgi?id=269245
rdar://121678486
Reviewed by Yusuke Suzuki.
Skip useRandomizingExecutableIslandAllocation on x86 where we don't use
jump islands anyway.
* Source/JavaScriptCore/runtime/Options.cpp:
(JSC::Options::notifyOptionsChanged):
Canonical link: https://commits.webkit.org/274663@main
Commit: 29e78c0a030d42af69dda388acf4f5adc7f1cc5e
https://github.com/WebKit/WebKit/commit/29e78c0a030d42af69dda388acf4f5adc7f1cc5e
Author: Adrian Perez de Castro <aperez at igalia.com>
Date: 2024-02-20 (Tue, 20 Feb 2024)
Changed paths:
M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h
Log Message:
-----------
Fix non-unified builds
Unreviewed build fix.
* Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h: Add
missing wtf/IsoMalloc.h header inclusion.
Commit: 186dcff5d6799c77e8a14133e95eb0f71d7a8b69
https://github.com/WebKit/WebKit/commit/186dcff5d6799c77e8a14133e95eb0f71d7a8b69
Author: Ahmad Saleem <ahmad.saleem792+github at gmail.com>
Date: 2024-02-20 (Tue, 20 Feb 2024)
Changed paths:
M LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-03-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-04-expected.txt
M LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-05-expected.txt
M LayoutTests/svg/dom/SVGPolygonElement-baseVal-list-removal-crash.html
M LayoutTests/svg/dom/path-pointAtLength-expected.txt
M LayoutTests/svg/dom/path-pointAtLength.html
M Source/WebCore/svg/SVGGeometryElement.cpp
M Source/WebCore/svg/SVGPathElement.cpp
Log Message:
-----------
Revert 274308 at main - Broke discord.com login button
https://bugs.webkit.org/show_bug.cgi?id=269647
Reviewed by Simon Fraser.
This patch reverts 274308 at main as title states manually.
> Reverted Changes:
* LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-03-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-04-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/svg/types/scripted/SVGGeometryElement.getPointAtLength-05-expected.txt:
* LayoutTests/svg/dom/path-pointAtLength-expected.txt:
* LayoutTests/svg/dom/path-pointAtLength.html:
* LayoutTests/svg/dom/SVGPolygonElement-baseVal-list-removal-crash.html:
* Source/WebCore/svg/SVGGeometryElement.cpp:
(SVGGeometryElement::getPointAtLength):
* Source/WebCore/svg/SVGPathElement.cpp:
(SVGPathElement::getPointAtLength):
Canonical link: https://commits.webkit.org/274929@main
Commit: 83c85d31d298828092eb20a4e98f2656deb422c9
https://github.com/WebKit/WebKit/commit/83c85d31d298828092eb20a4e98f2656deb422c9
Author: Vitaly Dyachkov <vitaly at igalia.com>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M LayoutTests/platform/glib/TestExpectations
M LayoutTests/platform/wpe/TestExpectations
M Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.cpp
M Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.h
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
M Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h
Log Message:
-----------
Cherry-pick 275168 at main (9f21b9e439f9). https://bugs.webkit.org/show_bug.cgi?id=269288
[Nicosia] Add support for translate/rotate/scale animations
https://bugs.webkit.org/show_bug.cgi?id=269288
Reviewed by Nikolas Zimmermann.
Nicosia already supports accelerated transform animations.
This patch implements translate, rotate, and scale animations.
It also ensures that when multiple animations are applied,
they run in the correct order required the spec [1]:
- translate
- rotate
- scale
- transform
[1] https://drafts.csswg.org/css-transforms-2/#ctm
* LayoutTests/platform/glib/TestExpectations:
* LayoutTests/platform/wpe/TestExpectations:
* Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.cpp:
(Nicosia::Animation::apply):
(Nicosia::Animation::applyInternal):
(Nicosia::Animations::apply):
(Nicosia::Animations::hasRunningTransformAnimations const):
(Nicosia::Animation::applyKeepingInternalState): Deleted.
(Nicosia::Animations::applyKeepingInternalState): Deleted.
* Source/WebCore/platform/graphics/nicosia/NicosiaAnimation.h:
(Nicosia::Animations::setTranslate):
(Nicosia::Animations::setRotate):
(Nicosia::Animations::setScale):
(Nicosia::Animations::setTransform):
* Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::syncAnimations):
* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::didChangeAnimations):
(WebCore::CoordinatedGraphicsLayer::addAnimation):
(WebCore::CoordinatedGraphicsLayer::transformRelatedPropertyDidChange):
* Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
Canonical link: https://commits.webkit.org/275168@main
Commit: 21490560a12d75a33c4a48849e2fe79cfb315368
https://github.com/WebKit/WebKit/commit/21490560a12d75a33c4a48849e2fe79cfb315368
Author: Michael Catanzaro <mcatanzaro at redhat.com>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M Source/WebKit/UIProcess/WebProcessCache.cpp
Log Message:
-----------
Cherry-pick 275063 at main (29ee71944f91). https://bugs.webkit.org/show_bug.cgi?id=262780
Web process cache should expire old web processes sooner
https://bugs.webkit.org/show_bug.cgi?id=262780
Reviewed by Don Olmstead and Carlos Garcia Campos.
GTK/WPE want a shorter web process cache lifetime. I guess the shorter
lifetime is likely to be desired by other non-Apple ports, as well.
Apple prefers to keep the current 30 minute cache lifetime.
* Source/WebKit/UIProcess/WebProcessCache.cpp:
Canonical link: https://commits.webkit.org/275063@main
Commit: 955725daaffff54df8d5805c95c02ce6fa377328
https://github.com/WebKit/WebKit/commit/955725daaffff54df8d5805c95c02ce6fa377328
Author: Philippe Normand <philn at igalia.com>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M Source/cmake/OptionsGTK.cmake
M Source/cmake/OptionsWPE.cmake
Log Message:
-----------
Cherry-pick 274475 at main (660096508a7e). https://bugs.webkit.org/show_bug.cgi?id=269204
[GLib] Enable WebCodecs
https://bugs.webkit.org/show_bug.cgi?id=269204
Reviewed by Michael Catanzaro.
Layout tests coverage is decent, the corresponding runtime preferences are already marked as
'stable'.
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:
Canonical link: https://commits.webkit.org/274475@main
Commit: ba53f228c7e264c3d82f7099a15bcb0e08525041
https://github.com/WebKit/WebKit/commit/ba53f228c7e264c3d82f7099a15bcb0e08525041
Author: Yusuke Suzuki <ysuzuki at apple.com>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/html/CanvasBase.cpp
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/canvas/CanvasRenderingContext.h
Log Message:
-----------
Cherry-pick 275137 at main (3e7f2c1bc01d). https://bugs.webkit.org/show_bug.cgi?id=269867
REGRESSION(274164 at main): Do not consult against Document's WeakHashSet for every Canvas ops
https://bugs.webkit.org/show_bug.cgi?id=269867
rdar://123400342
Reviewed by Ryosuke Niwa.
274164 at main introduced addCanvasNeedingPreparationForDisplayOrFlush and removeCanvasNeedingPreparationForDisplayOrFlush, which consult against Document's WeakHashSet
for every Canvas operation. Because each Canvas operation is very tiny, Canvas operations are called super frequently, and any kind of performance regression on each
call can be exhibited as visible performance regression. WeakHashSet querying is costly, and Document is super large so frequent cache miss happens.
Instead, we store a bool flag to CanvasRenderingContext, which says whether it is registered in Document's WeakHashSet. And avoid this costly operation once it gets registered.
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::prepareCanvasesForDisplayOrFlushIfNeeded):
(WebCore::Document::addCanvasNeedingPreparationForDisplayOrFlush):
(WebCore::Document::removeCanvasNeedingPreparationForDisplayOrFlush):
* Source/WebCore/dom/Document.h:
* Source/WebCore/html/CanvasBase.cpp:
(WebCore::CanvasBase::addCanvasNeedingPreparationForDisplayOrFlush):
(WebCore::CanvasBase::removeCanvasNeedingPreparationForDisplayOrFlush):
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::didMoveToNewDocument):
* Source/WebCore/html/canvas/CanvasRenderingContext.h:
(WebCore::CanvasRenderingContext::setIsToPrepare):
(WebCore::CanvasRenderingContext::isInPreparationForDisplayOrFlush const):
Canonical link: https://commits.webkit.org/275137@main
Commit: bc24768393ccccdd0e231d871c04e3b4aebd8ee3
https://github.com/WebKit/WebKit/commit/bc24768393ccccdd0e231d871c04e3b4aebd8ee3
Author: Tim Nguyen <ntim at apple.com>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M LayoutTests/imported/w3c/resources/import-expectations.json
A LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt
A LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html
M Source/WebCore/animation/CSSPropertyAnimation.cpp
Log Message:
-----------
Cherry-pick 275120 at main (71b8fba1401e). https://bugs.webkit.org/show_bug.cgi?id=269848
REGRESSION(273742 at main): LinkedIn "…" menu does not populate on click
https://bugs.webkit.org/show_bug.cgi?id=269848
rdar://123264559
Reviewed by Cameron McCormack.
The menu on LinkedIn transitions the `visibility` CSS property.
Do a partial revert of 273742 at main to revert only the animation wrapper change for the `visibility` property, since it has caused changes that are timing sensitive for the site.
Imported WPT that also regressed along with 273742 at main to avoid regressing this again.
* LayoutTests/imported/w3c/resources/import-expectations.json:
* LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation-expected.txt: Added.
* LayoutTests/imported/w3c/web-platform-tests/css/CSS2/visufx/animation/visibility-interpolation.html: Added.
* Source/WebCore/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
Canonical link: https://commits.webkit.org/275120@main
Compare: https://github.com/WebKit/WebKit/compare/ef78ee396c4f...bc24768393cc
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