[webkit-changes] [WebKit/WebKit] a05188: [WebXR] Fix immersive VR rendering for shared layout.
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a05188f93c2ae18909898ae4fbef87323b0f5289 https://github.com/WebKit/WebKit/commit/a05188f93c2ae18909898ae4fbef87323b0f5289 Author: Dan Glastonbury Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/Modules/webxr/WebXROpaqueFramebufferCocoa.cpp Log Message: --- [WebXR] Fix immersive VR rendering for shared layout. https://bugs.webkit.org/show_bug.cgi?id=276402 rdar://131356393 Reviewed by Mike Wyrzykowski. After https://commits.webkit.org/280523@main, WebXR immersive sessions render black in simulator. Outside of the simulator, we always blit from a staging texture to the final output because we need to place each eye into the correct layer of a Metal texture. In the simulator, the code tried to optimize to avoid the extra copy. To fix the issue, I've made the shared layout case work exactly like the layered layout case. * Source/WebCore/Modules/webxr/WebXROpaqueFramebufferCocoa.cpp: (WebCore::WebXROpaqueFramebuffer::blitShared): (WebCore::WebXROpaqueFramebuffer::setupFramebuffer): Canonical link: https://commits.webkit.org/280805@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
[webkit-changes] [WebKit/WebKit] cbbcae: MediaSession artwork only uses the first item in t...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: cbbcae6e1ae3ca3c2b11a499fa133b07746e2820 https://github.com/WebKit/WebKit/commit/cbbcae6e1ae3ca3c2b11a499fa133b07746e2820 Author: Jean-Yves Avenard Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/Modules/mediasession/MediaMetadata.cpp M Source/WebCore/Modules/mediasession/MediaMetadata.h Log Message: --- MediaSession artwork only uses the first item in the artwork array https://bugs.webkit.org/show_bug.cgi?id=276351 rdar://81160539 Reviewed by Youenn Fablet. If `sizes` metadata artwork attribute is provided we will use them to determine the "best" image to select. We do so by giving each resolution a score between 0 and 1. We aim to download an image that is 512x512 with an aspect ratio of 1. If the `sizes` attribute contains invalid content or if not provided, we will iterate through all the available images and download them. We will then either select the one with the highest score, or the first one found with a resolution greater than 512 pixels. Test will be added once https://bugs.webkit.org/show_bug.cgi?id=276133 lands as it adds some internal APIs to check which URL was selected with Now Playing. For now, manually tested. * Source/WebCore/Modules/mediasession/MediaMetadata.cpp: (WebCore::MediaMetadata::imageDimensionsScore const): (WebCore::MediaMetadata::refreshArtworkImage): (WebCore::MediaMetadata::tryNextArtworkImage): * Source/WebCore/Modules/mediasession/MediaMetadata.h: Canonical link: https://commits.webkit.org/280804@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
[webkit-changes] [WebKit/WebKit] 9e0bae: QuickLook Image dismissal animation lands in the w...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9e0bae9552cc178945e9187e52a742c052056305 https://github.com/WebKit/WebKit/commit/9e0bae9552cc178945e9187e52a742c052056305 Author: Abrar Rahman Protyasha Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebKit/UIProcess/ios/WKContentViewInteraction.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Log Message: --- QuickLook Image dismissal animation lands in the wrong place https://bugs.webkit.org/show_bug.cgi?id=276401 rdar://129983325 Reviewed by Wenson Hsieh. After the changes in (presumably) rdar://125669602, UIKit has started calling into the QLPreviewControllerDelegate method `previewController:transitionImageForPreviewItem:contentRect:` twice during one dismissal animation. Since we transform our image bounds from content view coordinates to window coordinates through `convertRect:toView:`, the second delegate call returns the wrong content rect, since by then we are in the middle of an animation and our coordinate system has changed. This leads to the image dismissal animation to end in the wrong place. To work around this issue, we can compute this image bound only once per presentation. We cache the image bound (in window coordinates) on the first call to `previewController:transitionImageForPreviewItem:contentRect:`, and we keep reusing it until the preview controller is dismissed, at which point we let go of this cached value. * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView previewController:transitionImageForPreviewItem:contentRect:]): (-[WKContentView previewControllerDidDismiss:]): Canonical link: https://commits.webkit.org/280803@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
[webkit-changes] [WebKit/WebKit] c8c3aa: REGRESSION (visionOS 2): Yahoo and AOL login pages...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c8c3aac34000d459e3d3a3408a891f934d8ed262 https://github.com/WebKit/WebKit/commit/c8c3aac34000d459e3d3a3408a891f934d8ed262 Author: Wenson Hsieh Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/platform/ios/LocalCurrentTraitCollection.h M Source/WebCore/platform/ios/LocalCurrentTraitCollection.mm M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm Log Message: --- REGRESSION (visionOS 2): Yahoo and AOL login pages flicker when adding a new Mail account https://bugs.webkit.org/show_bug.cgi?id=276387 rdar://129308652 Reviewed by Aditya Keerthi. On visionOS 2, after (what are probably) the changes in either rdar://117186193 or rdar://117807846, the following logic: ``` auto userInterfaceStyleTrait = [UITraitCollection traitCollectionWithUserInterfaceStyle:UIUserInterfaceStyleLight]; auto backgroundLevelTrait = [UITraitCollection traitCollectionWithUserInterfaceLevel:UIUserInterfaceLevelBase]; auto combinedTrait = [UITraitCollection traitCollectionWithTraitsFromCollections:@[ originalTrait.get(), userInterfaceStyleTrait, backgroundLevelTrait ]]; ``` ...no longer yields a `combinedTrait` that has a user interface idiom of `vision`, in the case where `originalTrait` had a user interface of `vision`. Instead, the idiom reverts to `unspecified`, which breaks downstream logic that attempts to override the user interface idiom in visionOS to be equal to `pad`. Subsequently, this causes `+[UIColor systemBackgroundColor]` to return transparent black instead of white in `RenderThemeIOS::cssValueToSystemColorMap()`, which ultimately causes the page background to be (incorrectly) transparent in `SLYahooAuthService`, leading to a flash as the page loads. Interestingly... (1) `+traitCollectionWithTraitsFromCollections:` is deprecated anyways, in favor of `-traitCollectionByModifyingTraits:` or `+traitCollectionWithTraits:`. (2) `-traitCollectionByModifyingTraits:` doesn't have the same issue, and adopting it fixes the bug. With that in mind, we can address the regression by moving from the deprecated API to one of the replacements (`-traitCollectionByModifyingTraits:`). * Source/WebCore/platform/ios/LocalCurrentTraitCollection.h: * Source/WebCore/platform/ios/LocalCurrentTraitCollection.mm: Adopt `-traitCollectionByModifyingTraits:`. (WebCore::traitCollectionWithAdjustedIdiomForSystemColors): Rename this from `adjustedTraitCollection` to `traitCollectionWithAdjustedIdiomForSystemColors` to make the intent more obvious. Also, export it for use in the client layer. (WebCore::LocalCurrentTraitCollection::LocalCurrentTraitCollection): (WebCore::adjustedTraitCollection): Deleted. * Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm: (scrollViewBackgroundColor): Also add a missing idiom adjustment here, when determining the scroll view background color. This ensures that `+systemBackgroundColor` is white to match the iPad idiom here as well. Canonical link: https://commits.webkit.org/280802@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
[webkit-changes] [WebKit/WebKit] 094276: [WinCairo] Unreviewed test gardening
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 094276215e5d9ad01b6d493042756767b92cf3e0 https://github.com/WebKit/WebKit/commit/094276215e5d9ad01b6d493042756767b92cf3e0 Author: Fujii Hironori Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/platform/wincairo/TestExpectations Log Message: --- [WinCairo] Unreviewed test gardening * LayoutTests/platform/wincairo/TestExpectations: Canonical link: https://commits.webkit.org/280801@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
[webkit-changes] [WebKit/WebKit] bff583: REGRESSION(280537@main): Memory leak in `variation...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: bff583f365f736bcd119a893068eda88f2b5570e https://github.com/WebKit/WebKit/commit/bff583f365f736bcd119a893068eda88f2b5570e Author: Charlie Wolfe Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp Log Message: --- REGRESSION(280537@main): Memory leak in `variationAxes()` https://bugs.webkit.org/show_bug.cgi?id=276391 rdar://131414216 Reviewed by Aditya Keerthi. `CTFontCopyFontDescriptor()` returns an object with a +1 retain count. * Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.cpp: (WebCore::variationAxes): Canonical link: https://commits.webkit.org/280800@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
[webkit-changes] [WebKit/WebKit] f288b9: RemotePlayback watchAvailability callback can leak...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f288b9088d1b74b980c3b7a8d5add134f7689bdb https://github.com/WebKit/WebKit/commit/f288b9088d1b74b980c3b7a8d5add134f7689bdb Author: Ryan Reno Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/media/media-source/remoteplayback-availability-callback-does-not-leak-expected.txt A LayoutTests/media/media-source/remoteplayback-availability-callback-does-not-leak.html A LayoutTests/media/media-source/resources/remoteplayback-watch-availability-frame.html A LayoutTests/platform/glib/media/media-source/remoteplayback-availability-callback-does-not-leak-expected.txt M LayoutTests/resources/document-leak-test.js M Source/WebCore/Modules/remoteplayback/RemotePlayback.cpp M Source/WebCore/Modules/remoteplayback/RemotePlayback.h Log Message: --- RemotePlayback watchAvailability callback can leak the Document object. https://bugs.webkit.org/show_bug.cgi?id=276344 rdar://131345363 Reviewed by Ryosuke Niwa. RemotePlayback's watchAvailibility callback can leak captures, including the Document object, if cancelWatchAvailability is not called by the web author. This change will clear all registered callbacks when ActiveDOMObject::stop is called allowing the callback and captures to be garbage collected. * LayoutTests/platform/glib/media/media-source/remoteplayback-availability-callback-does-not-leak-expected.txt: Added. * LayoutTests/media/media-source/remoteplayback-availability-callback-does-not-leak-expected.txt: Added. * LayoutTests/media/media-source/remoteplayback-availability-callback-does-not-leak.html: * LayoutTests/media/media-source/resources/remoteplayback-watch-availability-frame.html: * LayoutTests/resources/document-leak-test.js: (iframeSentMessage): * Source/WebCore/Modules/remoteplayback/RemotePlayback.cpp: (WebCore::RemotePlayback::stop): * Source/WebCore/Modules/remoteplayback/RemotePlayback.h: Canonical link: https://commits.webkit.org/280799@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
[webkit-changes] [WebKit/WebKit] 746fa2: [iOS] Allow additional CoreMedia endpoint to suppo...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 746fa2c96a997d39da48e7886281c81c36ca04b3 https://github.com/WebKit/WebKit/commit/746fa2c96a997d39da48e7886281c81c36ca04b3 Author: Brent Fulgham Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WTF/wtf/PlatformHave.h M Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb.in Log Message: --- [iOS] Allow additional CoreMedia endpoint to support mediaserverd refactoring effort https://bugs.webkit.org/show_bug.cgi?id=276386 Reviewed by Per Arne Vollan. CoreMedia has complete additional refactoring work that requires WebKit to use an additional mach endpoint on mobile platforms. No new features are exposed by this mach port (existing features were moved to this connection). WebKit needs access to `com.apple.coremedia.mediaplaybackd.figmetriceventtimeline.xpc to support the new iOS 18 AVMetrics API: https://developer.apple.com/documentation/avfoundation/avmetrics/ * Source/WTF/wtf/PlatformHave.h: * Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb.in: Canonical link: https://commits.webkit.org/280798@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
[webkit-changes] [WebKit/WebKit] 5b02a3: GARDENING: REGRESSION (280643@main): [ macOS Sonom...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5b02a3c1df44051070526ae2fb376e1eaa0c612d https://github.com/WebKit/WebKit/commit/5b02a3c1df44051070526ae2fb376e1eaa0c612d Author: Anfernee Viduya Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/platform/ios/media/video-transformed-expected.txt M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- GARDENING: REGRESSION (280643@main): [ macOS Sonoma iOS wk2] media/video-transformed.html is constantly failing https://bugs.webkit.org/show_bug.cgi?id=276389 rdar://131412992 Unreviewed test gardening Re-baseline for iOS. Set expectation on mac wk2 since its a flaky failure. * LayoutTests/platform/ios/media/video-transformed-expected.txt: * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/280797@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
[webkit-changes] [WebKit/WebKit] aeeb8d: Drop WebPageTesting::m_identifier
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: aeeb8d70d6edbf7dcc681ab161715ed46bc31066 https://github.com/WebKit/WebKit/commit/aeeb8d70d6edbf7dcc681ab161715ed46bc31066 Author: Sihui Liu Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebKit/WebProcess/WebPage/WebPage.h M Source/WebKit/WebProcess/WebPage/WebPageTesting.cpp M Source/WebKit/WebProcess/WebPage/WebPageTesting.h Log Message: --- Drop WebPageTesting::m_identifier https://bugs.webkit.org/show_bug.cgi?id=276374 rdar://131393272 Reviewed by Charlie Wolfe. WebPage::m_identifier is unchanged after initialization, so we could just use that. * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKit/WebProcess/WebPage/WebPageTesting.cpp: (WebKit::WebPageTesting::WebPageTesting): (WebKit::WebPageTesting::~WebPageTesting): * Source/WebKit/WebProcess/WebPage/WebPageTesting.h: Canonical link: https://commits.webkit.org/280796@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
[webkit-changes] [WebKit/WebKit] 4e8caf: [Gardening]: [Sequoia+ Release wk2] Multiple tests...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4e8caf12aec0bbd989458728fd35f7b6d18ed66f https://github.com/WebKit/WebKit/commit/4e8caf12aec0bbd989458728fd35f7b6d18ed66f Author: Marta Darbinyan Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- [Gardening]: [Sequoia+ Release wk2] Multiple tests in imported/w3c/web-platform-tests/html/browsers/browsing-the-web are flaky failures https://bugs.webkit.org/show_bug.cgi?id=276392 rdar://131401031 Unreviewed test gardening. Adding test expectation * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/280795@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
[webkit-changes] [WebKit/WebKit] 3771d0: Drop WebFrame::getFrameInfo()
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 3771d038ccd1c794d63f6827c0410ba56f04ee4c https://github.com/WebKit/WebKit/commit/3771d038ccd1c794d63f6827c0410ba56f04ee4c Author: Sihui Liu Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebKit/WebProcess/WebPage/WebFrame.cpp M Source/WebKit/WebProcess/WebPage/WebFrame.h M Source/WebKit/WebProcess/WebPage/WebPage.cpp Log Message: --- Drop WebFrame::getFrameInfo() https://bugs.webkit.org/show_bug.cgi?id=276378 rdar://131395236 Reviewed by Charlie Wolfe. It is the same as WebFrame::info(). * Source/WebKit/WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::getFrameInfo): Deleted. * Source/WebKit/WebProcess/WebPage/WebFrame.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::getFrameInfo): Canonical link: https://commits.webkit.org/280794@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
[webkit-changes] [WebKit/WebKit] 280273: REGRESSION (280643@main): [ macOS Sonoma iOS wk2] ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 280273d47f7b25193c8ba6ff60b91a3b38ee0c0c https://github.com/WebKit/WebKit/commit/280273d47f7b25193c8ba6ff60b91a3b38ee0c0c Author: Anfernee Viduya Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/platform/ios/compositing/video/video-object-position-expected.txt A LayoutTests/platform/mac-ventura-wk1/compositing/video/video-object-position-expected.txt A LayoutTests/platform/mac-ventura/compositing/video/video-object-fit-expected.txt A LayoutTests/platform/mac-ventura/compositing/video/video-object-position-expected.txt M LayoutTests/platform/mac/compositing/video/video-object-fit-expected.txt A LayoutTests/platform/mac/compositing/video/video-object-position-expected.txt Log Message: --- REGRESSION (280643@main): [ macOS Sonoma iOS wk2] 2x compositing/video/video-object-* are constantly failing. https://bugs.webkit.org/show_bug.cgi?id=276260 rdar://131182735 Unreviewed test re-baseline Re-baselining constantly failing test. * LayoutTests/platform/ios/compositing/video/video-object-position-expected.txt: * LayoutTests/platform/mac-ventura/compositing/video/video-object-fit-expected.txt: Copied from LayoutTests/platform/mac/compositing/video/video-object-fit-expected.txt. * LayoutTests/platform/mac/compositing/video/video-object-fit-expected.txt: * LayoutTests/platform/mac/compositing/video/video-object-position-expected.txt: Copied from LayoutTests/platform/ios/compositing/video/video-object-position-expected.txt. Canonical link: https://commits.webkit.org/280793@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
[webkit-changes] [WebKit/WebKit] 971540: REGRESSION (280542@main): Unable to select text af...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 97154054bc3972ec909071838bba2c7cca25db47 https://github.com/WebKit/WebKit/commit/97154054bc3972ec909071838bba2c7cca25db47 Author: Aditya Keerthi Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/editing/cocoa/HTMLConverter.mm M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm Log Message: --- REGRESSION (280542@main): Unable to select text after using Writing Tools to summarize https://bugs.webkit.org/show_bug.cgi?id=276372 rdar://131388499 Reviewed by Richard Robinson. 280542@main introduced a Web Content hang when generating attributed strings for Writing Tools, due to the use of `HashMap::ensure` with a recursive method. Fix by using `HashMap::contains` instead. * Source/WebCore/editing/cocoa/HTMLConverter.mm: (hasAncestorQualifyingForWritingToolsPreservation): * Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm: (TEST(WritingTools, EphemeralSessionWithDeeplyNestedContent)): Canonical link: https://commits.webkit.org/280792@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
[webkit-changes] [WebKit/WebKit] b4bb62: Create PermissionsPolicy from Document
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b4bb6216f8304dd9e2bab2648aad261546d4dad5 https://github.com/WebKit/WebKit/commit/b4bb6216f8304dd9e2bab2648aad261546d4dad5 Author: Sihui Liu Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/Headers.cmake M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/dom/Document.cpp A Source/WebCore/html/Allowlist.h A Source/WebCore/html/OwnerPermissionsPolicyData.h M Source/WebCore/html/PermissionsPolicy.cpp M Source/WebCore/html/PermissionsPolicy.h M Source/WebCore/page/LocalFrame.h Log Message: --- Create PermissionsPolicy from Document https://bugs.webkit.org/show_bug.cgi?id=276353 rdar://131357201 Reviewed by Youenn Fablet. This patch makes a few changes that will help add support for permissions policy with site isolation: 1. Replace BitSet with HashSet for InheritedPolicy in PermissionsPolicy, so that we could use strongly typed enum for getting and setting, which makes the code easier to understand and it is more safe to use it in IPC later. (We will need to pass the policy between UI process and web processes). 2. Introduce OwnerPermissionsPolicyData struct, which contains information that Document needs from its owner element to compute permissions policy. With site isolation, Document may not have access to owner element, so we need to store the information elsewhere. In this patch, we store it in LocalFrame. 3. Allow PermissionsPolicy to be created from Document, and PermissionsPolicy can decide whether to construct object from owner element or owner policy. 4. Split Allowlist from PermissionsPolicy so that it's easier to add IPC serialization format for it later. The owner policy of LocalFrame is not set yet, so there is no behavior change. * Source/WebCore/Headers.cmake: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/dom/Document.cpp: (WebCore::Document::permissionsPolicy const): * Source/WebCore/html/Allowlist.h: Added. (WebCore::Allowlist::Allowlist): (WebCore::Allowlist::origins const): (WebCore::Allowlist::matches const): * Source/WebCore/html/OwnerPermissionsPolicyData.h: Added. (WebCore::OwnerPermissionsPolicyData::OwnerPermissionsPolicyData): * Source/WebCore/html/PermissionsPolicy.cpp: (WebCore::forEachFeature): (WebCore::parseAllowlist): (WebCore::PermissionsPolicy::processPermissionsPolicyAttribute): (WebCore::featureValueForOrigin): (WebCore::PermissionsPolicy::computeInheritedPolicyValueInContainer const): (WebCore::PermissionsPolicy::inheritedPolicyValueForFeature const): (WebCore::PermissionsPolicy::PermissionsPolicy): (WebCore::PermissionsPolicy::Allowlist::matches const): Deleted. (WebCore::index): Deleted. * Source/WebCore/html/PermissionsPolicy.h: (WebCore::PermissionsPolicy::PermissionsPolicy): (WebCore::PermissionsPolicy::inheritedPolicy const): (): Deleted. (WebCore::PermissionsPolicy::Allowlist::Allowlist): Deleted. * Source/WebCore/page/LocalFrame.h: Canonical link: https://commits.webkit.org/280791@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
[webkit-changes] [WebKit/WebKit] f6fd96: [cocoa] Improve respecting X-Content-Type-Options:...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f6fd96e4f3a29cd55a3bf351660298e6dddc0b9a https://github.com/WebKit/WebKit/commit/f6fd96e4f3a29cd55a3bf351660298e6dddc0b9a Author: Matthew Finkel Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/http/tests/mime/html-with-html-expected.txt A LayoutTests/http/tests/mime/html-with-html.html A LayoutTests/http/tests/mime/html-with-nosniff-html-expected.txt A LayoutTests/http/tests/mime/html-with-nosniff-html.html M LayoutTests/http/tests/mime/resources/.htaccess A LayoutTests/http/tests/mime/resources/html-document.html A LayoutTests/http/tests/mime/resources/nosniff-html.html A LayoutTests/platform/glib/http/tests/mime/html-with-nosniff-html-expected.txt M LayoutTests/platform/mac-wk1/TestExpectations M LayoutTests/platform/wincairo/TestExpectations M Source/WebCore/platform/network/ios/WebCoreURLResponseIOS.mm M Source/WebCore/platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm M Source/WebCore/platform/network/mac/WebCoreURLResponse.h M Source/WebCore/platform/network/mac/WebCoreURLResponse.mm M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm Log Message: --- [cocoa] Improve respecting X-Content-Type-Options: nosniff https://bugs.webkit.org/show_bug.cgi?id=274242 rdar://109049343 Reviewed by Alex Christensen. Respect the X-Content-Type-Options: nosniff header, instead of trying to guess the best MIME type for the document based on the file extension. Also convert isMainResourceLoad into an enum class, so it's consistent with isNoSniffSet. * LayoutTests/http/tests/mime/html-with-html-expected.txt: Added. * LayoutTests/http/tests/mime/html-with-html.html: Added. * LayoutTests/http/tests/mime/html-with-nosniff-html-expected.txt: Added. * LayoutTests/http/tests/mime/html-with-nosniff-html.html: Added. * LayoutTests/http/tests/mime/resources/.htaccess: * LayoutTests/http/tests/mime/resources/html-document.html: Added. * LayoutTests/http/tests/mime/resources/nosniff-html.html: Added. * LayoutTests/platform/glib/http/tests/mime/html-with-nosniff-html-expected.txt: Added. * LayoutTests/platform/mac-wk1/TestExpectations: * LayoutTests/platform/wincairo/TestExpectations: * Source/WebCore/platform/network/ios/WebCoreURLResponseIOS.mm: (WebCore::adjustMIMETypeIfNecessary): * Source/WebCore/platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm: (-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]): * Source/WebCore/platform/network/mac/WebCoreURLResponse.h: * Source/WebCore/platform/network/mac/WebCoreURLResponse.mm: (WebCore::adjustMIMETypeIfNecessary): * Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm: (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): Canonical link: https://commits.webkit.org/280790@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
[webkit-changes] [WebKit/WebKit] c35467: [WebGPU] OOB buffer access as offset is not consid...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c354673f409eb379afab8a289de881ad2fa968e3 https://github.com/WebKit/WebKit/commit/c354673f409eb379afab8a289de881ad2fa968e3 Author: Mike Wyrzykowski Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebGPU/WebGPU/RenderPassEncoder.mm Log Message: --- [WebGPU] OOB buffer access as offset is not considered in max vertex counts https://bugs.webkit.org/show_bug.cgi?id=276368 Reviewed by Tadeu Zagallo. Vertex / instance count calculations failed to account for the buffer offset. * Source/WebGPU/WebGPU/RenderPassEncoder.mm: (WebGPU::RenderPassEncoder::computeMininumVertexInstanceCount const): Canonical link: https://commits.webkit.org/280789@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
[webkit-changes] [WebKit/WebKit] 862f9b: [CSS] Use "enum class" for AllowedRules and RuleTy...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 862f9be99bf8270a492823b80df82404ebde1b1d https://github.com/WebKit/WebKit/commit/862f9be99bf8270a492823b80df82404ebde1b1d Author: Matthieu Dubet Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/css/parser/CSSParser.cpp M Source/WebCore/css/parser/CSSParserImpl.cpp M Source/WebCore/css/parser/CSSParserImpl.h M Source/WebCore/inspector/InspectorStyleSheet.cpp Log Message: --- [CSS] Use "enum class" for AllowedRules and RuleType in CSSParserImpl https://bugs.webkit.org/show_bug.cgi?id=276345 Reviewed by Tim Nguyen. * Source/WebCore/css/parser/CSSParser.cpp: (WebCore::CSSParser::parseRule): (WebCore::CSSParser::parseKeyframeRule): * Source/WebCore/css/parser/CSSParserImpl.cpp: (WebCore::CSSParserImpl::parseRule): (WebCore::CSSParserImpl::parseStyleSheet): (WebCore::CSSParserImpl::parseStyleSheetForInspector): (WebCore::computeNewAllowedRules): (WebCore::CSSParserImpl::consumeRuleList): (WebCore::CSSParserImpl::consumeAtRule): (WebCore::CSSParserImpl::consumeQualifiedRule): (WebCore::CSSParserImpl::consumeNestedGroupRules): (WebCore::CSSParserImpl::consumeFontFeatureValuesRule): (WebCore::CSSParserImpl::consumeKeyframesRule): (WebCore::CSSParserImpl::consumeBlockContent): * Source/WebCore/css/parser/CSSParserImpl.h: * Source/WebCore/inspector/InspectorStyleSheet.cpp: (WebCore::isValidRuleHeaderText): Canonical link: https://commits.webkit.org/280788@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
[webkit-changes] [WebKit/WebKit] 3c9d0f: [ews] Reduce accumulation of pending build-request...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 3c9d0f2ee7c56183f27826b2d845ffc5dbe12dff https://github.com/WebKit/WebKit/commit/3c9d0f2ee7c56183f27826b2d845ffc5dbe12dff Author: Aakash Jain Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Tools/CISupport/ews-build/events.py Log Message: --- [ews] Reduce accumulation of pending build-requests in testing environments https://bugs.webkit.org/show_bug.cgi?id=276373 Reviewed by Sam Sneddon. Reduce accumulation of pending build-requests by ignoring 90% of the PRs in testing environment. * Tools/CISupport/ews-build/events.py: (GitHubEventHandlerNoEdits.handle_pull_request): Canonical link: https://commits.webkit.org/280787@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
[webkit-changes] [WebKit/WebKit] ec6570: [Cocoa] Do not include libwebrtc static libraries ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: ec65702b7bf4cc2ed99ff22ce103a4cdb0f9f23a https://github.com/WebKit/WebKit/commit/ec65702b7bf4cc2ed99ff22ce103a4cdb0f9f23a Author: Youenn Fablet Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/ThirdParty/libwebrtc/Configurations/libabsl.xcconfig M Source/ThirdParty/libwebrtc/Configurations/libaom.xcconfig M Source/ThirdParty/libwebrtc/Configurations/libsrtp.xcconfig M Source/ThirdParty/libwebrtc/Configurations/libvpx.xcconfig M Source/ThirdParty/libwebrtc/Configurations/libwebm.xcconfig M Source/ThirdParty/libwebrtc/Configurations/libyuv.xcconfig M Source/ThirdParty/libwebrtc/Configurations/opus.xcconfig Log Message: --- [Cocoa] Do not include libwebrtc static libraries in SDK except for boringssl https://bugs.webkit.org/show_bug.cgi?id=268910 rdar://122345708 Reviewed by Elliott Williams and Eric Carlson. This is unnecessary since we are using the dylib instead, and avoids other applications using those libraries. * Source/ThirdParty/libwebrtc/Configurations/libabsl.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/libaom.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/libsrtp.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/libvpx.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/libwebm.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/libyuv.xcconfig: * Source/ThirdParty/libwebrtc/Configurations/opus.xcconfig: Canonical link: https://commits.webkit.org/280786@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
[webkit-changes] [WebKit/WebKit] a80eb4: Remove legacy padding/margin rules from MathML UA ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a80eb4d127b11cb78426338ba93a9fc309468757 https://github.com/WebKit/WebKit/commit/a80eb4d127b11cb78426338ba93a9fc309468757 Author: Frédéric Wang Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/width-height-001-expected.txt M LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/css-styling/width-height-001-expected.txt M LayoutTests/platform/glib/mathml/presentation/roots-expected.txt R LayoutTests/platform/gtk/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt R LayoutTests/platform/ios/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M LayoutTests/platform/ios/mathml/presentation/roots-expected.txt R LayoutTests/platform/mac/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M LayoutTests/platform/mac/mathml/presentation/roots-expected.txt M Source/WebCore/css/mathml.css Log Message: --- Remove legacy padding/margin rules from MathML UA stylesheet https://bugs.webkit.org/show_bug.cgi?id=276360 Reviewed by Rob Buis. These rules are not part of MathML Core's UA stylesheet [1] and were probably introduce for fine-tuning rendering of earlier MathML implementations, but they are a bit arbitrary, not done by other browsers and make some WPT tests fail. [1] https://w3c.github.io/mathml-core/#user-agent-stylesheet Canonical link: https://commits.webkit.org/280785@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
[webkit-changes] [WebKit/WebKit] 99bbc3: Race condition in report-processor between fetchin...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 99bbc3cc4b9e93b97035efcbd980245652de5223 https://github.com/WebKit/WebKit/commit/99bbc3cc4b9e93b97035efcbd980245652de5223 Author: Dewei Zhu Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Websites/perf.webkit.org/public/include/report-processor.php Log Message: --- Race condition in report-processor between fetching `tests` and `test_metrics` tables rdar://131324950 https://bugs.webkit.org/show_bug.cgi?id=276330 Reviewed by Ryosuke Niwa. The race condition is caused by `tests` and `test_metrics` not being fetched atomically. New `tests` and `test_metrics` entries can be inserted by another concurrent call after `tests` table fetch but before `test_metrics` fetch. `test_metrics` can refer to a new test and cause null reference in the array key by test id. The fix is to ignore new `test_metrics` based on following observation: 1. `ReportProcessor->fetch_tests` builds `ReportProcessor->tests` variable which is only used by `ReportProcessor->recursively_ensure_tests`. 2. `ReportProcessor->recursively_ensure_tests` handles missing tests / metrics by fetching them from database. * Websites/perf.webkit.org/public/include/report-processor.php: Add a null check on `$test['metrics']`. Canonical link: https://commits.webkit.org/280784@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
[webkit-changes] [WebKit/WebKit] 8c66f1: WebCodecs AudioDecoder callbacks leak the Document...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 8c66f1def4e54f5a404425465ad45c6471e99297 https://github.com/WebKit/WebKit/commit/8c66f1def4e54f5a404425465ad45c6471e99297 Author: Ryan Reno Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/http/tests/webcodecs/audio-decoder-callbacks-do-not-leak-expected.txt A LayoutTests/http/tests/webcodecs/audio-decoder-callbacks-do-not-leak.html A LayoutTests/http/tests/webcodecs/resources/audio-decoder-callbacks-frame.html M LayoutTests/http/tests/webcodecs/video-decoder-callbacks-do-not-leak-expected.txt M LayoutTests/http/tests/webcodecs/video-decoder-callbacks-do-not-leak.html M Source/WebCore/Modules/webcodecs/WebCodecsAudioDataOutputCallback.h M Source/WebCore/Modules/webcodecs/WebCodecsAudioDataOutputCallback.idl M Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.h M Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.idl M Source/WebCore/Sources.txt M Source/WebCore/WebCore.xcodeproj/project.pbxproj A Source/WebCore/bindings/js/JSWebCodecsAudioDecoderCustom.cpp Log Message: --- WebCodecs AudioDecoder callbacks leak the Document object https://bugs.webkit.org/show_bug.cgi?id=276322 rdar://131315241 Reviewed by Youenn Fablet. This is similar to VideoDecoder's callbacks leaking the Document object via holding references to the callback object but not ever releasing the references (280738@main). To fix the leak, we make the callback Weak and keep it alive via visitAdditionalChildren during the marking phase. * LayoutTests/http/tests/webcodecs/audio-decoder-callbacks-do-not-leak-expected.txt: Added. * LayoutTests/http/tests/webcodecs/audio-decoder-callbacks-do-not-leak.html: Copied from LayoutTests/http/tests/webcodecs/video-decoder-callbacks-do-not-leak.html. * LayoutTests/http/tests/webcodecs/resources/audio-decoder-callbacks-frame.html: Added. * LayoutTests/http/tests/webcodecs/video-decoder-callbacks-do-not-leak-expected.txt: * LayoutTests/http/tests/webcodecs/video-decoder-callbacks-do-not-leak.html: Fixed a typo in the description of the test. * Source/WebCore/Modules/webcodecs/WebCodecsAudioDataOutputCallback.h: * Source/WebCore/Modules/webcodecs/WebCodecsAudioDataOutputCallback.idl: * Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.h: (WebCore::WebCodecsAudioDecoder::outputCallbackConcurrently): (WebCore::WebCodecsAudioDecoder::errorCallbackConcurrently): * Source/WebCore/Modules/webcodecs/WebCodecsAudioDecoder.idl: * Source/WebCore/Sources.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/bindings/js/JSWebCodecsAudioDecoderCustom.cpp: Added. (WebCore::JSWebCodecsAudioDecoder::visitAdditionalChildren): Canonical link: https://commits.webkit.org/280783@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
[webkit-changes] [WebKit/WebKit] a2f2cb: Cherry-pick libvpx af599a0c5fc4529ce0b70368eb2ba63...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a2f2cbd39eb3d93293f890af12fa9b3e50987561 https://github.com/WebKit/WebKit/commit/a2f2cbd39eb3d93293f890af12fa9b3e50987561 Author: Youenn Fablet Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp8/encoder/firstpass.c M Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp9/encoder/vp9_firstpass.c M Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp9/encoder/vp9_ratectrl.c Log Message: --- Cherry-pick libvpx af599a0c5fc4529ce0b70368eb2ba63eda320fe9 and 4ac9c4ba32bde8beb86da2553f5e75a9c124fcc7 https://bugs.webkit.org/show_bug.cgi?id=276311 rdar://130809006 Reviewed by Jean-Yves Avenard. * Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp8/encoder/firstpass.c: (saturate_cast_double_to_int): (frame_max_bits): (define_gf_group): * Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp9/encoder/vp9_firstpass.c: (vp9_rc_get_second_pass_params): (vp9_twopass_postencode_update): * Source/ThirdParty/libwebrtc/Source/third_party/libvpx/source/libvpx/vp9/encoder/vp9_ratectrl.c: (vbr_rate_correction): Canonical link: https://commits.webkit.org/280782@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
[webkit-changes] [WebKit/WebKit] d7c7ac: [Flex] If a flex item's flex basis is definite, th...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d7c7ac671e9d0c07c350756af08c6a5db7b61a94 https://github.com/WebKit/WebKit/commit/d7c7ac671e9d0c07c350756af08c6a5db7b61a94 Author: Alan Baradlay Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/fast/flexbox/percent-child-with-flex-basis-flex-item-expected.html A LayoutTests/fast/flexbox/percent-child-with-flex-basis-flex-item.html M Source/WebCore/rendering/RenderFlexibleBox.cpp M Source/WebCore/rendering/RenderFlexibleBox.h Log Message: --- [Flex] If a flex item's flex basis is definite, then its post-flexing main size is also definite. https://bugs.webkit.org/show_bug.cgi?id=276349 Reviewed by Antti Koivisto. This is in preparation for fixing css/css-flexbox/flex-minimum-height-flex-items-025.html https://drafts.csswg.org/css-flexbox-1/#definite-sizes "If a flex item's flex basis is definite, then its post-flexing main size is also definite." Let's resolve precent child height against the flex-basis, instead of the flex item's height value. (note that childMainSizeIsDefinite() returns an adjusted flex-basis value turning auto into fixed if logical height is fixed) * LayoutTests/fast/flexbox/percent-child-with-flex-basis-flex-item-expected.html: Added. * LayoutTests/fast/flexbox/percent-child-with-flex-basis-flex-item.html: Added. * Source/WebCore/rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::usedChildOverridingMainSizeForPercentageResolution): (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): * Source/WebCore/rendering/RenderFlexibleBox.h: Canonical link: https://commits.webkit.org/280781@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
[webkit-changes] [WebKit/WebKit] e56299: Crash in WebCore::PlaybackSessionModelMediaElement...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e56299b4f1d9bb84f69ad5cb7ee24fa6fc93eb56 https://github.com/WebKit/WebKit/commit/e56299b4f1d9bb84f69ad5cb7ee24fa6fc93eb56 Author: Andy Estes Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/platform/cocoa/PlaybackSessionModelMediaElement.mm Log Message: --- Crash in WebCore::PlaybackSessionModelMediaElement::exitFullscreen due to null m_mediaElement https://bugs.webkit.org/show_bug.cgi?id=276341 rdar://131143888 Reviewed by Jean-Yves Avenard and Eric Carlson. Despite an ASSERT(element) in PlaybackSessionModelMediaElement::exitFullscreen, crash reports indicate that m_mediaElement can be null when exitFullscreen is called. Resolved this by null-checking m_mediaElement prior to dereferencing it (in exitFullscreen and elsewhere); the debug assertion is left to help investigate why m_mediaElement is unexpectedly null. While here, updated PlaybackSessionModelMediaElement to follow our latest smart pointer usage guidelines. * Source/WebCore/platform/cocoa/PlaybackSessionModelMediaElement.mm: (WebCore::PlaybackSessionModelMediaElement::setMediaElement): (WebCore::PlaybackSessionModelMediaElement::play): (WebCore::PlaybackSessionModelMediaElement::pause): (WebCore::PlaybackSessionModelMediaElement::togglePlayState): (WebCore::PlaybackSessionModelMediaElement::beginScrubbing): (WebCore::PlaybackSessionModelMediaElement::endScrubbing): (WebCore::PlaybackSessionModelMediaElement::seekToTime): (WebCore::PlaybackSessionModelMediaElement::fastSeek): (WebCore::PlaybackSessionModelMediaElement::beginScanningForward): (WebCore::PlaybackSessionModelMediaElement::beginScanningBackward): (WebCore::PlaybackSessionModelMediaElement::endScanning): (WebCore::PlaybackSessionModelMediaElement::setDefaultPlaybackRate): (WebCore::PlaybackSessionModelMediaElement::setPlaybackRate): (WebCore::PlaybackSessionModelMediaElement::selectAudioMediaOption): (WebCore::PlaybackSessionModelMediaElement::selectLegibleMediaOption): (WebCore::PlaybackSessionModelMediaElement::togglePictureInPicture): (WebCore::PlaybackSessionModelMediaElement::toggleInWindowFullscreen): (WebCore::PlaybackSessionModelMediaElement::enterFullscreen): (WebCore::PlaybackSessionModelMediaElement::exitFullscreen): (WebCore::PlaybackSessionModelMediaElement::setMuted): (WebCore::PlaybackSessionModelMediaElement::setVolume): (WebCore::PlaybackSessionModelMediaElement::setPlayingOnSecondScreen): (WebCore::PlaybackSessionModelMediaElement::spatialTrackingLabel const): (WebCore::PlaybackSessionModelMediaElement::setSpatialTrackingLabel): (WebCore::PlaybackSessionModelMediaElement::sendRemoteCommand): (WebCore::PlaybackSessionModelMediaElement::updateMediaSelectionOptions): (WebCore::PlaybackSessionModelMediaElement::playbackStartedTime const): (WebCore::PlaybackSessionModelMediaElement::duration const): (WebCore::PlaybackSessionModelMediaElement::currentTime const): (WebCore::PlaybackSessionModelMediaElement::bufferedTime const): (WebCore::PlaybackSessionModelMediaElement::isPlaying const): (WebCore::PlaybackSessionModelMediaElement::isStalled const): (WebCore::PlaybackSessionModelMediaElement::defaultPlaybackRate const): (WebCore::PlaybackSessionModelMediaElement::playbackRate const): (WebCore::PlaybackSessionModelMediaElement::seekableRanges const): (WebCore::PlaybackSessionModelMediaElement::seekableTimeRangesLastModifiedTime const): (WebCore::PlaybackSessionModelMediaElement::liveUpdateInterval const): (WebCore::PlaybackSessionModelMediaElement::canPlayFastReverse const): (WebCore::PlaybackSessionModelMediaElement::audioMediaSelectionOptions const): (WebCore::PlaybackSessionModelMediaElement::legibleMediaSelectionOptions const): (WebCore::PlaybackSessionModelMediaElement::legibleMediaSelectedIndex const): (WebCore::PlaybackSessionModelMediaElement::externalPlaybackEnabled const): (WebCore::PlaybackSessionModelMediaElement::externalPlaybackTargetType const): (WebCore::PlaybackSessionModelMediaElement::externalPlaybackLocalizedDeviceName const): (WebCore::PlaybackSessionModelMediaElement::wirelessVideoPlaybackDisabled const): (WebCore::PlaybackSessionModelMediaElement::isMuted const): (WebCore::PlaybackSessionModelMediaElement::volume const): (WebCore::PlaybackSessionModelMediaElement::isPictureInPictureSupported const): (WebCore::PlaybackSessionModelMediaElement::isPictureInPictureActive const): (WebCore::PlaybackSessionModelMediaElement::isInWindowFullscreenActive const): (WebCore::PlaybackSessionModelMediaElement::logIdentifier const): (WebCore::PlaybackSessionModelMediaElement::loggerPtr const): Canonical link: https://commits.webkit.org/280780@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
[webkit-changes] [WebKit/WebKit] 70f0ea: WebCore::LocalFrameView::removeViewportConstrained...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 70f0eae33d9394e02711e2ac512891d3fe56eaf8 https://github.com/WebKit/WebKit/commit/70f0eae33d9394e02711e2ac512891d3fe56eaf8 Author: Alan Baradlay Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/fast/dynamic/replacement-destroys-page-crash-expected.txt A LayoutTests/fast/dynamic/replacement-destroys-page-crash.html M Source/WebCore/page/LocalFrameView.cpp Log Message: --- WebCore::LocalFrameView::removeViewportConstrainedObject crash while destroying Page https://bugs.webkit.org/show_bug.cgi?id=276342 Reviewed by Wenson Hsieh. 1. ReplacementFragment creates a short-lived Page object on the stack to sanitize content (see createPageForSanitizingWebContent) 2. When this Page goes out of scope, as part of the destruction process we run certain cleanup steps (see various willBeDestroyed functions). Normally these cleanup steps are initiated by navigating away from documents (i.e. loading new pages) For regular Pages by the time we get to Page's d'tor (if ever), we already finished running these steps. * LocalFrameView::removeViewportConstrainedObject: page->chrome().client() points to empty chrome client in this case (temp Page is constructed using pageConfigurationWithEmptyClients()) * LayoutTests/fast/dynamic/replacement-destroys-page-crash-expected.txt: Added. * LayoutTests/fast/dynamic/replacement-destroys-page-crash.html: Added. Canonical link: https://commits.webkit.org/280779@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
[webkit-changes] [WebKit/WebKit] 728dc2: Update few `animations/3d` tests to 'reftests' and...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 728dc2a073ec9981b12aa9dd64d77fb889bc4f90 https://github.com/WebKit/WebKit/commit/728dc2a073ec9981b12aa9dd64d77fb889bc4f90 Author: Ahmad Saleem Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/animations/3d/change-transform-in-end-event-expected.html M LayoutTests/animations/3d/change-transform-in-end-event.html A LayoutTests/animations/3d/state-at-end-event-transform-expected.html M LayoutTests/animations/3d/state-at-end-event-transform.html R LayoutTests/platform/glib/animations/3d/change-transform-in-end-event-expected.txt R LayoutTests/platform/glib/animations/3d/state-at-end-event-transform-expected.txt R LayoutTests/platform/gtk/animations/3d/change-transform-in-end-event-expected.png R LayoutTests/platform/gtk/animations/3d/state-at-end-event-transform-expected.png R LayoutTests/platform/ios/animations/3d/change-transform-in-end-event-expected.txt R LayoutTests/platform/ios/animations/3d/state-at-end-event-transform-expected.txt R LayoutTests/platform/mac/animations/3d/change-transform-in-end-event-expected.png R LayoutTests/platform/mac/animations/3d/change-transform-in-end-event-expected.txt R LayoutTests/platform/mac/animations/3d/state-at-end-event-transform-expected.png R LayoutTests/platform/mac/animations/3d/state-at-end-event-transform-expected.txt R LayoutTests/platform/wincairo/animations/3d/change-transform-in-end-event-expected.txt R LayoutTests/platform/wincairo/animations/3d/state-at-end-event-transform-expected.txt Log Message: --- Update few `animations/3d` tests to 'reftests' and other changes https://bugs.webkit.org/show_bug.cgi?id=275903 rdar://problem/130592835 Reviewed by Antoine Quint. Merge: https://github.com/chromium/chromium/commit/cef1d5e5fa0c6fc13e2c713450ab15f407503b13 and https://github.com/chromium/chromium/commit/a42fa64e570f50483abc140f81e7e033d3ac05cd It updates the tests as 'reftests' and also remove any prefixes (i.e., -webkit-) etc. * LayoutTests/animations/3d/change-transform-in-end-event.html: * LayoutTests/animations/3d/state-at-end-event-transform.html: * LayoutTests/platform/glib/animations/3d/change-transform-in-end-event-expected.txt: Removed. * LayoutTests/platform/glib/animations/3d/state-at-end-event-transform-expected.txt: Removed. * LayoutTests/platform/gtk/animations/3d/change-transform-in-end-event-expected.png: Removed. * LayoutTests/platform/gtk/animations/3d/state-at-end-event-transform-expected.png: Removed. * LayoutTests/platform/ios/animations/3d/change-transform-in-end-event-expected.txt: Removed. * LayoutTests/platform/ios/animations/3d/state-at-end-event-transform-expected.txt: Removed. * LayoutTests/platform/mac/animations/3d/change-transform-in-end-event-expected.png: Removed. * LayoutTests/platform/mac/animations/3d/change-transform-in-end-event-expected.txt: Removed. * LayoutTests/platform/mac/animations/3d/state-at-end-event-transform-expected.png: Removed. * LayoutTests/platform/mac/animations/3d/state-at-end-event-transform-expected.txt: Removed. * LayoutTests/platform/wincairo/animations/3d/change-transform-in-end-event-expected.txt: Removed. * LayoutTests/platform/wincairo/animations/3d/state-at-end-event-transform-expected.txt: Removed. * LayoutTests/animations/3d/change-transform-in-end-event-expected.html: Test Case Expectation * LayoutTests/animations/3d/state-at-end-event-transform-expected.html: Ditto Canonical link: https://commits.webkit.org/280778@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
[webkit-changes] [WebKit/WebKit] dc849c: Enable FTL on Windows
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dc849c8a2bb93c274ed63817818bda68ba05bb7e https://github.com/WebKit/WebKit/commit/dc849c8a2bb93c274ed63817818bda68ba05bb7e Author: Ian Grunert Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/JavaScriptCore/assembler/ProbeContext.cpp M Source/JavaScriptCore/assembler/ProbeContext.h M Source/JavaScriptCore/assembler/testmasm.cpp M Source/JavaScriptCore/b3/B3LowerToAir.cpp M Source/JavaScriptCore/b3/B3Validate.cpp M Source/JavaScriptCore/b3/air/opcode_generator.rb M Source/JavaScriptCore/b3/air/testair.cpp M Source/JavaScriptCore/b3/testb3.h M Source/JavaScriptCore/b3/testb3_2.cpp M Source/JavaScriptCore/b3/testb3_3.cpp M Source/JavaScriptCore/b3/testb3_4.cpp M Source/JavaScriptCore/b3/testb3_5.cpp M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp M Source/JavaScriptCore/jit/RegisterSet.cpp M Source/JavaScriptCore/llint/LowLevelInterpreter.asm M Source/JavaScriptCore/runtime/Options.cpp M Source/JavaScriptCore/wasm/WasmBBQJIT.cpp M Source/JavaScriptCore/wasm/WasmBBQJIT.h M Source/JavaScriptCore/wasm/WasmBBQJIT64.cpp M Source/JavaScriptCore/wasm/WasmIRGeneratorHelpers.h M Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp M Source/cmake/OptionsJSCOnly.cmake M Source/cmake/OptionsWin.cmake Log Message: --- Enable FTL on Windows https://bugs.webkit.org/show_bug.cgi?id=145366 Reviewed by Yusuke Suzuki. Disabling BBQ and OMG JIT for now, there's some edge cases which are currently broken. Fixes to testmasm, broken by previous sysv abi work. B3 float mod tests were broken on Windows due to differences between fmod(double, double) used within MathCommon fmodDouble, and the fmod(float, float) used within the tests. Using fmodl in the tests so they match behaviour with compiled B3. The countLeadingZero implementation for testClz* tests had an off-by-one error on Windows - using builtin __lzcnt64 and __lzcnt instead. Had to precommit stack memory for testCallFunctionWithHellaArguments3 to avoid accessing stack memory past the stack guard page. * Source/JavaScriptCore/assembler/ProbeContext.cpp: (JSC::Probe::flushDirtyStackPages): * Source/JavaScriptCore/assembler/ProbeContext.h: * Source/JavaScriptCore/assembler/testmasm.cpp: (JSC::invoke): (JSC::testStoreBaseIndex): * Source/JavaScriptCore/b3/B3LowerToAir.cpp: * Source/JavaScriptCore/b3/B3Validate.cpp: * Source/JavaScriptCore/b3/air/opcode_generator.rb: * Source/JavaScriptCore/b3/air/testair.cpp: * Source/JavaScriptCore/b3/testb3.h: (invoke): * Source/JavaScriptCore/b3/testb3_2.cpp: (testModArgFloat): (testModArgsFloat): (testModArgImmFloat): (testModImmArgFloat): (testModImmsFloat): * Source/JavaScriptCore/b3/testb3_3.cpp: (countLeadingZero): * Source/JavaScriptCore/b3/testb3_4.cpp: (testLoadFromFramePointer): * Source/JavaScriptCore/b3/testb3_5.cpp: (preCommitStackMemory): (testCallFunctionWithHellaArguments3): * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * Source/JavaScriptCore/jit/RegisterSet.cpp: (JSC::RegisterSetBuilder::ftlCalleeSaveRegisters): * Source/JavaScriptCore/llint/LowLevelInterpreter.asm: * Source/JavaScriptCore/runtime/Options.cpp: (JSC::Options::notifyOptionsChanged): * Source/JavaScriptCore/wasm/WasmBBQJIT.cpp: (JSC::Wasm::BBQJITImpl::RegisterBinding::none): * Source/JavaScriptCore/wasm/WasmBBQJIT.h: * Source/JavaScriptCore/wasm/WasmBBQJIT64.cpp: (JSC::Wasm::BBQJITImpl::BBQJIT::addSIMDV_V): * Source/JavaScriptCore/wasm/WasmIRGeneratorHelpers.h: (JSC::Wasm::buildEntryBufferForCatchSIMD): (JSC::Wasm::buildEntryBufferForCatchNoSIMD): * Source/JavaScriptCore/wasm/WasmOMGIRGenerator.cpp: * Source/cmake/OptionsJSCOnly.cmake: * Source/cmake/OptionsWin.cmake: Canonical link: https://commits.webkit.org/280777@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
[webkit-changes] [WebKit/WebKit] 6f5b85: REGRESSION(280734@main): ASSERTION FAILED: isInt32...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 6f5b850ee2062debdacd43ff5df16aef69f80de8 https://github.com/WebKit/WebKit/commit/6f5b850ee2062debdacd43ff5df16aef69f80de8 Author: Yijia Huang Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/JavaScriptCore/runtime/OrderedHashTableHelper.h Log Message: --- REGRESSION(280734@main): ASSERTION FAILED: isInt32() in JSC::JSValue::asInt32() for js/basic-map.html https://bugs.webkit.org/show_bug.cgi?id=276333 rdar://131336271 Reviewed by Keith Miller and Mark Lam. OrderedHashTableHelper::transitAndNext may return the latest storage in the storage transition chain due to table rehashing. So, nextAndUpdateIterationEntry should update the iteration entry in the non-obsolete storage. * Source/JavaScriptCore/runtime/OrderedHashTableHelper.h: (JSC::OrderedHashTableHelper::nextAndUpdateIterationEntry): Canonical link: https://commits.webkit.org/280776@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
[webkit-changes] [WebKit/WebKit] dc84c8: nw_resolver object is getting leaked in DNSResolve...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dc84c8313fa72cc6280da47971fe6a9c2248f649 https://github.com/WebKit/WebKit/commit/dc84c8313fa72cc6280da47971fe6a9c2248f649 Author: Chris Dumez Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h M Source/WebCore/platform/network/cf/DNSResolveQueueCFNet.cpp Log Message: --- nw_resolver object is getting leaked in DNSResolveQueueCFNet::performDNSLookup() https://bugs.webkit.org/show_bug.cgi?id=276348 rdar://129599341 Reviewed by Ben Nham. In performDNSLookup(), we call `nw_resolver_set_update_handler()` and pass it the nw_resolver. This call will retain the nw_resolver until `nw_resolver_cancel()` is called on the resolver. However, we were never calling `nw_resolver_cancel()` and the resolver was thus leaking. * Source/WebCore/platform/network/cf/DNSResolveQueueCFNet.cpp: (WebCore::DNSResolveQueueCFNet::performDNSLookup): Canonical link: https://commits.webkit.org/280775@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
[webkit-changes] [WebKit/WebKit] 0867cd: Remove unused Acid1 baselines
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 0867cd49d9ccb021aaeba709a0ba5054584d6fe9 https://github.com/WebKit/WebKit/commit/0867cd49d9ccb021aaeba709a0ba5054584d6fe9 Author: Sam Sneddon Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: R LayoutTests/platform/glib/css1/box_properties/acid_test-expected.txt R LayoutTests/platform/glib/fast/block/basic/011-expected.txt R LayoutTests/platform/gtk/css1/box_properties/acid_test-expected.png R LayoutTests/platform/ios/css1/box_properties/acid_test-expected.txt R LayoutTests/platform/ios/fast/block/basic/011-expected.txt R LayoutTests/platform/mac-ventura/css1/box_properties/acid_test-expected.txt R LayoutTests/platform/mac-ventura/fast/block/basic/011-expected.txt R LayoutTests/platform/mac/css1/box_properties/acid_test-expected.png R LayoutTests/platform/mac/css1/box_properties/acid_test-expected.txt R LayoutTests/platform/mac/fast/block/basic/011-expected.png R LayoutTests/platform/mac/fast/block/basic/011-expected.txt R LayoutTests/platform/wincairo/css1/box_properties/acid_test-expected.txt R LayoutTests/platform/wincairo/fast/block/basic/011-expected.txt Log Message: --- Remove unused Acid1 baselines https://bugs.webkit.org/show_bug.cgi?id=276326 Unreviewed test gardening. * LayoutTests/platform/glib/css1/box_properties/acid_test-expected.txt: Removed. * LayoutTests/platform/glib/fast/block/basic/011-expected.txt: Removed. * LayoutTests/platform/gtk/css1/box_properties/acid_test-expected.png: Removed. * LayoutTests/platform/ios/css1/box_properties/acid_test-expected.txt: Removed. * LayoutTests/platform/ios/fast/block/basic/011-expected.txt: Removed. * LayoutTests/platform/mac-ventura/css1/box_properties/acid_test-expected.txt: Removed. * LayoutTests/platform/mac-ventura/fast/block/basic/011-expected.txt: Removed. * LayoutTests/platform/mac/css1/box_properties/acid_test-expected.png: Removed. * LayoutTests/platform/mac/css1/box_properties/acid_test-expected.txt: Removed. * LayoutTests/platform/mac/fast/block/basic/011-expected.png: Removed. * LayoutTests/platform/mac/fast/block/basic/011-expected.txt: Removed. * LayoutTests/platform/wincairo/css1/box_properties/acid_test-expected.txt: Removed. * LayoutTests/platform/wincairo/fast/block/basic/011-expected.txt: Removed. Canonical link: https://commits.webkit.org/280774@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
[webkit-changes] [WebKit/WebKit] 37d0d3: [GTK][WPE] Include fix-glib-resources-depfile.pl i...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 37d0d336e32d21b837d3eb71a4128914b1d60e6d https://github.com/WebKit/WebKit/commit/37d0d336e32d21b837d3eb71a4128914b1d60e6d Author: Roope Salmi Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Tools/gtk/manifest.txt.in M Tools/wpe/manifest.txt.in Log Message: --- [GTK][WPE] Include fix-glib-resources-depfile.pl in release packages https://bugs.webkit.org/show_bug.cgi?id=276250 Reviewed by Michael Catanzaro. Added in https://github.com/WebKit/WebKit/pull/26786, but it was not included in release packages. * Tools/gtk/manifest.txt.in: * Tools/wpe/manifest.txt.in: Canonical link: https://commits.webkit.org/280773@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
[webkit-changes] [WebKit/WebKit] 7eea65: Lower more ops in B3::lowerInt64
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7eea6584b96f026e68fec89a6b660d7f6a245e44 https://github.com/WebKit/WebKit/commit/7eea6584b96f026e68fec89a6b660d7f6a245e44 Author: Angelos Oikonomopoulos Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/JavaScriptCore/b3/B3LowerInt64.cpp M Source/JavaScriptCore/b3/B3LowerToAir32_64.cpp Log Message: --- Lower more ops in B3::lowerInt64 https://bugs.webkit.org/show_bug.cgi?id=276362 Reviewed by Justin Michaud. Pass-through many ops that don't need lowering and implement some more straightforward lowerings. Handle HeapRanges when splitting a Load or Store. There's no reasonable lowering for BitwiseCast, so handle it in B3LowerToAir32_64.cpp instead. * Source/JavaScriptCore/b3/B3LowerInt64.cpp: * Source/JavaScriptCore/b3/B3LowerToAir32_64.cpp: Canonical link: https://commits.webkit.org/280772@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
[webkit-changes] [WebKit/WebKit] 37dfb4: Calling configure on WebCodecs Video Encoder trigg...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 37dfb4fa3c73132a0d3b5d90aa0cb6253cad64bb https://github.com/WebKit/WebKit/commit/37dfb4fa3c73132a0d3b5d90aa0cb6253cad64bb Author: Youenn Fablet Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: A LayoutTests/http/wpt/webcodecs/encode-bitrate-change-expected.txt A LayoutTests/http/wpt/webcodecs/encode-bitrate-change.html M LayoutTests/platform/glib/TestExpectations M Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.cpp M Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.h M Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoderConfig.h M Source/WebCore/platform/VideoEncoder.h M Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoEncoder.cpp M Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoEncoder.h M Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp M Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h Log Message: --- Calling configure on WebCodecs Video Encoder triggers a new key frame each time even if the configuration is only changing the bitrate https://bugs.webkit.org/show_bug.cgi?id=261402 rdar://115482127 Reviewed by Jean-Yves Avenard. Check the new configuration is the same as the new one, except for bitrate and framerate. If that is the case, we call setRate instead of recreating the encoder. Implement setRate for VPX and remote encoders. Covered by newly added test. * LayoutTests/http/wpt/webcodecs/encode-bitrate-change-expected.txt: Added. * LayoutTests/http/wpt/webcodecs/encode-bitrate-change.html: Added. * LayoutTests/platform/glib/TestExpectations: * Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.cpp: (WebCore::WebCodecsVideoEncoder::updateRates): (WebCore::WebCodecsVideoEncoder::configure): * Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoder.h: * Source/WebCore/Modules/webcodecs/WebCodecsVideoEncoderConfig.h: (WebCore::isSameConfigurationExceptBitrateAndFramerate): * Source/WebCore/platform/VideoEncoder.h: * Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoEncoder.cpp: (WebCore::LibWebRTCVPXVideoEncoder::setRates): (WebCore::computeAllocation): (WebCore::LibWebRTCVPXInternalVideoEncoder::initialize): (WebCore::LibWebRTCVPXInternalVideoEncoder::encode): (WebCore::LibWebRTCVPXInternalVideoEncoder::setRates): * Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoEncoder.h: * Source/WebKit/WebProcess/GPU/media/RemoteVideoCodecFactory.cpp: (WebKit::RemoteVideoEncoder::setRates): (WebKit::RemoteVideoEncoder::flush): * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp: (WebKit::setEncodeRatesCallback): (WebKit::LibWebRTCCodecs::setEncodeRates): * Source/WebKit/WebProcess/GPU/webrtc/LibWebRTCCodecs.h: Originally-landed-as: 4c9425f9126b. rdar://115482127 Canonical link: https://commits.webkit.org/280771@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
[webkit-changes] [WebKit/WebKit] e949df: [GTK][WPE][a11y] Allow receiving event listener si...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e949df8b32a3700cf8ef333c33b9c34badcdca8f https://github.com/WebKit/WebKit/commit/e949df8b32a3700cf8ef333c33b9c34badcdca8f Author: Georges Basile Stavracas Neto Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebKit/UIProcess/Launcher/glib/XDGDBusProxy.cpp Log Message: --- [GTK][WPE][a11y] Allow receiving event listener signals from the a11y bus https://bugs.webkit.org/show_bug.cgi?id=240522 Reviewed by Michael Catanzaro. When a process - usually an AT - registers event listeners, AT-SPI broadcasts the EventListenerRegistered signal so that clients know about it. The EventListenerDeregistered signal is broadcasted when event listeners are removed. The web process monitors for these signal so that it can reduce the number of signal emissions on the a11y bus. Now consider that the web process runs in a sandbox (most of the time anyway), either by using Bubblewrap directly, or flatpak-spawn. These sandboxing mechanisms filter D-Bus messages and signals, including on the a11y bus. And here's the problem: both of them end up preventing the web process to receive the event listener signals! As a consequence, the web process never learns when the user turns on or off the screen reader, or auxiliary accessibility programs. And without that knowledge, the web process doesn't emit any event necessary for proper accessibility. Allow the Bubblewrap sandbox to receive the EventListenerRegistered and EventListenerDeregistered signals from org.a11y.atspi.Registry. This is safe, as there is insufficient information in these signals for any malicious usage, and the bus name in the messages are already from apps that purposefully advertise themselves. A similar patch is proposed for Flatpak, and there's nothing to be done from WebKit side to influence that. * Source/WebKit/UIProcess/Launcher/glib/XDGDBusProxy.cpp: (WebKit::XDGDBusProxy::accessibilityProxy): Canonical link: https://commits.webkit.org/280770@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
[webkit-changes] [WebKit/WebKit] ee913e: [WebGPU] https://compute.toys/view/1173 fails to load
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: ee913e1ce61d355cdc97cb330cc57639578f2449 https://github.com/WebKit/WebKit/commit/ee913e1ce61d355cdc97cb330cc57639578f2449 Author: Tadeu Zagallo Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp M Source/WebGPU/WGSL/tests/valid/packing.wgsl Log Message: --- [WebGPU] https://compute.toys/view/1173 fails to load https://bugs.webkit.org/show_bug.cgi?id=276262 rdar://131184432 Reviewed by Mike Wyrzykowski. There was an incorrect condition that we should only emit a packed type if it was constructible. This was implemented to fix a test, but the test still passes after changing it back, which makes me think there was an underlying issue that has already been fixed. * Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp: (WGSL::Metal::FunctionDefinitionWriter::visit): * Source/WebGPU/WGSL/tests/valid/packing.wgsl: Canonical link: https://commits.webkit.org/280769@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
[webkit-changes] [WebKit/WebKit] df1a1c: Support border/margin/padding on msub/msup/msubsup
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: df1a1c2be0c95f797e04301be8b8471af5176537 https://github.com/WebKit/WebKit/commit/df1a1c2be0c95f797e04301be8b8471af5176537 Author: Frédéric Wang Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/border-002-expected.txt M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt M LayoutTests/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt R LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/border-002-expected.txt M LayoutTests/platform/glib/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/margin-003-expected.txt M LayoutTests/platform/gtk/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M LayoutTests/platform/ios/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M LayoutTests/platform/mac/imported/w3c/web-platform-tests/mathml/relations/css-styling/padding-border-margin/padding-002-expected.txt M Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp Log Message: --- Support border/margin/padding on msub/msup/msubsup https://bugs.webkit.org/show_bug.cgi?id=276314 Reviewed by Rob Buis. This implements support for border/margin/padding on the msub, msup and msubsup elements according to the rules from MathML Core: - When handling boxes of children during math layout, we consider *margin* boxes. `recomputeLogicalWidth()` is already called during the layout of children to set the inline margins (this does not seem enough for preferred width calculations though, but will be considered in follow-up patches). This patchs adds a logic to call `computeAndSetBlockDirectionMargins()` on each child in order to set their block margins. - Current math layout is modified so that padding/border are added around the current layout in order to obtain the border box. Canonical link: https://commits.webkit.org/280768@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
[webkit-changes] [WebKit/WebKit] b7b3da: Adopt smart pointers for HistoryController
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b7b3da8d3c2032ab1e99bec4a5c2a70f80cc2c4d https://github.com/WebKit/WebKit/commit/b7b3da8d3c2032ab1e99bec4a5c2a70f80cc2c4d Author: Rob Buis Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/loader/HistoryController.cpp Log Message: --- Adopt smart pointers for HistoryController https://bugs.webkit.org/show_bug.cgi?id=276067 Reviewed by Chris Dumez. Adopt smart pointers for HistoryController based on [alpha.webkit.UncountedCallArgsChecker] warnings. * Source/WebCore/loader/HistoryController.cpp: (WebCore::HistoryController::saveDocumentAndScrollState): (WebCore::HistoryController::updateForStandardLoad): (WebCore::HistoryController::updateForClientRedirect): (WebCore::HistoryController::recursiveUpdateForCommit): (WebCore::HistoryController::updateBackForwardListClippedAtTarget): (WebCore::HistoryController::pushState): (WebCore::HistoryController::replaceState): Canonical link: https://commits.webkit.org/280767@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
[webkit-changes] [WebKit/WebKit] c14f4b: [WPE][WebDriver] MiniBrowser: forward display in u...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c14f4ba2a83b3af3b3845c672e775d913eaa34ce https://github.com/WebKit/WebKit/commit/c14f4ba2a83b3af3b3845c672e775d913eaa34ce Author: Lauro Moura Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Tools/MiniBrowser/wpe/main.cpp Log Message: --- [WPE][WebDriver] MiniBrowser: forward display in use for new automated views https://bugs.webkit.org/show_bug.cgi?id=276323 Reviewed by Carlos Garcia Campos. If we don't pass the display, new views might end up using the default display, overriding the display we set in the initial view through `--headless`. * Tools/MiniBrowser/wpe/main.cpp: (createWebViewForAutomationCallback): Canonical link: https://commits.webkit.org/280766@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
[webkit-changes] [WebKit/WebKit] 5f4a06: [iOS] Allow media to play in lock screen
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5f4a06b21d82b347d6f091ca79af9bcfa3a8a834 https://github.com/WebKit/WebKit/commit/5f4a06b21d82b347d6f091ca79af9bcfa3a8a834 Author: Youenn Fablet Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/WebCore/html/HTMLVideoElement.cpp M Source/WebCore/html/HTMLVideoElement.h M Source/WebCore/page/Page.cpp M Source/WebCore/page/Page.h M Source/WebCore/page/PageConfiguration.h M Source/WebCore/platform/graphics/MediaPlayer.cpp M Source/WebCore/platform/graphics/MediaPlayer.h M Source/WebCore/platform/graphics/avfoundation/SampleBufferDisplayLayer.h M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm M Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxyConfiguration.h M Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxyConfiguration.serialization.in M Source/WebKit/GPUProcess/media/cocoa/RemoteMediaPlayerProxyCocoa.mm M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.cpp M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.h M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.messages.in M Source/WebKit/WebProcess/GPU/media/RemoteMediaPlayerManager.cpp M Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/WebPage.h Log Message: --- [iOS] Allow media to play in lock screen https://bugs.webkit.org/show_bug.cgi?id=271228 rdar://122881278 Reviewed by Jean-Yves Avenard. To allow media to play in lock screen, we need to create the layer hosting context canShowWhileLocked option in GPUProcess. We pipe it from WebProcess to GPUProcess for RemoteSampleBufferDisplayLayerManager and RemoteMediaPlayerProxy code paths. We introduce a MediaPlayer getter which is implemented in HTMLVideoElement by looking at its page object. We move the page canShowWhileLocked boolean from WebKit::WebPage to WebCore::Page so that HTMLVideoElement gets access to it. * Source/WebCore/html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::canShowWhileLocked const): * Source/WebCore/html/HTMLVideoElement.h: * Source/WebCore/page/Page.cpp: (WebCore::Page::Page): * Source/WebCore/page/Page.h: (WebCore::Page::canShowWhileLocked const): * Source/WebCore/page/PageConfiguration.h: * Source/WebCore/platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::canShowWhileLocked const): * Source/WebCore/platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::canShowWhileLocked const): * Source/WebCore/platform/graphics/avfoundation/SampleBufferDisplayLayer.h: (WebCore::SampleBufferDisplayLayer::canShowWhileLocked): * Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h: * Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::canShowWhileLocked const): * Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxyConfiguration.h: * Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxyConfiguration.serialization.in: * Source/WebKit/GPUProcess/media/cocoa/RemoteMediaPlayerProxyCocoa.mm: (WebKit::RemoteMediaPlayerProxy::mediaPlayerRenderingModeChanged): * Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.cpp: (WebKit::RemoteSampleBufferDisplayLayer::initialize): * Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h: * Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.cpp: (WebKit::RemoteSampleBufferDisplayLayerManager::createLayer): * Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.h: * Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.messages.in: * Source/WebKit/WebProcess/GPU/media/RemoteMediaPlayerManager.cpp: (WebKit::RemoteMediaPlayerManager::createRemoteMediaPlayer): * Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp: (WebKit::SampleBufferDisplayLayer::initialize): * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::m_textAnimationController): * Source/WebKit/WebProcess/WebPage/WebPage.h: (WebKit::WebPage::canShowWhileLocked const): Canonical link: https://commits.webkit.org/280765@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
[webkit-changes] [WebKit/WebKit] e4b110: Add a LowerInt64 B3 pass
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e4b1106bc45645cdf986bb2b174622b82c8b03bd https://github.com/WebKit/WebKit/commit/e4b1106bc45645cdf986bb2b174622b82c8b03bd Author: Angelos Oikonomopoulos Date: 2024-07-09 (Tue, 09 Jul 2024) Changed paths: M Source/JavaScriptCore/Sources.txt M Source/JavaScriptCore/b3/B3Generate.cpp A Source/JavaScriptCore/b3/B3LowerInt64.cpp A Source/JavaScriptCore/b3/B3LowerInt64.h M Source/JavaScriptCore/b3/B3LowerToAir32_64.cpp M Source/JavaScriptCore/b3/B3Opcode.cpp M Source/JavaScriptCore/b3/B3Opcode.h M Source/JavaScriptCore/b3/B3StackmapSpecial.cpp M Source/JavaScriptCore/b3/B3Validate.cpp M Source/JavaScriptCore/b3/B3Value.cpp M Source/JavaScriptCore/b3/B3Value.h M Source/JavaScriptCore/b3/B3ValueInlines.h M Source/JavaScriptCore/b3/B3ValueRep.h M Source/JavaScriptCore/b3/air/AirOpcode.opcodes Log Message: --- Add a LowerInt64 B3 pass https://bugs.webkit.org/show_bug.cgi?id=275988 Reviewed by Yusuke Suzuki and Justin Michaud. Base infrastructure and partial implementation of a lowering pass for Int64 values on 32-bits. Crucially, this doesn't lower Patchpoints/CCalls and Add/Sub on Int64 values. The former would, at the moment, complicate the generic paths that simultaneously iterate over B3 Values and Air args. The latter (Add/Sub) is lowered to the pre-existing Add64/Sub64 Air forms, which avoids the need to track the carry bit. Since we need to interface with the above values that use Int64s, this patch also introduces two new B3 opcodes (that are only used on 32-bits): - TruncHigh: extracts the high Int32 of an Int64 value. - Stitch: creates an Int64 out of two Int32 values. They need to be defined on 64-bits too because B3ValueInlines.h references opcodes in a macro definition. This removes the previously added lowering code to B3LowerToAir32_64.cpp. It implements enough ops in B3LowerInt64.cpp to keep i64-call.js and cc-int-to-int.js working with OMG on ARMv7. It also fixes a bug in the Air forms for Add64/Sub64. * Source/JavaScriptCore/Sources.txt: * Source/JavaScriptCore/b3/B3Generate.cpp: (JSC::B3::generateToAir): * Source/JavaScriptCore/b3/B3LowerInt64.cpp: Added. (JSC::B3::lowerInt64): * Source/JavaScriptCore/b3/B3LowerInt64.h: Added. * Source/JavaScriptCore/b3/B3LowerToAir32_64.cpp: * Source/JavaScriptCore/b3/B3Opcode.cpp: (WTF::printInternal): * Source/JavaScriptCore/b3/B3Opcode.h: * Source/JavaScriptCore/b3/B3StackmapSpecial.cpp: (JSC::B3::StackmapSpecial::isArgValidForRep): * Source/JavaScriptCore/b3/B3Validate.cpp: * Source/JavaScriptCore/b3/B3Value.cpp: (JSC::B3::Value::effects const): (JSC::B3::Value::key const): (JSC::B3::Value::typeFor): * Source/JavaScriptCore/b3/B3Value.h: * Source/JavaScriptCore/b3/B3ValueInlines.h: * Source/JavaScriptCore/b3/B3ValueRep.h: (JSC::B3::ValueRep::ValueRep): * Source/JavaScriptCore/b3/air/AirOpcode.opcodes: Canonical link: https://commits.webkit.org/280764@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
[webkit-changes] [WebKit/WebKit] 5c25ca: Text replacement animations do not run in the corr...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5c25cad683ccc1832ce4f12f283a032a2be9f4ac https://github.com/WebKit/WebKit/commit/5c25cad683ccc1832ce4f12f283a032a2be9f4ac Author: Megan Gardner Date: 2024-07-08 (Mon, 08 Jul 2024) Changed paths: M Source/WebCore/editing/CharacterRange.h M Source/WebCore/page/ChromeClient.h M Source/WebCore/page/writing-tools/WritingToolsController.h M Source/WebCore/page/writing-tools/WritingToolsController.mm M Source/WebKit/Shared/TextAnimationType.serialization.in M Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm M Source/WebKit/UIProcess/TextAnimationType.h M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/WebPageProxy.messages.in M Source/WebKit/UIProcess/WebPageProxyInternals.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm M Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm M Source/WebKit/WebKitSwift/TextAnimation/TextAnimationManager.swift M Source/WebKit/WebKitSwift/TextAnimation/WKSTextAnimationSourceDelegate.h M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h M Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h M Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/WebPage.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm Log Message: --- Text replacement animations do not run in the correct order and fail to animate over the correct ranges when text comes in over time. https://bugs.webkit.org/show_bug.cgi?id=276113 rdar://128292335 Reviewed by Aditya Keerthi and Wenson Hsieh. I was not using the full async animation infrastructure and the tracking of the different ranges as the different chunks came in was not correct. These changes should streamline the animations and correct some not-as-good names for some of the variables. There are still some frames that need a bit of polish, but this is a much better working version than we have had up to this point. * Source/WebCore/editing/CharacterRange.h: (WebCore::CharacterRange::operator== const): * Source/WebCore/page/ChromeClient.h: (WebCore::ChromeClient::addSourceTextAnimation): * Source/WebCore/page/writing-tools/WritingToolsController.h: * Source/WebCore/page/writing-tools/WritingToolsController.mm: (WebCore::WritingToolsController::compositionSessionDidReceiveTextWithReplacementRange): * Source/WebKit/Shared/TextAnimationType.serialization.in: * Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm: (WebKit::WebPageProxy::addTextAnimationForAnimationID): (WebKit::WebPageProxy::callCompletionHandlerForAnimationID): (WebKit::WebPageProxy::getTextIndicatorForID): * Source/WebKit/UIProcess/TextAnimationType.h: * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/UIProcess/WebPageProxyInternals.h: * Source/WebKit/UIProcess/mac/WKTextAnimationManager.mm: (-[WKTextAnimationManager addTextAnimationForAnimationID:withData:]): (-[WKTextAnimationManager textPreviewsForChunk:completion:]): * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::addSourceTextAnimation): * Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h: * Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.h: * Source/WebKit/WebProcess/WebPage/Cocoa/TextAnimationController.mm: (WebKit::TextAnimationController::unreplacedRangeForSessionWithID const): (WebKit::TextAnimationController::contextRangeForTextAnimationID const): (WebKit::TextAnimationController::removeTransparentMarkersForSessionID): (WebKit::remainingCharacterRange): (WebKit::TextAnimationController::addInitialTextAnimation): (WebKit::TextAnimationController::addSourceTextAnimation): (WebKit::TextAnimationController::addDestinationTextAnimation): (WebKit::TextAnimationController::updateUnderlyingTextVisibilityForTextAnimationID): (WebKit::newlyReplacedCharacterRange): Deleted. * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::addTextAnimationForAnimationID): (WebKit::WebPage::addSourceTextAnimation): * Source/WebKit/WebProcess/WebPage/WebPage.h: Canonical link: https://commits.webkit.org/280763@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