[webkit-changes] [WebKit/WebKit] 8c9520: Generate IPC serialization for iOS-specific enumer...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 8c9520c1b7e154eac1d5b0b8f52559c1a4047f62 https://github.com/WebKit/WebKit/commit/8c9520c1b7e154eac1d5b0b8f52559c1a4047f62 Author: Žan Doberšek Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/DerivedSources-input.xcfilelist M Source/WebKit/DerivedSources.make M Source/WebKit/Shared/ios/GestureTypes.h A Source/WebKit/Shared/ios/GestureTypes.serialization.in M Source/WebKit/Shared/ios/TapHandlingResult.h M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/ios/RevealFocusedElementDeferrer.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm M Source/WebKit/WebKit.xcodeproj/project.pbxproj M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm Log Message: --- Generate IPC serialization for iOS-specific enumerations under WebKit https://bugs.webkit.org/show_bug.cgi?id=264806 Reviewed by Chris Dumez. Provide IPC serialization specification for enums in the iOS-specific GestureTypes.h header in the new serialization input file. EnumTraits specializations can be removed, and the SelectionFlags enumeration has to be converted into a scoped variant. EnumTraits specializations for the RevealFocusedElementDeferralReason and TapHandlingResult enumerations can be removed as they are not used. * Source/WebKit/DerivedSources-input.xcfilelist: * Source/WebKit/DerivedSources.make: * Source/WebKit/Shared/ios/GestureTypes.h: (): Deleted. * Source/WebKit/Shared/ios/GestureTypes.serialization.in: Added. * Source/WebKit/Shared/ios/TapHandlingResult.h: * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/UIProcess/ios/RevealFocusedElementDeferrer.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: (toUIWKSelectionFlags): (toSelectionFlags): (operator<<): * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::selectWithGesture): (WebKit::WebPage::updateSelectionWithTouches): Canonical link: https://commits.webkit.org/270755@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 2640f7: Fix Debug build on Monterey (Missing SoftLinked cl...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 2640f7f95ff4b0d041e4fbed383cf42de591b647 https://github.com/WebKit/WebKit/commit/2640f7f95ff4b0d041e4fbed383cf42de591b647 Author: Brady Eidson Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm Log Message: --- Fix Debug build on Monterey (Missing SoftLinked classes) https://bugs.webkit.org/show_bug.cgi?id=264858 rdar://118433817 Reviewed by Alex Christensen. Monterey has at least one softlinked framework in place, but with a class that is missing. The build was fine, but oh boy was using it in a Debug configuration very unhappy. This situation used to be fine when we looked up allowed classes in a Vector (search for null is fine) After we moved to looking up allowed classes in a HashSet... Search for null is no longer fine. This change simply null checks any softlinked class being looked up in the set. * Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm: (IPC::shouldEnableStrictMode): Canonical link: https://commits.webkit.org/270754@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 39925c: [WebKit] Add an option key to prevent network load...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 39925c5d4c4ef3ff0ba785efc1b5d46a242ecf99 https://github.com/WebKit/WebKit/commit/39925c5d4c4ef3ff0ba785efc1b5d46a242ecf99 Author: Wenson Hsieh Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/API/Cocoa/NSAttributedString.mm M Source/WebKit/UIProcess/API/Cocoa/NSAttributedStringPrivate.h M Tools/TestWebKitAPI/SourcesCocoa.txt M Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj M Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm A Tools/TestWebKitAPI/cocoa/TestResourceLoadDelegate.h A Tools/TestWebKitAPI/cocoa/TestResourceLoadDelegate.mm Log Message: --- [WebKit] Add an option key to prevent network loads when serializing attributed strings https://bugs.webkit.org/show_bug.cgi?id=264745 rdar://118309399 Reviewed by Tim Horton. Add support for a `NSAttributedStringDocumentReadingOptionKey` which allows clients to serialize attributed strings from web content, without loading any requests over the network. This is particularly ideal for clients such as UIFoundation, when serializing HTML markup and/or web archive data, which otherwise has the potential to trigger arbitrary resource loads upon conversion. Note that we add an opt-in flag for network loads, because we want to eventually default to *not* loading content from over the network when serializing attributed strings. Given this eventual plan, it makes more sense for an app to need to explicitly opt _in_ to network loads, rather than opt out. Test: WKWebView.DoNotAllowNetworkLoads * Source/WebKit/UIProcess/API/Cocoa/NSAttributedString.mm: (+[_WKAttributedStringWebViewCache configuration]): Respect the new `_WKAllowNetworkLoadsOption` option by setting `_allowedNetworkHosts` to an empty set on the configuration, if the value is false-y. (+[_WKAttributedStringWebViewCache maybeUpdateShouldAllowNetworkLoads:]): (+[_WKAttributedStringWebViewCache maybeConsumeBundlePaths:]): (+[_WKAttributedStringWebViewCache invalidateGlobalConfigurationIfNeeded:]): Refactor this logic to update the global configuration (and clear any cached web views if needed), if either network load disablement or the allowed file URL list changes. (+[NSAttributedString _loadFromHTMLWithOptions:contentLoader:completionHandler:]): * Source/WebKit/UIProcess/API/Cocoa/NSAttributedStringPrivate.h: * Tools/TestWebKitAPI/SourcesCocoa.txt: * Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: * Tools/TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm: Lift the `TestResourceLoadDelegate` class out of this API test and into a separate helper file, so that we can use it in a different API test suite (see below). (-[TestResourceLoadDelegate webView:resourceLoad:didSendRequest:]): Deleted. (-[TestResourceLoadDelegate webView:resourceLoad:didPerformHTTPRedirection:newRequest:]): Deleted. (-[TestResourceLoadDelegate webView:resourceLoad:didReceiveChallenge:]): Deleted. (-[TestResourceLoadDelegate webView:resourceLoad:didReceiveResponse:]): Deleted. (-[TestResourceLoadDelegate webView:resourceLoad:didCompleteWithError:response:]): Deleted. * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm: Add a new API test to exercise the case where `_WKAllowNetworkLoadsOption` is set to `@NO`, by adding a resource load delegate to the web view to listen for any attempted network access. When this new option is set, we should never get a call to the `didSendRequest:` delegate method. * Tools/TestWebKitAPI/cocoa/TestResourceLoadDelegate.h: Added. * Tools/TestWebKitAPI/cocoa/TestResourceLoadDelegate.mm: Added. (-[TestResourceLoadDelegate webView:resourceLoad:didSendRequest:]): (-[TestResourceLoadDelegate webView:resourceLoad:didPerformHTTPRedirection:newRequest:]): (-[TestResourceLoadDelegate webView:resourceLoad:didReceiveChallenge:]): (-[TestResourceLoadDelegate webView:resourceLoad:didReceiveResponse:]): (-[TestResourceLoadDelegate webView:resourceLoad:didCompleteWithError:response:]): Canonical link: https://commits.webkit.org/270753@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 8d0564: Fix a platform guard in UIDelegate.mm
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 8d056469ba7ee18ac290fcf77c49be17fa821698 https://github.com/WebKit/WebKit/commit/8d056469ba7ee18ac290fcf77c49be17fa821698 Author: Ada Chan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/Cocoa/UIDelegate.mm Log Message: --- Fix a platform guard in UIDelegate.mm https://bugs.webkit.org/show_bug.cgi?id=264857 rdar://118433187 Reviewed by Dan Glastonbury. Prefer PLATFORM(IOS_FAMILY) over TARGET_OS_IPHONE. * Source/WebKit/UIProcess/Cocoa/UIDelegate.mm: (WebKit::UIDelegate::setDelegate): Canonical link: https://commits.webkit.org/270752@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 1093d6: Parse web extension manifest for declarativeNetReq...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1093d6012bcfd5c17dbd4710264729b559612699 https://github.com/WebKit/WebKit/commit/1093d6012bcfd5c17dbd4710264729b559612699 Author: Brian Weinstein Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/en.lproj/Localizable.strings M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.h M Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCocoa.mm M Source/WebKit/UIProcess/Extensions/WebExtension.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtension.mm Log Message: --- Parse web extension manifest for declarativeNetRequest rulesets https://bugs.webkit.org/show_bug.cgi?id=264836 rdar://118415584 Reviewed by Timothy Hatcher. This patch hooks up basic manifest parsing for declarativeNetRequest rule sets. * Source/WebCore/en.lproj/Localizable.strings: * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.h: * Source/WebKit/UIProcess/API/Cocoa/_WKWebExtension.mm: (-[_WKWebExtension hasDeclarativeNetRequestRules]): Mostly added for testing at this point. Returns if there were any correctly parsed rulesets. * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionCocoa.mm: (WebKit::WebExtension::errors): Call parseDeclarativeNetRequestRulesetDictionary. (WebKit::WebExtension::declarativeNetRequestRulesets): Call populateDeclarativeNetRequestPropertiesIfNeeded and return the vector of rulesets. (WebKit::WebExtension::parseDeclarativeNetRequestRulesetDictionary): Takes in a dictionary and returns an optional DeclarativeNetRequestRulesetData. This method does argument type checking and makes sure the string arguments aren't nil or empty. (WebKit::WebExtension::populateDeclarativeNetRequestPropertiesIfNeeded): Read the manifest and turn the JSON into a vector of DeclarativeNetRequestRulesetData. This PR makes sure the extension doesn't specify too many rulesets, too many enabled rulesets, or multiple rulesets with the same id. * Source/WebKit/UIProcess/Extensions/WebExtension.h: * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtension.mm: (TestWebKitAPI::TEST): Add some tests for the manifest parsing. Canonical link: https://commits.webkit.org/270751@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] e2b769: Deploy more smart pointers in ExtensionStyleSheets...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e2b769dba64ecedffc809cfd1bf07f08d7abe9a4 https://github.com/WebKit/WebKit/commit/e2b769dba64ecedffc809cfd1bf07f08d7abe9a4 Author: Ryosuke Niwa Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/dom/ExtensionStyleSheets.cpp M Source/WebCore/dom/ExtensionStyleSheets.h M Source/WebCore/dom/FragmentDirectiveRangeFinder.cpp M Source/WebCore/dom/FullscreenManager.cpp M Source/WebCore/dom/FullscreenManager.h M Source/WebCore/dom/IdleDeadline.cpp M Source/WebCore/dom/ImageOverlay.cpp Log Message: --- Deploy more smart pointers in ExtensionStyleSheets.cpp, FragmentDirectiveRangeFinder.cpp, FullscreenManager.cpp, IdleDeadline.cpp, and ImageOverlay.cpp https://bugs.webkit.org/show_bug.cgi?id=264797 Reviewed by Chris Dumez. Deployed more smart pointers as warned by the clang static analyzer. * Source/WebCore/dom/ExtensionStyleSheets.cpp: (WebCore::ExtensionStyleSheets::pageUserSheet): (WebCore::ExtensionStyleSheets::clearPageUserSheet): (WebCore::ExtensionStyleSheets::updatePageUserSheet): (WebCore::ExtensionStyleSheets::updateInjectedStyleSheetCache const): (WebCore::ExtensionStyleSheets::invalidateInjectedStyleSheetCache): (WebCore::ExtensionStyleSheets::addUserStyleSheet): (WebCore::ExtensionStyleSheets::addAuthorStyleSheetForTesting): (WebCore::ExtensionStyleSheets::addDisplayNoneSelector): (WebCore::ExtensionStyleSheets::maybeAddContentExtensionSheet): * Source/WebCore/dom/ExtensionStyleSheets.h: * Source/WebCore/dom/FragmentDirectiveRangeFinder.cpp: (WebCore::FragmentDirectiveRangeFinder::rangeOfStringInRange): (WebCore::FragmentDirectiveRangeFinder::advanceRangeStartToNextNonWhitespace): * Source/WebCore/dom/FullscreenManager.cpp: (WebCore::FullscreenManager::protectedTopDocument): (WebCore::FullscreenManager::finishExitFullscreen): (WebCore::FullscreenManager::didExitFullscreen): * Source/WebCore/dom/FullscreenManager.h: * Source/WebCore/dom/IdleDeadline.cpp: (WebCore::IdleDeadline::timeRemaining const): * Source/WebCore/dom/ImageOverlay.cpp: (WebCore::ImageOverlay::installImageOverlayStyleSheet): (WebCore::ImageOverlay::updateSubtree): Canonical link: https://commits.webkit.org/270750@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 48c502: Deploy more smart pointers in CustomElementReactio...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 48c502bb91baa98f2c17e5339d25009580b3f2c2 https://github.com/WebKit/WebKit/commit/48c502bb91baa98f2c17e5339d25009580b3f2c2 Author: Ryosuke Niwa Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/dom/CustomElementReactionQueue.cpp M Source/WebCore/dom/DOMImplementation.cpp M Source/WebCore/dom/DOMImplementation.h M Source/WebCore/dom/DeviceMotionController.cpp M Source/WebCore/dom/DeviceMotionEvent.cpp M Source/WebCore/dom/Document.cpp M Source/WebCore/dom/Document.h Log Message: --- Deploy more smart pointers in CustomElementReactionQueue.cpp, DOMImplementation.cpp, DeviceMotionController.cpp, and DeviceMotionEvent.cpp https://bugs.webkit.org/show_bug.cgi?id=264793 Reviewed by Chris Dumez. * Source/WebCore/dom/CustomElementReactionQueue.cpp: (WebCore::CustomElementQueue::processQueue): * Source/WebCore/dom/DOMImplementation.cpp: (WebCore::DOMImplementation::protectedDocument): (WebCore::DOMImplementation::createDocumentType): (WebCore::DOMImplementation::createDocument): (WebCore::DOMImplementation::createHTMLDocument): * Source/WebCore/dom/DOMImplementation.h: * Source/WebCore/dom/DeviceMotionController.cpp: (WebCore::DeviceMotionController::getLastEvent): * Source/WebCore/dom/DeviceMotionEvent.cpp: (WebCore::DeviceMotionEvent::acceleration const): (WebCore::DeviceMotionEvent::accelerationIncludingGravity const): (WebCore::DeviceMotionEvent::rotationRate const): * Source/WebCore/dom/Document.cpp: (WebCore::Document::protectedSettings const): Added. * Source/WebCore/dom/Document.h: Canonical link: https://commits.webkit.org/270749@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c68cf4: [JSC] Array.from fast path should handle array wit...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c68cf48dd75cff6ed634b66127a0bbf13ef913bb https://github.com/WebKit/WebKit/commit/c68cf48dd75cff6ed634b66127a0bbf13ef913bb Author: Yusuke Suzuki Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A JSTests/stress/array-from-empty.js M Source/JavaScriptCore/runtime/ArrayPrototype.cpp Log Message: --- [JSC] Array.from fast path should handle array with holes https://bugs.webkit.org/show_bug.cgi?id=264853 rdar://118417483 Reviewed by Michael Saboff. Array.from fills the result with undefined when it detects a hole. So the fast path needs to handle this properly: we should fill undefined when we found a hole in the source array. This patch fixes the fast path implementation correctly filling undefined for source's holes. Since they are undefined, 1. When ArrayWithUndecided has some length, it should create ArrayWithContiguous with undefineds. 2. When ArrayWithInt32 has some holes, it should create ArrayWithContiguous with undefineds. 3. When ArrayWithDouble has some holes, it should create ArrayWithContiguous with undefineds. 4. When ArrayWithArrayStorage has some holes, it should fill undefined for holes. 5. Otherwise, we can just copy the underlying content. * JSTests/stress/array-from-empty.js: Added. (shouldBe): (throw.new.Error): (else.shouldBe): * Source/JavaScriptCore/runtime/ArrayPrototype.cpp: (JSC::moveElements): (JSC::concatAppendOne): (JSC::copyElements): (JSC::JSC_DEFINE_HOST_FUNCTION): Canonical link: https://commits.webkit.org/270748@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 834ac7: jsc_fuz/wktr: RELEASE_ASSERT(!m_count); in WebCore...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 834ac739e6035e29f4558a196ba5f4f6e25cf64e https://github.com/WebKit/WebKit/commit/834ac739e6035e29f4558a196ba5f4f6e25cf64e Author: Nicole Rosario Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/fast/dom/load-offsetWidth-expected.txt A LayoutTests/fast/dom/load-offsetWidth.html M Source/WebCore/dom/Document.cpp Log Message: --- jsc_fuz/wktr: RELEASE_ASSERT(!m_count); in WebCore::RenderObject::~RenderObject() https://bugs.webkit.org/show_bug.cgi?id=264828 rdar://117994923 Reviewed by Chris Dumez. Hitting release assert in CheckedPtr from `~RenderObject()` because `CheckedPtr renderer = element.renderer()`is outliving the renderer (RenderObject). Limited the scope so it gets destroyed first. * LayoutTests/fast/dom/load-offsetWidth-expected.txt: Added. * LayoutTests/fast/dom/load-offsetWidth.html: Added. * Source/WebCore/dom/Document.cpp: (WebCore::Document::updateLayoutIfDimensionsOutOfDate): limited the scope of `CheckedPtr renderer = element.renderer()` so that it would be destroyed after being used instead of staying available for the whole method Canonical link: https://commits.webkit.org/270747@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 757525: Implement several new `UIAsyncTextInput` / `UIAsyn...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7575255c4d4d29755ed87522053153c46f7b456c https://github.com/WebKit/WebKit/commit/7575255c4d4d29755ed87522053153c46f7b456c Author: Wenson Hsieh Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Platform/spi/ios/UIKitSPI.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Log Message: --- Implement several new `UIAsyncTextInput` / `UIAsyncTextInputClient` APIs https://bugs.webkit.org/show_bug.cgi?id=264753 rdar://118393726 Reviewed by Megan Gardner. Implement these four methods on `UIAsyncTextInput` and `UIAsyncTextInputClient`: ``` - (void)adjustSelection:(UIDirectionalTextRange)range completionHandler:(void (^)(void))completionHandler; - (BOOL)selectionAtDocumentStart; - (void)transposeCharacters; - (BOOL)shouldSuppressEditMenu; ``` ...and refactor their existing private and internal UITextInput counterparts to call into these new methods. * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _selectionClipRect]): (-[WKContentView canPerformAction:withSender:]): (-[WKContentView _selectionAtDocumentStart]): (-[WKContentView _transpose]): (-[WKContentView _shouldSuppressSelectionCommands]): (-[WKContentView _internalAdjustSelectionWithOffset:lengthDelta:completionHandler:]): (-[WKContentView adjustSelectionWithDelta:completionHandler:]): (-[WKContentView adjustSelection:completionHandler:]): (-[WKContentView selectionClipRect]): (-[WKContentView transposeCharacters]): (-[WKContentView selectionAtDocumentStart]): (-[WKContentView shouldSuppressEditMenu]): (-[WKContentView _selectionClipRectInternal]): Deleted. Canonical link: https://commits.webkit.org/270746@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 78e457: Memory consumption/leak with img out of viewport a...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 78e4577732ca7734bfb275b4841c134331d91827 https://github.com/WebKit/WebKit/commit/78e4577732ca7734bfb275b4841c134331d91827 Author: Przemyslaw Gorszkowski Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/fast/dom/dynamic-image-with-lazy-loading-leak-expected.txt A LayoutTests/fast/dom/dynamic-image-with-lazy-loading-leak.html M Source/WebCore/loader/ImageLoader.cpp M Source/WebCore/loader/ImageLoader.h Log Message: --- Memory consumption/leak with img out of viewport and lazy loading https://bugs.webkit.org/show_bug.cgi?id=263521 Reviewed by Chris Dumez. This change fixes the problem with dangling of dynamically created (in JS) HTMLImageElement when it is detached from the document before loading the resource starts. It happened when img element was created (dynamically) with lazy loading and the element was outside the viewport (the loading of resource is deferred until the img element becomes visible). If the element was removed from document it becomes dangling element and will never be deleted by GC. * Source/WebCore/loader/ImageLoader.cpp: (WebCore::ImageLoader::hasPendingActivity const): To avoid leaking of the dynamically created element, the pending activity of the element should check has the load of the resource actually started. Similar check is done in case of static HTMLImageElement in ImageLoader::updatedHasPendingEvent. * Source/WebCore/loader/ImageLoader.h: (WebCore::ImageLoader::hasPendingActivity const): Deleted. Moved implementation to cpp file. * LayoutTests/fast/dom/dynamic-image-with-lazy-loading-leak-expected.txt: Added. * LayoutTests/fast/dom/dynamic-image-with-lazy-loading-leak.html: Added. Canonical link: https://commits.webkit.org/270745@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c093fd: [ iOS ] imported/w3c/web-platform-tests/screen-ori...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c093fd4a7c8c0a1d509f280354deacac5a1b1110 https://github.com/WebKit/WebKit/commit/c093fd4a7c8c0a1d509f280354deacac5a1b1110 Author: Marcos Caceres Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/screen-orientation/active-lock.html M LayoutTests/platform/ios/TestExpectations Log Message: --- [ iOS ] imported/w3c/web-platform-tests/screen-orientation/active-lock.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=264287 rdar://118018816 Reviewed by Chris Dumez. Switching to about:blank instead, as it's technically the same and seems to address the flakiness. * LayoutTests/imported/w3c/web-platform-tests/screen-orientation/active-lock.html: * LayoutTests/platform/ios/TestExpectations: Canonical link: https://commits.webkit.org/270744@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 1a5eaa: [macOS] Block IOKit related syscalls in the WebCon...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1a5eaa84ec99b3e2ccafb2e38bae6992dc4721a8 https://github.com/WebKit/WebKit/commit/1a5eaa84ec99b3e2ccafb2e38bae6992dc4721a8 Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Log Message: --- [macOS] Block IOKit related syscalls in the WebContent process https://bugs.webkit.org/show_bug.cgi?id=264812 rdar://116582311 Reviewed by Sihui Liu. These can be blocked when IOKit is blocked in the WebContent process sandbox. * Source/WebKit/WebProcess/com.apple.WebProcess.sb.in: Canonical link: https://commits.webkit.org/270743@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 7a57a9: Stop using various SPI methods on UIKeyboard and U...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7a57a9b53df0d39626b5aa7f2b2213cfc21c503c https://github.com/WebKit/WebKit/commit/7a57a9b53df0d39626b5aa7f2b2213cfc21c503c Author: Wenson Hsieh Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Platform/spi/ios/UIKitSPI.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.h M Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm M Source/WebKit/UIProcess/ios/WebDataListSuggestionsDropdownIOS.mm M Source/WebKit/UIProcess/ios/forms/WKFormSelectPicker.mm Log Message: --- Stop using various SPI methods on UIKeyboard and UIKeyboardImpl https://bugs.webkit.org/show_bug.cgi?id=264820 rdar://118404384 Reviewed by Megan Gardner. Remove uses of the following keyboard SPI methods: ``` +[UIKeyboard defaultSizeForInterfaceOrientation:] -[UIKeyboardImpl isCallingInputDelegate] ``` ...as well as several unused declarations on these two classes. See below for more details. * Source/WebKit/Platform/spi/ios/UIKitSPI.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView cleanUpInteraction]): (-[WKContentView resignFirstResponderForWebView]): (-[WKContentView insertText:]): Instead of using `-isCallingInputDelegate` to determine whether or not we're currently inserting text due to the user pressing a key, keep track of this state ourselves by tracking of `keydown`/ `keyup` and `pressesBegan`/`pressesEnded`. While this isn't perfect (i.e. there is a narrow case where it's possible for the keyboard to produce text insertion commands right after a keyup), it's sufficient to address the original use case this was intended to fix: rdar://47902054, wherein we need to ensure a user gesture token when hitting Return to submit a search query. (-[WKContentView pressesBegan:withEvent:]): (-[WKContentView pressesEnded:withEvent:]): (-[WKContentView pressesCancelled:withEvent:]): Keep track of a `_isHandlingActivePressesEvent` flag. (-[WKContentView _internalHandleKeyWebEvent:withCompletionHandler:]): Keep track of a `_isHandlingActiveKeyEvent` flag. (-[WKContentView _didHandleKeyEvent:eventWasHandled:]): (-[WKContentView sizeForLegacyFormControlPickerViews]): Stop using `+defaultSizeForInterfaceOrientation:`; this was only used to try and make the default size of the picker views used for multiple select elements and datalists consistent with the default keyboard size, on apps linked against iOS 14 or older. However, this is unnecessary in any recent version of iOS, where the keyboard will automatically override the intrinsic height of the input views anyways, so we can just set 0 for the picker view height to get the default keyboard height. I manually tested this by forcing `-_shouldUseContextMenusForFormControls` to return NO on iOS 17. * Source/WebKit/UIProcess/ios/WebDataListSuggestionsDropdownIOS.mm: (-[WKDataListSuggestionsPicker initWithInformation:inView:]): * Source/WebKit/UIProcess/ios/forms/WKFormSelectPicker.mm: (-[WKMultipleSelectPicker initWithView:]): Canonical link: https://commits.webkit.org/270742@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 1350b5: Ensure iframe requests include Referer when locati...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1350b5914d017fc41f92edc00eb2b2625136dcf5 https://github.com/WebKit/WebKit/commit/1350b5914d017fc41f92edc00eb2b2625136dcf5 Author: Michael[tm] Smith Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-iframe-expected.txt A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-iframe.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-top-to-nested-iframe-expected.txt A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-top-to-nested-iframe.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-with-nested-iframe-expected.txt A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-with-nested-iframe.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/replace-with-nested-iframe-expected.txt A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/replace-with-nested-iframe.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-contents.sub.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-postmessage-to-parent-parent.sub.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-with-iframe.html A LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/replace-or-assign-call-on-iframe.html M LayoutTests/imported/w3c/web-platform-tests/html/browsers/the-window-object/open-close/no_window_open_when_term_nesting_level_nonzero.window-expected.txt M LayoutTests/imported/w3c/web-platform-tests/html/webappapis/scripting/processing-model-2/unhandled-promise-rejections/promise-rejection-events-expected.txt M Source/WebCore/page/LocalDOMWindow.cpp Log Message: --- Ensure iframe requests include Referer when location.replace or location.assign is called https://bugs.webkit.org/show_bug.cgi?id=263072 Reviewed by Chris Dumez and Alex Christensen. When the loader for a Frame (e.g, an iframe) has no referrer, then this change causes the loader's referrer to be set to the URL of its parent Frame’s Document. That in turn ensures the associated request is sent with a Referer header — including in the case where a document calls location.replace or location.assign on an iframe element — which makes the WebKit behavior in this case interoperable with existing behavior in Gecko and Blink. Otherwise, without this change, no Referer header is sent in the associated request, which breaks interoperability with Gecko and Blink. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-iframe-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-top-to-nested-iframe-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-replace-from-top-to-nested-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-with-nested-iframe-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/assign-with-nested-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/replace-with-nested-iframe-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/replace-with-nested-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-contents.sub.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-postmessage-to-parent-parent.sub.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/iframe-with-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/resources/replace-or-assign-call-on-iframe.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/browsers/the-window-object/open-close/no_window_open_when_term_nesting_level_nonzero.window-expected.txt: * LayoutTests/imported/w3c/web-platfor
[webkit-changes] [WebKit/WebKit] fcf4eb: Build fix for SECore adoption, take 2
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fcf4ebb722830ecb4724e4cf7c4238ab5cb2bace https://github.com/WebKit/WebKit/commit/fcf4ebb722830ecb4724e4cf7c4238ab5cb2bace Author: Justin Michaud Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/JavaScriptCore/Configurations/Base.xcconfig M Source/WebCore/Configurations/WebCore.xcconfig Log Message: --- Build fix for SECore adoption, take 2 https://bugs.webkit.org/show_bug.cgi?id=264849 rdar://118428351 Rubber stamped by Wenson Hsieh. Numbers are hard. * Source/JavaScriptCore/Configurations/Base.xcconfig: * Source/WebCore/Configurations/WebCore.xcconfig: Canonical link: https://commits.webkit.org/270740@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] a4eed6: ScriptFunctionCall::call() can return an empty JSV...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a4eed62b176cca45404f2c11f8a3dd2c4d3fe5df https://github.com/WebKit/WebKit/commit/a4eed62b176cca45404f2c11f8a3dd2c4d3fe5df Author: Yury Semikhatsky Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/JavaScriptCore/inspector/InjectedScript.cpp M Source/JavaScriptCore/inspector/InjectedScriptBase.cpp M Source/JavaScriptCore/inspector/InjectedScriptModule.cpp Log Message: --- ScriptFunctionCall::call() can return an empty JSValue if the watchdog timer fires, callers should check for this https://bugs.webkit.org/show_bug.cgi?id=165875 Reviewed by Devin Rousso. ScriptFunctionCall::call() may return empty JSValue from several places, the callers now check for emptiness first before accessing the value. Unfortunately, I don't have a reliable repro which could be converted to a layout test like the one in https://github.com/WebKit/WebKit/commit/11d211bca821fa4803d6da95c857a04b7f32c46a even though the symptoms are similar. * Source/JavaScriptCore/inspector/InjectedScript.cpp: (Inspector::InjectedScript::wrapObject const): (Inspector::InjectedScript::wrapJSONString const): (Inspector::InjectedScript::wrapTable const): (Inspector::InjectedScript::previewValue const): (Inspector::InjectedScript::createCommandLineAPIObject const): Canonical link: https://commits.webkit.org/270739@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 6695e0: [webkitbugspy] Implement ability to perform Radar ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 6695e0a431f1803b0bd0dbb4803d7a4567025660 https://github.com/WebKit/WebKit/commit/6695e0a431f1803b0bd0dbb4803d7a4567025660 Author: Ben Schwartz Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Tools/Scripts/libraries/webkitbugspy/webkitbugspy/radar.py Log Message: --- [webkitbugspy] Implement ability to perform Radar search queries. rdar://117214203 https://bugs.webkit.org/show_bug.cgi?id=263383 Reviewed by Jonathan Bedard. Allows callers to perform Radar search queries as part of `webkitbugspy.Radar`. * Tools/Scripts/libraries/webkitbugspy/webkitbugspy/radar.py: (Tracker): (Tracker.search): Perform Radar search from passed query parameters. Canonical link: https://commits.webkit.org/270738@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c586c6: REGRESSION(269235@main?):[ Monterey+ ] http/tests/...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c586c6d289d7c653602ddadbdb6ccab49671ba34 https://github.com/WebKit/WebKit/commit/c586c6d289d7c653602ddadbdb6ccab49671ba34 Author: Michael[tm] Smith Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/TestExpectations M LayoutTests/http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson-expected.txt M LayoutTests/http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson.html M Source/WebCore/dom/Document.h M Source/WebCore/testing/Internals.cpp M Source/WebCore/testing/Internals.h M Source/WebCore/testing/Internals.idl Log Message: --- REGRESSION(269235@main?):[ Monterey+ ] http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson.html is flaky recently https://bugs.webkit.org/show_bug.cgi?id=263879 Reviewed by Chris Dumez. This change updates the http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson.html test to ensure it consistently passes. The change adds a new isFullyActive(Document&) function to window.internals, and uses that function in the test. * LayoutTests/TestExpectations: * LayoutTests/http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson-expected.txt: * LayoutTests/http/tests/security/xss-DENIED-script-inject-into-inactive-window2-pson.html: * Source/WebCore/dom/Document.h: * Source/WebCore/testing/Internals.cpp: (WebCore::Internals::isFullyActive): * Source/WebCore/testing/Internals.h: * Source/WebCore/testing/Internals.idl: Canonical link: https://commits.webkit.org/270737@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] fca112: [webkitscmpy] Add commit status to pull-request
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fca112b99b353e4785aefd05ec18e2ce5c624290 https://github.com/WebKit/WebKit/commit/fca112b99b353e4785aefd05ec18e2ce5c624290 Author: Jonathan Bedard Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Tools/Scripts/libraries/webkitscmpy/setup.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/bitbucket.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/git_hub.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/pull_request.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/bitbucket.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/scm.py M Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py Log Message: --- [webkitscmpy] Add commit status to pull-request https://bugs.webkit.org/show_bug.cgi?id=264827 rdar://118406906 Reviewed by Elliott Williams. Add commit status and associated mock support to webkitscmpy for future use. * Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/bitbucket.py: (BitBucket.__init__): Add "statuses" dictionary. (BitBucket.request): Respond with mock commit status. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/git_hub.py: (GitHub.__init__): Add "statuses" dictionary. (GitHub._commit_response): Repond with mock commit status. (GitHub.request): Handle commit URLs with trailing path arguments. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/pull_request.py: (PullRequest.Status): Added. (PullRequest.Status.Encoder): Added JSON decoder. (PullRequest.statuses): Return all commit statuses on the current pull-request object. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/bitbucket.py: (BitBucket.PRGenerator.statuses): Populate commit statuses in pull-request object. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py: (GitHub.PRGenerator.statuses): Ditto. * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/scm.py: (Scm.PRGenerator.statuses): * Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py: Canonical link: https://commits.webkit.org/270736@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 9ed78d: REGRESSION (270325@main): Overrelease of NSColor u...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9ed78dcdcb4a1ce8d5105a7722c611b54ed78219 https://github.com/WebKit/WebKit/commit/9ed78dcdcb4a1ce8d5105a7722c611b54ed78219 Author: Tim Horton Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/mac/PageClientImplMac.mm Log Message: --- REGRESSION (270325@main): Overrelease of NSColor under PageClientImpl::appUsesCustomAccentColor https://bugs.webkit.org/show_bug.cgi?id=264845 Reviewed by Aditya Keerthi, Chris Dumez and Simon Fraser. * Source/WebKit/UIProcess/mac/PageClientImplMac.mm: (WebKit::PageClientImpl::appUsesCustomAccentColor): We don't own these colors, don't adopt them. Canonical link: https://commits.webkit.org/270735@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 4b6a6f: [WK1] WebM tests are failing as VP9 isn't supporte...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4b6a6f32cd88e091c2eb531a20d248464ae943c7 https://github.com/WebKit/WebKit/commit/4b6a6f32cd88e091c2eb531a20d248464ae943c7 Author: Jean-Yves Avenard Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/platform/mac-wk1/TestExpectations Log Message: --- [WK1] WebM tests are failing as VP9 isn't supported with WK1 https://bugs.webkit.org/show_bug.cgi?id=263568 rdar://117380844 Unreviewed test gardening. Mark test as failing in WK1 TestExpectations * LayoutTests/platform/mac-wk1/TestExpectations: Canonical link: https://commits.webkit.org/270734@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 27ba8d: Hook up IPC for registered scripts APIs.
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 27ba8dee1e35d5d7a700b78dbabf8f7b3b0cafcf https://github.com/WebKit/WebKit/commit/27ba8dee1e35d5d7a700b78dbabf8f7b3b0cafcf Author: Kiara Rose Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Scripts/webkit/messages.py M Source/WebKit/Shared/Extensions/WebExtensionDynamicScripts.serialization.in A Source/WebKit/Shared/Extensions/WebExtensionRegisteredScriptParameters.h M Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIScriptingCocoa.mm M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h M Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in M Source/WebKit/WebKit.xcodeproj/project.pbxproj M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIScriptingCocoa.mm M Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPITabsCocoa.mm M Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIScripting.h M Source/WebKit/WebProcess/Extensions/API/WebExtensionAPITabs.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm Log Message: --- Hook up IPC for registered scripts APIs. https://bugs.webkit.org/show_bug.cgi?id=264823 rdar://118405149 Reviewed by Timothy Hatcher. This patch creates a WebExtensionRegisteredScriptParameters which will be used to pass information to the UI process for the scripts to be registered for scripting.RegisteredContentScripts. Also adds tests for error handling for these APIs in WKWebExtensionAPIScripting.Errors. This patch also restructures the WebExtensionAPIScripting class to match that of the other classes created for other extension APIs. * Source/WebKit/Scripts/webkit/messages.py: (types_that_cannot_be_forward_declared): * Source/WebKit/Shared/Extensions/WebExtensionDynamicScripts.serialization.in: * Source/WebKit/Shared/Extensions/WebExtensionRegisteredScriptParameters.h: Copied from Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIScripting.h. * Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIScriptingCocoa.mm: (WebKit::WebExtensionContext::scriptingRegisterScripts): (WebKit::WebExtensionContext::scriptingUpdateRegisteredScripts): (WebKit::WebExtensionContext::scriptingGetRegisteredScripts): (WebKit::WebExtensionContext::scriptingUnregisterScripts): * Source/WebKit/UIProcess/Extensions/WebExtensionContext.h: * Source/WebKit/UIProcess/Extensions/WebExtensionContext.messages.in: * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPIScriptingCocoa.mm: (WebKit::toWebAPI): (WebKit::WebExtensionAPIScripting::executeScript): (WebKit::WebExtensionAPIScripting::insertCSS): (WebKit::WebExtensionAPIScripting::removeCSS): (WebKit::WebExtensionAPIScripting::registerContentScripts): (WebKit::WebExtensionAPIScripting::getRegisteredContentScripts): (WebKit::WebExtensionAPIScripting::updateContentScripts): (WebKit::WebExtensionAPIScripting::unregisterContentScripts): (WebKit::WebExtensionAPIScripting::validateScript): (WebKit::WebExtensionAPIScripting::validateRegisteredScripts): (WebKit::WebExtensionAPIScripting::validateFilter): (WebKit::WebExtensionAPIScripting::parseTargetInjectionOptions): (WebKit::WebExtensionAPIScripting::parseScriptInjectionOptions): (WebKit::WebExtensionAPIScripting::parseCSSInjectionOptions): (WebKit::WebExtensionAPIScripting::parseRegisteredContentScripts): (WebKit::WebExtensionAPIScripting::hasValidExecutionWorld): (WebKit::parseTargetInjectionOptions): Deleted. (WebKit::parseScriptInjectionOptions): Deleted. (WebKit::parseCSSInjectionOptions): Deleted. (WebKit::WebExtensionAPIScripting::toWebAPI): Deleted. * Source/WebKit/WebProcess/Extensions/API/Cocoa/WebExtensionAPITabsCocoa.mm: (WebKit::WebExtensionAPITabs::executeScript): * Source/WebKit/WebProcess/Extensions/API/WebExtensionAPIScripting.h: * Source/WebKit/WebProcess/Extensions/API/WebExtensionAPITabs.h: * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIScripting.mm: (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/270733@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] eb96b3: Add an arg to disable retry for run-jsc-stress-tes...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: eb96b31b4de1c6d70b2d3736bfaf22a2ee0c5ed9 https://github.com/WebKit/WebKit/commit/eb96b31b4de1c6d70b2d3736bfaf22a2ee0c5ed9 Author: Zhifei Fang Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Tools/Scripts/run-javascriptcore-tests M Tools/Scripts/run-jsc-stress-tests M Tools/Scripts/webkitruby/jsc-stress-test/executor.rb Log Message: --- Add an arg to disable retry for run-jsc-stress-tests and run-javascript-test https://bugs.webkit.org/show_bug.cgi?id=264840 rdar://118418997 Reviewed by Ryan Haddad. Currently, run-jsc-stress-tests will add at least 3 retry, should provide an arg to disable it. * Tools/Scripts/run-javascriptcore-tests: (runJSCStressTests): * Tools/Scripts/run-jsc-stress-tests: * Tools/Scripts/webkitruby/jsc-stress-test/executor.rb: Canonical link: https://commits.webkit.org/270732@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 7326ee: REGRESSION(268639@main): [ macOS wk2 ] fast/frames...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7326eec8056635e58c1481483280839435fe099c https://github.com/WebKit/WebKit/commit/7326eec8056635e58c1481483280839435fe099c Author: Charlie Wolfe Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/fast/frames/iframe-window-focus-expected.txt M LayoutTests/fast/frames/iframe-window-focus.html M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- REGRESSION(268639@main): [ macOS wk2 ] fast/frames/iframe-window-focus.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=264751 rdar://118340493 Reviewed by Pascoe. 268639@main made a change to refer to the focused frame stored in the UI process to know which frame a key event should be sent to. We should wait for a presentation update so the UI process has up to date information after focusing the iframe. * LayoutTests/fast/frames/iframe-window-focus-expected.txt: * LayoutTests/fast/frames/iframe-window-focus.html: * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/270731@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 324a29: [WebXR] Add support for the new transient-pointer ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 324a294aa828cf2710b6792a2930fabd829e3e42 https://github.com/WebKit/WebKit/commit/324a294aa828cf2710b6792a2930fabd829e3e42 Author: Ada Chan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/http/wpt/webxr/events_transient_pointer_input_source.https-expected.txt A LayoutTests/http/wpt/webxr/events_transient_pointer_input_source.https.html M Source/WebCore/Modules/webxr/WebXRInputSource.cpp M Source/WebCore/Modules/webxr/WebXRInputSourceArray.cpp M Source/WebCore/Modules/webxr/WebXRInputSourceArray.h M Source/WebCore/Modules/webxr/XRTargetRayMode.idl M Source/WebCore/platform/xr/PlatformXR.h M Source/WebKit/UIProcess/API/APIUIClient.h M Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h M Source/WebKit/UIProcess/Cocoa/UIDelegate.h M Source/WebKit/UIProcess/Cocoa/UIDelegate.mm Log Message: --- [WebXR] Add support for the new transient-pointer targetRayMode https://bugs.webkit.org/show_bug.cgi?id=264791 rdar://118342599 Reviewed by Dean Jackson. Spec: https://www.w3.org/TR/webxr/#dom-xrtargetraymode-transient-pointer - Add transient-pointer to the list of targetRayModes - Since the transient input source is connected only during the transient action, we need to fire a select event when that input source is no longer connected. - Fix the event order such that all XRInputSourceEvents for an input source are ordered before the XRInputSourcesChangedEvent indicating its removal. - Update the startXRSession UIClient API to take in the feature requested and add a PlatformViewController parameter in its completion handler. Add a new version of the startXRSession WKUIDelegatePrivate method that takes in the requested feature list and adds a view controller to the completion handler. Update the platform guards on the startXRSession and endXRSession methods in UIClient. * LayoutTests/http/wpt/webxr/events_transient_pointer_input_source.https-expected.txt: Added. * LayoutTests/http/wpt/webxr/events_transient_pointer_input_source.https.html: Added. Simulate connecting and disconnecting a transient-pointer input source, and verify the expected list of events fire in the right order. * Source/WebCore/Modules/webxr/WebXRInputSource.cpp: (WebCore::WebXRInputSource::pollEvents): Fire a select event when the transient-pointer input source is disconnected during the primary action. * Source/WebCore/Modules/webxr/WebXRInputSourceArray.cpp: (WebCore::WebXRInputSourceArray::update): Add a new local input source array to track input sources that are being removed but have other input source events that need to fire. This way we can fire the XRInputSourcesChangedEvent for the removal after the XRInputSourceEvents have been fired. (WebCore::WebXRInputSourceArray::handleRemovedInputSources): Add any input source being removed to removedWithInputEvents if it also generates XRInputSourceEvents. (WebCore::WebXRInputSourceArray::handleAddedOrUpdatedInputSources): Ditto. * Source/WebCore/Modules/webxr/WebXRInputSourceArray.h: * Source/WebCore/Modules/webxr/XRTargetRayMode.idl: * Source/WebCore/platform/xr/PlatformXR.h: * Source/WebKit/UIProcess/API/APIUIClient.h: (API::UIClient::startXRSession): * Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h: * Source/WebKit/UIProcess/Cocoa/UIDelegate.h: * Source/WebKit/UIProcess/Cocoa/UIDelegate.mm: (WebKit::UIDelegate::setDelegate): (WebKit::UIDelegate::UIClient::startXRSession): Canonical link: https://commits.webkit.org/270730@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] ee0045: Begin implementing frame name handling for site is...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: ee004596ca4fe4d507bb4bb9051725d8c8592655 https://github.com/WebKit/WebKit/commit/ee004596ca4fe4d507bb4bb9051725d8c8592655 Author: Alex Christensen Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/http/tests/site-isolation/frame-access-after-window-open-expected.txt M LayoutTests/http/tests/site-isolation/frame-access-after-window-open.html A LayoutTests/http/tests/site-isolation/resources/post-message-to-opener-2.html A LayoutTests/http/tests/site-isolation/window-open-with-name-expected.txt A LayoutTests/http/tests/site-isolation/window-open-with-name.html M Source/WebCore/loader/FrameLoader.cpp M Source/WebCore/page/Frame.h M Source/WebCore/page/FrameTree.cpp M Source/WebCore/page/LocalFrame.cpp M Source/WebCore/page/LocalFrame.h M Source/WebCore/page/RemoteFrame.cpp M Source/WebCore/page/RemoteFrame.h M Source/WebKit/Shared/FrameTreeCreationParameters.h M Source/WebKit/Shared/FrameTreeCreationParameters.serialization.in M Source/WebKit/UIProcess/WebFrameProxy.cpp M Source/WebKit/UIProcess/WebFrameProxy.h M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/WebPageProxy.messages.in M Source/WebKit/WebProcess/WebPage/WebFrame.cpp M Source/WebKit/WebProcess/WebPage/WebFrame.h M Source/WebKit/WebProcess/WebPage/WebPage.cpp M Source/WebKit/WebProcess/WebPage/WebPage.h M Source/WebKit/WebProcess/WebPage/WebPage.messages.in Log Message: --- Begin implementing frame name handling for site isolation https://bugs.webkit.org/show_bug.cgi?id=264781 rdar://117092110 Reviewed by Pascoe. In order for the second parameter of window.open to be able to be used, the string name must be found on the correct frame. Most of this can be implemented simply by passing a string around, but in order for WebFrameProxy::frameTreeCreationParameters to be able to be used with multiple frames after instantiation, we need to store the name in the UI process on the WebFrameProxy object. In the web content process, a few fixes were needed. First, when switch from RemoteFrame to LocalFrame or the other way, the frame name should persist so we need to copy it from the old to the new Frame subclass object. In order for the correct frame to be found and used when RemoteFrames are in the tree, I needed to make a few places in FrameTree and FrameLoader work with both types of Frames. I also had to move some RemotePageProxy cleanup from the WebPageProxy destructor to WebPageProxy::close to get WebKitTestRunner to successfully clean up between running tests. This seemed like a good stopping point to make a PR because something that didn't work before works now. I filed another bug for future work to make two more cases work: if the named frame is a RemoteFrame and if the named frame is the main frame. * LayoutTests/http/tests/site-isolation/frame-access-after-window-open-expected.txt: * LayoutTests/http/tests/site-isolation/frame-access-after-window-open.html: * LayoutTests/http/tests/site-isolation/resources/post-message-to-opener-2.html: Added. * LayoutTests/http/tests/site-isolation/window-open-with-name-expected.txt: Added. * LayoutTests/http/tests/site-isolation/window-open-with-name.html: Added. * Source/WebCore/loader/FrameLoader.cpp: (WebCore::FrameLoader::findFrameForNavigation): * Source/WebCore/page/Frame.h: * Source/WebCore/page/FrameTree.cpp: (WebCore::FrameTree::~FrameTree): (WebCore::isFrameFamiliarWith): (WebCore::FrameTree::find const): (WebCore::FrameTree::firstRenderedChild const): (WebCore::FrameTree::nextRenderedSibling const): (WebCore::FrameTree::traverseNext const): (WebCore::FrameTree::traverseNextInPostOrder const): (printFrames): * Source/WebCore/page/LocalFrame.cpp: (WebCore::LocalFrame::disconnectView): (WebCore::LocalFrame::opener const): (WebCore::LocalFrame::opener): * Source/WebCore/page/LocalFrame.h: * Source/WebCore/page/RemoteFrame.cpp: (WebCore::RemoteFrame::disconnectView): * Source/WebCore/page/RemoteFrame.h: * Source/WebKit/Shared/FrameTreeCreationParameters.h: * Source/WebKit/Shared/FrameTreeCreationParameters.serialization.in: * Source/WebKit/UIProcess/WebFrameProxy.cpp: (WebKit::WebFrameProxy::didCreateSubframe): (WebKit::WebFrameProxy::frameTreeCreationParameters const): * Source/WebKit/UIProcess/WebFrameProxy.h: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCreateSubframe): (WebKit::WebPageProxy::createRemoteSubframesInOtherProcesses): (WebKit::WebPageProxy::decidePolicyForNavigationActionSync): * Source/WebKit/UIProcess/WebPageProxy.h: * Source/WebKit/UIProcess/WebPageProxy.messages.in: * Source/WebKit/WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::createSubframe): (WebKit::WebFrame::createRemoteSubframe): (WebKit::WebFrame::didCommitLoadInAnotherProcess): (WebKit::WebF
[webkit-changes] [WebKit/WebKit] 939c6a: Fix webpush sandbox violation
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 939c6ac729658a9668db57a46038bf7c9a3269d2 https://github.com/WebKit/WebKit/commit/939c6ac729658a9668db57a46038bf7c9a3269d2 Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.webpushd.sb.in Log Message: --- Fix webpush sandbox violation https://bugs.webkit.org/show_bug.cgi?id=264831 rdar://118096127 Reviewed by Brent Fulgham. * Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.webpushd.sb.in: Canonical link: https://commits.webkit.org/270728@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] d818a9: Build fix weak linking SECore
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: d818a9114567f258212a26afc3c861439aca2812 https://github.com/WebKit/WebKit/commit/d818a9114567f258212a26afc3c861439aca2812 Author: Justin Michaud Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/JavaScriptCore/jit/ExecutableAllocator.cpp Log Message: --- Build fix weak linking SECore https://bugs.webkit.org/show_bug.cgi?id=264822 rdar://118404992 Reviewed by Mark Lam. We need to tell clang that this symbol can be weak-linked. * Source/JavaScriptCore/jit/ExecutableAllocator.cpp: (JSC::initializeJITPageReservation): Canonical link: https://commits.webkit.org/270727@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 814d89: Implement FECompositeNeonArithmeticApplier
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 814d89056b21895a5c88315ec43a2fcd21e6a5c3 https://github.com/WebKit/WebKit/commit/814d89056b21895a5c88315ec43a2fcd21e6a5c3 Author: Said Abou-Hallawa Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/Sources.txt M Source/WebCore/WebCore.xcodeproj/project.pbxproj R Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h A Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeNeonArithmeticApplier.cpp A Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeNeonArithmeticApplier.h M Source/WebCore/platform/graphics/filters/FEComposite.cpp M Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp M Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.h A Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareArithmeticApplier.cpp A Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareArithmeticApplier.h Log Message: --- Implement FECompositeNeonArithmeticApplier https://bugs.webkit.org/show_bug.cgi?id=243432 Reviewed by Simon Fraser. Move the software arithmetic FEComposite applier to a separate applier. Move the FEComposite NEON code to a new applier named FECompositeNeonArithmeticApplier. Make FEComposite::createSoftwareApplier() decide which applier to create. * Source/WebCore/Sources.txt: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeNeonArithmeticApplier.cpp: Renamed from Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeArithmeticNEON.h. (WebCore::FECompositeNeonArithmeticApplier::FECompositeNeonArithmeticApplier): (WebCore::FECompositeNeonArithmeticApplier::computePixels): (WebCore::FECompositeNeonArithmeticApplier::applyPlatform): (WebCore::FECompositeNeonArithmeticApplier::apply const): * Source/WebCore/platform/graphics/cpu/arm/filters/FECompositeNeonArithmeticApplier.h: Added. * Source/WebCore/platform/graphics/filters/FEComposite.cpp: (WebCore::FEComposite::createSoftwareApplier const): * Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.cpp: (WebCore::FECompositeSoftwareApplier::FECompositeSoftwareApplier): (WebCore::FECompositeSoftwareApplier::apply const): (WebCore::FECompositeSoftwareApplier::clampByte): Deleted. (WebCore::FECompositeSoftwareApplier::computeArithmeticPixels): Deleted. (WebCore::FECompositeSoftwareApplier::computeArithmeticPixelsUnclamped): Deleted. (WebCore::FECompositeSoftwareApplier::applyPlatformArithmetic): Deleted. (WebCore::FECompositeSoftwareApplier::applyArithmetic const): Deleted. (WebCore::FECompositeSoftwareApplier::applyNonArithmetic const): Deleted. * Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.h: * Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareArithmeticApplier.cpp: Added. (WebCore::FECompositeSoftwareArithmeticApplier::FECompositeSoftwareArithmeticApplier): (WebCore::FECompositeSoftwareArithmeticApplier::clampByte): (WebCore::FECompositeSoftwareArithmeticApplier::computePixels): (WebCore::FECompositeSoftwareArithmeticApplier::computePixelsUnclamped): (WebCore::FECompositeSoftwareArithmeticApplier::applyPlatform): (WebCore::FECompositeSoftwareArithmeticApplier::apply const): * Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareArithmeticApplier.h: Copied from Source/WebCore/platform/graphics/filters/software/FECompositeSoftwareApplier.h. Canonical link: https://commits.webkit.org/270726@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] ec2246: Generate IPC serialization for enumerations under ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: ec22469b07e5e15cc6d3d28a992abf19e5430206 https://github.com/WebKit/WebKit/commit/ec22469b07e5e15cc6d3d28a992abf19e5430206 Author: Žan Doberšek Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/DerivedSources-input.xcfilelist M Source/WebKit/DerivedSources.make A Source/WebKit/Shared/Extensions/WebExtensionContext.serialization.in M Source/WebKit/Shared/Extensions/WebExtensionTab.serialization.in M Source/WebKit/Shared/Extensions/WebExtensionWindow.serialization.in M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h M Source/WebKit/UIProcess/Extensions/WebExtensionTab.h M Source/WebKit/UIProcess/Extensions/WebExtensionWindow.h M Source/WebKit/WebKit.xcodeproj/project.pbxproj Log Message: --- Generate IPC serialization for enumerations under WebKit/UIProcess/Extensions https://bugs.webkit.org/show_bug.cgi?id=264801 Reviewed by Timothy Hatcher and Chris Dumez. Adjust IPC serialization specification for WebExtensionTab::ImageFormat and WebExtensionWindow::TypeFilter enums so that the generated code can also cover all cases even when the EnumTraits for the two enums are removed. WebExtensionContext::InstallReason enum is similarly adjusted, along with the new serialization input file. WebExtension::ModifierFlags enum is left there for now since it's been added only a few days ago, so removing it could unintentionally break some ongoing changes. * Source/WebKit/DerivedSources-input.xcfilelist: * Source/WebKit/DerivedSources.make: * Source/WebKit/Shared/Extensions/WebExtensionContext.serialization.in: Copied from Source/WebKit/Shared/Extensions/WebExtensionWindow.serialization.in. * Source/WebKit/Shared/Extensions/WebExtensionTab.serialization.in: * Source/WebKit/Shared/Extensions/WebExtensionWindow.serialization.in: * Source/WebKit/UIProcess/Extensions/WebExtensionContext.h: * Source/WebKit/UIProcess/Extensions/WebExtensionTab.h: * Source/WebKit/UIProcess/Extensions/WebExtensionWindow.h: * Source/WebKit/WebKit.xcodeproj/project.pbxproj: Canonical link: https://commits.webkit.org/270725@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 72e51e: Set correct bundle version for WebKit process exte...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 72e51ec2f7617ca00a382f6140614720e93556b9 https://github.com/WebKit/WebKit/commit/72e51ec2f7617ca00a382f6140614720e93556b9 Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Configurations/GPUExtension.xcconfig M Source/WebKit/Configurations/NetworkingExtension.xcconfig M Source/WebKit/Configurations/WebContentCaptivePortalExtension.xcconfig M Source/WebKit/Configurations/WebContentExtension.xcconfig M Source/WebKit/Shared/AuxiliaryProcessExtensions/GPUExtension-Info.plist M Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingExtension-Info.plist M Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentExtension-CaptivePortal-Info.plist M Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentExtension-Info.plist Log Message: --- Set correct bundle version for WebKit process extensions https://bugs.webkit.org/show_bug.cgi?id=264818 rdar://118402879 Reviewed by Brent Fulgham. Use bundle version from the version config file. * Source/WebKit/Configurations/GPUExtension.xcconfig: * Source/WebKit/Configurations/NetworkingExtension.xcconfig: * Source/WebKit/Configurations/WebContentCaptivePortalExtension.xcconfig: * Source/WebKit/Configurations/WebContentExtension.xcconfig: * Source/WebKit/Shared/AuxiliaryProcessExtensions/GPUExtension-Info.plist: * Source/WebKit/Shared/AuxiliaryProcessExtensions/NetworkingExtension-Info.plist: * Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentExtension-CaptivePortal-Info.plist: * Source/WebKit/Shared/AuxiliaryProcessExtensions/WebContentExtension-Info.plist: Canonical link: https://commits.webkit.org/270724@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 7d27cd: [Site Isolation] Reduce code duplication when send...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7d27cdd3e980f1d2de99a9525eee9efba8929a07 https://github.com/WebKit/WebKit/commit/7d27cdd3e980f1d2de99a9525eee9efba8929a07 Author: Charlie Wolfe Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/RemotePageProxy.cpp M Source/WebKit/UIProcess/RemotePageProxy.h M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h Log Message: --- [Site Isolation] Reduce code duplication when sending IPC to a web page https://bugs.webkit.org/show_bug.cgi?id=264788 rdar://118368823 Reviewed by Alex Christensen. With site isolation we often need to check if a RemotePageProxy exists for a given frame before sending IPC to the process hosting the frame. We should have a helper function instead of duplicating this logic throughout WebPageProxy. * Source/WebKit/UIProcess/RemotePageProxy.cpp: (WebKit::RemotePageProxy::sendMouseEvent): Deleted. * Source/WebKit/UIProcess/RemotePageProxy.h: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::performDragControllerAction): (WebKit::WebPageProxy::dragEnded): (WebKit::WebPageProxy::handleMouseEventReply): (WebKit::WebPageProxy::sendMouseEvent): (WebKit::WebPageProxy::sendKeyEvent): (WebKit::WebPageProxy::runJavaScriptInFrameInScriptWorld): (WebKit::WebPageProxy::dispatchLoadEventToFrameOwnerElement): (WebKit::WebPageProxy::sendToWebPage): (WebKit::WebPageProxy::sendToProcessContainingFrame): * Source/WebKit/UIProcess/WebPageProxy.h: Canonical link: https://commits.webkit.org/270723@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] dfe319: Clear activeTab and action tab customization when ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dfe319166e75f999730302ef7d9309a21a6ac1cd https://github.com/WebKit/WebKit/commit/dfe319166e75f999730302ef7d9309a21a6ac1cd Author: Timothy Hatcher Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionActionCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionControllerCocoa.mm M Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionTabCocoa.mm M Source/WebKit/UIProcess/Extensions/WebExtensionAction.h M Source/WebKit/UIProcess/Extensions/WebExtensionContext.h M Source/WebKit/UIProcess/Extensions/WebExtensionController.h M Source/WebKit/UIProcess/Extensions/WebExtensionTab.h M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIAction.mm M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm Log Message: --- Clear activeTab and action tab customization when tab navigates. https://webkit.org/b/263918 rdar://problem/117704349 Reviewed by Brian Weinstein. Moves the webNavigation load events to WebExtensionContext, since more things will need to tie into these hooks. Fixes injected style removal when webPageID is used, so it only removes the styles when the page they apply to is navigated. Also this was incorrectly behind the webNavigation permission checks before, when it needs to always happen. Properly clears the activeTb permission on tab navigation, and fires the onUpdated events for URL and Title when activeTab comes and goes, as well as any pattern grant. This matches what Safari currently does when permissions are granted. Clears the action customizations if the tab navigates. This matches the other browsers and what Safari currently does. Fixes the match pattern notifications to use the right constant. * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionActionCocoa.mm: (WebKit::WebExtensionAction::clearCustomizations): (WebKit::WebExtensionAction::setPopupPath): (WebKit::WebExtensionAction::setLabel): (WebKit::WebExtensionAction::setBadgeText): (WebKit::WebExtensionAction::setEnabled): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionContextCocoa.mm: (WebKit::WebExtensionContext::postAsyncNotification): (WebKit::WebExtensionContext::grantPermissionMatchPatterns): (WebKit::WebExtensionContext::denyPermissionMatchPatterns): (WebKit::WebExtensionContext::removeGrantedPermissionMatchPatterns): (WebKit::WebExtensionContext::removeDeniedPermissionMatchPatterns): (WebKit::WebExtensionContext::permissionState): (WebKit::WebExtensionContext::setPermissionState): (WebKit::WebExtensionContext::didChangeTabProperties): (WebKit::WebExtensionContext::didStartProvisionalLoadForFrame): (WebKit::WebExtensionContext::didCommitLoadForFrame): (WebKit::WebExtensionContext::didFinishLoadForFrame): (WebKit::WebExtensionContext::didFailLoadForFrame): (WebKit::WebExtensionContext::performAction): (WebKit::WebExtensionContext::performCommand): (WebKit::WebExtensionContext::userGesturePerformed): (WebKit::WebExtensionContext::hasActiveUserGesture const): (WebKit::WebExtensionContext::clearUserGesture): (WebKit::WebExtensionContext::loadBackgroundPageListenersFromStorage): (WebKit::WebExtensionContext::saveBackgroundPageListenersToStorage): (WebKit::WebExtensionContext::removeInjectedContent): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionControllerCocoa.mm: (WebKit::WebExtensionController::didStartProvisionalLoadForFrame): (WebKit::WebExtensionController::didCommitLoadForFrame): (WebKit::WebExtensionController::didFinishLoadForFrame): (WebKit::WebExtensionController::didFailLoadForFrame): * Source/WebKit/UIProcess/Extensions/Cocoa/WebExtensionTabCocoa.mm: (WebKit::WebExtensionTab::changedParameters const): * Source/WebKit/UIProcess/Extensions/WebExtensionAction.h: * Source/WebKit/UIProcess/Extensions/WebExtensionContext.h: (WebKit::WebExtensionContext::didChangeTabProperties): * Source/WebKit/UIProcess/Extensions/WebExtensionController.h: * Source/WebKit/UIProcess/Extensions/WebExtensionTab.h: (WebKit::WebExtensionTab::changedParameters): (WebKit::WebExtensionTab::hasActiveUserGesture): (WebKit::WebExtensionTab::setActiveUserGesture): (WebKit::WebExtensionTab::temporaryPermissionMatchPattern): (WebKit::WebExtensionTab::setTemporaryPermissionMatchPattern): (WebKit::WebExtensionTab::changedProperties const): (WebKit::WebExtensionTab::addChangedProperties): (WebKit::WebExtensionTab::clearChangedProperties): * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPIAction.mm: (TestWebKitAPI::TEST): * Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebExtensionAPITabs.mm: (TestWebKitAPI::TEST): * Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm: (-[TestWebExtensionTab webView:didCommitNavigation:]): Canonical link: https://commits.webkit.org/270722@main
[webkit-changes] [WebKit/WebKit] 47a57e: Simplify members of CoreIPCData
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 47a57e415bc74fc62711c429520a7cb45fd6af79 https://github.com/WebKit/WebKit/commit/47a57e415bc74fc62711c429520a7cb45fd6af79 Author: Simon Lewis Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/Shared/Cocoa/CoreIPCData.h M Source/WebKit/Shared/Cocoa/CoreIPCData.serialization.in M Source/WebKit/Shared/cf/CFTypes.serialization.in Log Message: --- Simplify members of CoreIPCData https://bugs.webkit.org/show_bug.cgi?id=264782 rdar://118364914 Reviewed by David Kilzer. * Source/WebKit/Shared/Cocoa/CoreIPCData.h: (WebKit::CoreIPCData::CoreIPCData): (WebKit::CoreIPCData::data const): (WebKit::CoreIPCData::dataReference const): (WebKit::CoreIPCData::toID const): (WebKit::CoreIPCData::createData const): Deleted. (WebKit::CoreIPCData::get const): Deleted. * Source/WebKit/Shared/Cocoa/CoreIPCData.serialization.in: * Source/WebKit/Shared/cf/CFTypes.serialization.in: Canonical link: https://commits.webkit.org/270721@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] e1fa6b: Block access to trustd on macOS
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e1fa6b5e2b722a68c05e18e4e7e7198891223f2e https://github.com/WebKit/WebKit/commit/e1fa6b5e2b722a68c05e18e4e7e7198891223f2e Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/PAL/pal/spi/cf/VideoToolboxSPI.h M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm M Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm M Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Log Message: --- Block access to trustd on macOS https://bugs.webkit.org/show_bug.cgi?id=264685 rdar://114834439 Reviewed by Sihui Liu. This can be achieved by using a new flag to skip code sign validation for trusted plugins. This change also enables us to remove eager opening of the trustd connection. * Source/WebCore/PAL/pal/spi/cf/VideoToolboxSPI.h: * Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeWebProcess): * Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::setVideoDecoderBehaviors): (WebKit::WebProcess::platformInitializeWebProcess): * Source/WebKit/WebProcess/com.apple.WebProcess.sb.in: Canonical link: https://commits.webkit.org/270720@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 362150: Port PlatformMediaSession enums to the new IPC ser...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 362150b0a4ce0acd454616a3e58ff789b3a35492 https://github.com/WebKit/WebKit/commit/362150b0a4ce0acd454616a3e58ff789b3a35492 Author: Claudio Saavedra Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/Modules/webaudio/AudioContext.cpp M Source/WebCore/html/HTMLMediaElement.cpp M Source/WebCore/html/MediaElementSession.cpp M Source/WebCore/platform/audio/PlatformMediaSession.cpp M Source/WebCore/platform/audio/PlatformMediaSession.h M Source/WebCore/platform/audio/PlatformMediaSession.serialization.in M Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp M Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm M Source/WebCore/testing/Internals.cpp Log Message: --- Port PlatformMediaSession enums to the new IPC serialization format https://bugs.webkit.org/show_bug.cgi?id=264807 Reviewed by Chris Dumez. Port the enums to the serialization format, and the flags enum to OptionSet. * Source/WebCore/Modules/webaudio/AudioContext.cpp: (WebCore::AudioContext::resumeRendering): (WebCore::AudioContext::suspend): (WebCore::AudioContext::resume): (WebCore::AudioContext::suspendPlayback): (WebCore::AudioContext::defaultDestinationWillBecomeConnected): * Source/WebCore/html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::pausedForUserInteraction const): (WebCore::HTMLMediaElement::virtualHasPendingActivity const): (WebCore::HTMLMediaElement::shouldOverrideBackgroundPlaybackRestriction const): (WebCore::HTMLMediaElement::updateShouldAutoplay): (WebCore::HTMLMediaElement::playbackControlsManagerBehaviorRestrictionsTimerFired): * Source/WebCore/html/MediaElementSession.cpp: (WebCore::MediaElementSession::visibilityChanged): (WebCore::MediaElementSession::clientDataBufferingTimerFired): (WebCore::MediaElementSession::preferredBufferingPolicy const): (WebCore::MediaElementSession::nowPlayingInfo const): (WebCore::MediaElementSession::updateMediaUsageIfChanged): * Source/WebCore/platform/audio/PlatformMediaSession.cpp: (WebCore::convertEnumerationToString): (WebCore::PlatformMediaSession::beginInterruption): (WebCore::PlatformMediaSession::endInterruption): (WebCore::PlatformMediaSession::clientWillBeginAutoplaying): (WebCore::PlatformMediaSession::clientWillBeginPlayback): (WebCore::PlatformMediaSession::processClientWillPausePlayback): (WebCore::PlatformMediaSession::pauseSession): * Source/WebCore/platform/audio/PlatformMediaSession.h: * Source/WebCore/platform/audio/PlatformMediaSession.serialization.in: * Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp: (WebCore::PlatformMediaSessionManager::sessionWillBeginPlayback): (WebCore::PlatformMediaSessionManager::sessionWillEndPlayback): (WebCore::PlatformMediaSessionManager::sessionStateChanged): (WebCore::PlatformMediaSessionManager::applicationWillBecomeInactive): (WebCore::PlatformMediaSessionManager::applicationDidBecomeActive): (WebCore::PlatformMediaSessionManager::applicationDidEnterBackground): (WebCore::PlatformMediaSessionManager::applicationWillEnterForeground): (WebCore::PlatformMediaSessionManager::sessionIsPlayingToWirelessPlaybackTargetChanged): (WebCore::PlatformMediaSessionManager::processSystemWillSleep): (WebCore::PlatformMediaSessionManager::processSystemDidWake): (WebCore::PlatformMediaSessionManager::mediaPlaybackIsPaused): (WebCore::PlatformMediaSessionManager::suspendAllMediaPlaybackForGroup): (WebCore::PlatformMediaSessionManager::resumeAllMediaPlaybackForGroup): * Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.mm: (WebCore::MediaSessionManagerCocoa::sessionWillEndPlayback): * Source/WebCore/testing/Internals.cpp: (WebCore::Internals::beginMediaSessionInterruption): (WebCore::Internals::endMediaSessionInterruption): Canonical link: https://commits.webkit.org/270719@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 0150f2: [Gardening]: REGRESSION(268639@main): [ macOS wk2 ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 0150f2f2df26902e787e3d59ec22f7c303b2dbc6 https://github.com/WebKit/WebKit/commit/0150f2f2df26902e787e3d59ec22f7c303b2dbc6 Author: Marta Darbinyan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- [Gardening]: REGRESSION(268639@main): [ macOS wk2 ] fast/frames/iframe-window-focus.html is consistently failing. rdar://118355231 https://bugs.webkit.org/show_bug.cgi?id=264773 Unreviewed test gardening. Removing test expectation * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/270718@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 45dd15: Change install location of WebKit extensions
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 45dd15ebf93a061cdccd4be29effe7a85cafaf30 https://github.com/WebKit/WebKit/commit/45dd15ebf93a061cdccd4be29effe7a85cafaf30 Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm M Source/WebKit/WebKit.xcodeproj/project.pbxproj Log Message: --- Change install location of WebKit extensions https://bugs.webkit.org/show_bug.cgi?id=264689 rdar://118281184 Reviewed by Brent Fulgham and Elliott Williams. Change install location of WebKit process extensions. * Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm: (WebKit::serviceNameAndIdentifier): * Source/WebKit/WebKit.xcodeproj/project.pbxproj: Canonical link: https://commits.webkit.org/270717@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] c9f96b: Reduce padding in MacroAssembler::Jump on ARM64
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: c9f96b41388b940fad2d3d7e49140f4539cc8f17 https://github.com/WebKit/WebKit/commit/c9f96b41388b940fad2d3d7e49140f4539cc8f17 Author: David Degazio Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/JavaScriptCore/assembler/ARM64Assembler.h M Source/JavaScriptCore/assembler/AbstractMacroAssembler.h Log Message: --- Reduce padding in MacroAssembler::Jump on ARM64 https://bugs.webkit.org/show_bug.cgi?id=264513 rdar://118195458 Reviewed by Mark Lam. Rearranges the ARM64-specific fields of MacroAssembler::Jump, and uses uint8_t as the storage type for ARM64Assembler::Condition and ARM64Assembler::JumpType, overall bringing the size of Jump from 32 to 16 bytes. * Source/JavaScriptCore/assembler/ARM64Assembler.h: * Source/JavaScriptCore/assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::Jump::Jump): Canonical link: https://commits.webkit.org/270716@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 5c5067: Move `hasExplicitlySetColorScheme` from `RenderSty...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5c50677827c04de8cafca536febb6d01d9a7549c https://github.com/WebKit/WebKit/commit/5c50677827c04de8cafca536febb6d01d9a7549c Author: Aditya Keerthi Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/rendering/style/RenderStyle.cpp M Source/WebCore/rendering/style/RenderStyle.h M Source/WebCore/rendering/style/RenderStyleInlines.h M Source/WebCore/rendering/style/RenderStyleSetters.h M Source/WebCore/rendering/style/StyleMiscNonInheritedData.cpp M Source/WebCore/rendering/style/StyleMiscNonInheritedData.h M Source/WebCore/style/StyleBuilderCustom.h Log Message: --- Move `hasExplicitlySetColorScheme` from `RenderStyle::NonInheritedFlags` into `StyleMiscNonInheritedData` https://bugs.webkit.org/show_bug.cgi?id=264794 rdar://118374921 Reviewed by Simon Fraser. Move the `hasExplicitlySetColorScheme` into `StyleMiscNonInheritedData` to free up an additional bit for new pseudo-elements in `RenderStyle::NonInheritedFlags`. There are currently 6 bits of unused space (5 following this patch) in `StyleMiscNonInheritedData`. Additionally, `hasExplicitlySetColorScheme` is not expected to be too common, as in most use cases it will simply be specified on the `:root`, and inherited on children. * Source/WebCore/rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::NonInheritedFlags::copyNonInheritedFrom): (WebCore::RenderStyle::conservativelyCollectChangedAnimatableProperties const): * Source/WebCore/rendering/style/RenderStyle.h: (WebCore::RenderStyle::setHasExplicitlySetColorScheme): Deleted. (WebCore::RenderStyle::hasExplicitlySetColorScheme const): Deleted. * Source/WebCore/rendering/style/RenderStyleInlines.h: (WebCore::RenderStyle::hasExplicitlySetColorScheme const): * Source/WebCore/rendering/style/RenderStyleSetters.h: (WebCore::RenderStyle::setHasExplicitlySetColorScheme): * Source/WebCore/rendering/style/StyleMiscNonInheritedData.cpp: (WebCore::StyleMiscNonInheritedData::StyleMiscNonInheritedData): (WebCore::StyleMiscNonInheritedData::operator== const): * Source/WebCore/rendering/style/StyleMiscNonInheritedData.h: * Source/WebCore/style/StyleBuilderCustom.h: (WebCore::Style::BuilderCustom::applyValueColorScheme): Canonical link: https://commits.webkit.org/270715@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 981687: Create script to compile sandboxes
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9816876160529fe04f0877a49bcd85b99ede78b3 https://github.com/WebKit/WebKit/commit/9816876160529fe04f0877a49bcd85b99ede78b3 Author: Per Arne Vollan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/DerivedSources.make A Source/WebKit/Scripts/compile-sandbox.sh M Source/WebKit/WebKit.xcodeproj/project.pbxproj Log Message: --- Create script to compile sandboxes https://bugs.webkit.org/show_bug.cgi?id=264093 rdar://117854457 Reviewed by Elliot Williams. * Source/WebKit/DerivedSources.make: * Source/WebKit/Scripts/compile-sandbox.sh: Added. * Source/WebKit/WebKit.xcodeproj/project.pbxproj: Canonical link: https://commits.webkit.org/270714@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 58712f: Port RTCPacketOptions to the new IPC serialization...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 58712f35351470bfd43a0ea5a4faefcd780315cf https://github.com/WebKit/WebKit/commit/58712f35351470bfd43a0ea5a4faefcd780315cf Author: Chris Dumez Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/CMakeLists.txt M Source/WebKit/DerivedSources-input.xcfilelist M Source/WebKit/DerivedSources.make M Source/WebKit/Shared/RTCPacketOptions.cpp M Source/WebKit/Shared/RTCPacketOptions.h A Source/WebKit/Shared/RTCPacketOptions.serialization.in M Source/WebKit/WebKit.xcodeproj/project.pbxproj Log Message: --- Port RTCPacketOptions to the new IPC serialization format https://bugs.webkit.org/show_bug.cgi?id=264779 Reviewed by Alex Christensen. * Source/WebKit/CMakeLists.txt: * Source/WebKit/DerivedSources.make: * Source/WebKit/Shared/RTCPacketOptions.cpp: (WebKit::RTCPacketOptions::RTCPacketOptions): (WebKit::RTCPacketOptions::serializableData const): (WebKit::RTCPacketOptions::encode const): Deleted. (WebKit::RTCPacketOptions::decode): Deleted. * Source/WebKit/Shared/RTCPacketOptions.h: * Source/WebKit/Shared/RTCPacketOptions.serialization.in: Added. * Source/WebKit/WebKit.xcodeproj/project.pbxproj: Canonical link: https://commits.webkit.org/270713@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] a06f26: [Gardening]: NEW TEST [264478@main: [ Monterey+ wk...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: a06f2607df8707bfd5e22774bf62501b962dd873 https://github.com/WebKit/WebKit/commit/a06f2607df8707bfd5e22774bf62501b962dd873 Author: Marta Darbinyan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- [Gardening]: NEW TEST [264478@main: [ Monterey+ wk2 x86_64 ] http/wpt/mediarecorder/record-context-created-late.html is a constant failure https://bugs.webkit.org/show_bug.cgi?id=264783 rdar://118396753 Unreviewed test gardening. Adding test expectation * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/270712@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 19e0a3: Sort the two Theme::userPrefers* methods
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 19e0a37f75482d982ec3c2b312540dee28382268 https://github.com/WebKit/WebKit/commit/19e0a37f75482d982ec3c2b312540dee28382268 Author: Anne van Kesteren Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/platform/Theme.cpp M Source/WebCore/platform/Theme.h M Source/WebCore/platform/adwaita/ThemeAdwaita.cpp M Source/WebCore/platform/adwaita/ThemeAdwaita.h M Source/WebCore/platform/ios/ThemeIOS.h M Source/WebCore/platform/ios/ThemeIOS.mm M Source/WebCore/platform/mac/ThemeMac.h M Source/WebCore/platform/mac/ThemeMac.mm Log Message: --- Sort the two Theme::userPrefers* methods https://bugs.webkit.org/show_bug.cgi?id=264809 rdar://118389508 Reviewed by Aditya Keerthi. * Source/WebCore/platform/Theme.cpp: (WebCore::Theme::userPrefersReducedMotion const): Deleted. (WebCore::Theme::userPrefersContrast const): Deleted. * Source/WebCore/platform/Theme.h: (WebCore::Theme::userPrefersContrast const): (WebCore::Theme::userPrefersReducedMotion const): * Source/WebCore/platform/adwaita/ThemeAdwaita.cpp: (WebCore::ThemeAdwaita::userPrefersReducedMotion const): * Source/WebCore/platform/adwaita/ThemeAdwaita.h: * Source/WebCore/platform/ios/ThemeIOS.h: * Source/WebCore/platform/ios/ThemeIOS.mm: (WebCore::ThemeIOS::userPrefersContrast const): (WebCore::ThemeIOS::userPrefersReducedMotion const): * Source/WebCore/platform/mac/ThemeMac.h: * Source/WebCore/platform/mac/ThemeMac.mm: (WebCore::ThemeMac::userPrefersContrast const): (WebCore::ThemeMac::userPrefersReducedMotion const): Canonical link: https://commits.webkit.org/270711@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 7b68c9: Use dynamicDowncast even more in the DOM
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 7b68c9b9e188caabb240fde9d0884d0343a45e81 https://github.com/WebKit/WebKit/commit/7b68c9b9e188caabb240fde9d0884d0343a45e81 Author: Chris Dumez Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/dom/ElementTraversal.h M Source/WebCore/dom/Event.cpp M Source/WebCore/dom/EventContext.cpp M Source/WebCore/dom/EventNames.h M Source/WebCore/dom/EventPath.cpp M Source/WebCore/dom/EventPath.h M Source/WebCore/dom/EventTarget.cpp M Source/WebCore/dom/FragmentDirectiveRangeFinder.cpp M Source/WebCore/dom/FullscreenManager.cpp M Source/WebCore/dom/ImageOverlay.cpp M Source/WebCore/dom/KeyboardEvent.cpp M Source/WebCore/dom/MessagePort.cpp M Source/WebCore/dom/MouseEvent.cpp M Source/WebCore/dom/MouseRelatedEvent.cpp Log Message: --- Use dynamicDowncast even more in the DOM https://bugs.webkit.org/show_bug.cgi?id=264792 Reviewed by Darin Adler. Use dynamicDowncast even more in the DOM instead of is() + downcast(). It is less error-prone and often results in more concise code. I am also hoping to have downcast<>() do a type check on release builds in the future. It is currently too expensive to do so but it may become affordable if we use dynamicDowncast() instead when possible. * Source/WebCore/dom/ElementTraversal.h: (WebCore::Traversal::nextTemplate): (WebCore::Traversal::firstChildTemplate): (WebCore::Traversal::lastChildTemplate): (WebCore::Traversal::firstWithinTemplate): (WebCore::Traversal::lastWithinTemplate): (WebCore::Traversal::nextTemplate): (WebCore::Traversal::previous): (WebCore::Traversal::nextSibling): (WebCore::Traversal::previousSibling): (WebCore::Traversal::nextSkippingChildren): (WebCore::Traversal::inclusiveFirstWithin): (WebCore::Traversal::inclusiveLastWithin): (WebCore::ElementTraversal::previousIncludingPseudo): (WebCore::ElementTraversal::nextIncludingPseudo): (WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren): (WebCore::ElementTraversal::pseudoAwarePreviousSibling): * Source/WebCore/dom/Event.cpp: (WebCore::Event::setCurrentTarget): (WebCore::Event::timeStampForBindings const): * Source/WebCore/dom/EventContext.cpp: (WebCore::EventContext::handleLocalEvents const): (WebCore::EventContext::isUnreachableNode const): * Source/WebCore/dom/EventNames.h: (WebCore::EventNames::isTouchRelatedEventType const): * Source/WebCore/dom/EventPath.cpp: (WebCore::shouldEventCrossShadowBoundary): (WebCore::nodeOrHostIfPseudoElement): (WebCore::EventPath::EventPath): (WebCore::EventPath::buildPath): (WebCore::EventPath::retargetTouch): * Source/WebCore/dom/EventPath.h: (WebCore::EventPath::eventTargetRespectingTargetRules): * Source/WebCore/dom/EventTarget.cpp: (WebCore::EventTarget::addEventListener): (WebCore::EventTarget::innerInvokeEventListeners): (WebCore::EventTarget::invalidateEventListenerRegions): * Source/WebCore/dom/FragmentDirectiveRangeFinder.cpp: (WebCore::FragmentDirectiveRangeFinder::boundaryPointAtIndexInNodes): (WebCore::FragmentDirectiveRangeFinder::isVisibleTextNode): (WebCore::FragmentDirectiveRangeFinder::findRangeFromNodeList): (WebCore::FragmentDirectiveRangeFinder::rangeOfStringInRange): * Source/WebCore/dom/FullscreenManager.cpp: (WebCore::markRendererDirtyAfterTopLayerChange): (WebCore::FullscreenManager::dispatchFullscreenChangeOrErrorEvent): * Source/WebCore/dom/ImageOverlay.cpp: (WebCore::ImageOverlay::containerRect): * Source/WebCore/dom/KeyboardEvent.cpp: (WebCore::viewIsCompositing): (WebCore::KeyboardEvent::charCode const): * Source/WebCore/dom/MessagePort.cpp: (WebCore::MessagePort::dispatchMessages): (WebCore::MessagePort::dispatchEvent): * Source/WebCore/dom/MouseEvent.cpp: (WebCore::MouseEvent::canTriggerActivationBehavior): * Source/WebCore/dom/MouseRelatedEvent.cpp: (WebCore::MouseRelatedEvent::frameViewFromWindowProxy): Canonical link: https://commits.webkit.org/270710@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 433403: Remove leftover EnumTraits.h includes
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 4334033d8c88a541cd5a9739112c61565685a1d4 https://github.com/WebKit/WebKit/commit/4334033d8c88a541cd5a9739112c61565685a1d4 Author: Claudio Saavedra Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/html/track/VTTCue.h M Source/WebCore/platform/mediacapabilities/ColorGamut.h M Source/WebCore/platform/mediacapabilities/HdrMetadataType.h Log Message: --- Remove leftover EnumTraits.h includes https://bugs.webkit.org/show_bug.cgi?id=264813 Reviewed by Žan Doberšek. These were left in some of my previous commits. * Source/WebCore/html/track/VTTCue.h: * Source/WebCore/platform/mediacapabilities/ColorGamut.h: * Source/WebCore/platform/mediacapabilities/HdrMetadataType.h: Canonical link: https://commits.webkit.org/270709@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] b76645: [Gardening]: REGRESSION (270167@main): [ Sonoma wk...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: b76645105d3793f50c29c0e4dca170f3e2cf82eb https://github.com/WebKit/WebKit/commit/b76645105d3793f50c29c0e4dca170f3e2cf82eb Author: Marta Darbinyan Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/platform/mac-wk2/TestExpectations Log Message: --- [Gardening]: REGRESSION (270167@main): [ Sonoma wk2 Release x86_64 ] fast/text/canvas-color-fonts/stroke-gradient-COLR.html is constant failure https://bugs.webkit.org/show_bug.cgi?id=264615 rdar://118247190 Unreviewed test gardening. Removing test expectation * LayoutTests/platform/mac-wk2/TestExpectations: Canonical link: https://commits.webkit.org/270708@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 3931fc: Incorrect caret position in empty elements with a ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 3931fcef84e408738e94e3a8dea06f611a68b6ec https://github.com/WebKit/WebKit/commit/3931fcef84e408738e94e3a8dea06f611a68b6ec Author: Aditya Keerthi Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/editing/selection/caret-in-empty-block-vertical-horizontal-rtl-text-indent-padding-expected.txt A LayoutTests/editing/selection/caret-in-empty-block-vertical-horizontal-rtl-text-indent-padding.html A LayoutTests/editing/selection/caret-in-empty-block-vertical-rl-rtl-expected.txt A LayoutTests/editing/selection/caret-in-empty-block-vertical-rl-rtl.html A LayoutTests/editing/selection/caret-in-empty-inline-vertical-rl-rtl-expected.txt A LayoutTests/editing/selection/caret-in-empty-inline-vertical-rl-rtl.html M Source/WebCore/rendering/CaretRectComputation.cpp M Source/WebCore/rendering/RenderBoxModelObject.h M Source/WebCore/rendering/RenderBoxModelObjectInlines.h Log Message: --- Incorrect caret position in empty elements with a vertical writing mode https://bugs.webkit.org/show_bug.cgi?id=248322 rdar://102652127 Reviewed by Tim Nguyen. Caret rect computation for empty elements does not fully account for vertical writing mode. Fix by consistently using logical values. * LayoutTests/editing/selection/caret-in-empty-block-vertical-horizontal-rtl-text-indent-padding-expected.txt: Added. * LayoutTests/editing/selection/caret-in-empty-block-vertical-horizontal-rtl-text-indent-padding.html: Added. * LayoutTests/editing/selection/caret-in-empty-block-vertical-rl-rtl-expected.txt: Added. * LayoutTests/editing/selection/caret-in-empty-block-vertical-rl-rtl.html: Added. * LayoutTests/editing/selection/caret-in-empty-inline-vertical-rl-rtl-expected.txt: Added. * LayoutTests/editing/selection/caret-in-empty-inline-vertical-rl-rtl.html: Added. * Source/WebCore/rendering/CaretRectComputation.cpp: (WebCore::computeCaretRectForEmptyElement): (WebCore::computeCaretRectForBlock): (WebCore::computeCaretRectForInline): * Source/WebCore/rendering/RenderBoxModelObject.h: * Source/WebCore/rendering/RenderBoxModelObjectInlines.h: (WebCore::RenderBoxModelObject::borderAndPaddingLogicalHeight const): (WebCore::RenderBoxModelObject::borderAndPaddingLogicalLeft const): (WebCore::RenderBoxModelObject::borderAndPaddingLogicalRight const): (WebCore::RenderBoxModelObject::borderAndPaddingEnd const): Canonical link: https://commits.webkit.org/270707@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 748284: Generate serialization for NSError
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 748284bf1db037bd7ed18324fb23de20605c06af https://github.com/WebKit/WebKit/commit/748284bf1db037bd7ed18324fb23de20605c06af Author: Simon Lewis Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebKit/DerivedSources-input.xcfilelist M Source/WebKit/DerivedSources.make M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.h M Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm A Source/WebKit/Shared/Cocoa/CoreIPCError.h A Source/WebKit/Shared/Cocoa/CoreIPCError.mm A Source/WebKit/Shared/Cocoa/CoreIPCError.serialization.in M Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.h M Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.mm M Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm M Source/WebKit/SourcesCocoa.txt M Source/WebKit/WebKit.xcodeproj/project.pbxproj M Tools/TestWebKitAPI/Tests/IPC/IPCSerialization.mm Log Message: --- Generate serialization for NSError https://bugs.webkit.org/show_bug.cgi?id=264462 rdar://118155518 Reviewed by Brady Eidson. * Source/WebKit/DerivedSources-input.xcfilelist: * Source/WebKit/DerivedSources.make: * Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.h: * Source/WebKit/Shared/Cocoa/ArgumentCodersCocoa.mm: (IPC::typeFromObject): * Source/WebKit/Shared/Cocoa/CoreIPCError.h: Copied from Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.h. (WebKit::CoreIPCError::CoreIPCError): (WebKit::CoreIPCError::domain const): (WebKit::CoreIPCError::code const): (WebKit::CoreIPCError::userInfo const): (WebKit::CoreIPCError::underlyingError const): * Source/WebKit/Shared/Cocoa/CoreIPCError.mm: Added. (WebKit::CoreIPCError::hasValidUserInfo): (WebKit::CoreIPCError::toID const): (WebKit::CoreIPCError::isSafeToEncodeUserInfo): (WebKit::CoreIPCError::CoreIPCError): * Source/WebKit/Shared/Cocoa/CoreIPCError.serialization.in: Added. * Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.h: * Source/WebKit/Shared/Cocoa/CoreIPCNSCFObject.mm: (WebKit::valueFromID): * Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm: (IPC::ArgumentCoder::encodePlatformData): (IPC::ArgumentCoder::decodePlatformData): (IPC::isSafeToEncodeUserInfo): Deleted. (IPC::encodeNSError): Deleted. (IPC::decodeNSError): Deleted. * Source/WebKit/SourcesCocoa.txt: * Source/WebKit/WebKit.xcodeproj/project.pbxproj: * Tools/TestWebKitAPI/Tests/IPC/IPCSerialization.mm: (createCertificate): (createPrivateKey): (TEST): Canonical link: https://commits.webkit.org/270706@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] e36c14: Add the ability for the IPCTestingAPI to report wh...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: e36c14395c0e952c75c21a9347377024e071a1b8 https://github.com/WebKit/WebKit/commit/e36c14395c0e952c75c21a9347377024e071a1b8 Author: Gavin Phillips Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: A LayoutTests/ipc/send-invalid-sync-message-empty-reply-check-exception-expected.txt A LayoutTests/ipc/send-invalid-sync-message-empty-reply-check-exception.html M Source/WebKit/Platform/IPC/Connection.cpp M Source/WebKit/Platform/IPC/Decoder.cpp M Source/WebKit/Platform/IPC/Decoder.h M Source/WebKit/Platform/IPC/Encoder.cpp M Source/WebKit/Platform/IPC/Encoder.h M Source/WebKit/Platform/IPC/MessageFlags.h M Source/WebKit/Shared/IPCTester.cpp M Source/WebKit/Shared/IPCTester.h M Source/WebKit/Shared/IPCTester.messages.in M Source/WebKit/WebProcess/WebPage/IPCTestingAPI.cpp Log Message: --- Add the ability for the IPCTestingAPI to report when a sync message fails to be received correctly https://bugs.webkit.org/show_bug.cgi?id=264506 rdar://118188347 Reviewed by Alex Christensen. Add the ability for the IPCTestingAPI to report when a sync message fails to be received correctly. The existing behaviour is that both failed messages and empty replies return an empty IPC object. This change records the decoder validity on failure into the MessageSyncReply so the IPCTestingAPI can raise an exception instead. * Source/WebKit/Platform/IPC/Connection.cpp: (IPC::Connection::dispatchSyncMessage): * Source/WebKit/Platform/IPC/Decoder.cpp: (IPC::Decoder::hasMessageTestingError const): * Source/WebKit/Platform/IPC/Decoder.h: * Source/WebKit/Platform/IPC/Encoder.cpp: (IPC::Encoder::setMessageTestingError): * Source/WebKit/Platform/IPC/Encoder.h: * Source/WebKit/Platform/IPC/MessageFlags.h: * Source/WebKit/WebProcess/WebPage/IPCTestingAPI.cpp: (WebKit::IPCTestingAPI::jsResultFromReplyDecoder): Canonical link: https://commits.webkit.org/270705@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 38f33e: Stop using Vector::unsafeAppendWithoutCapacityChec...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 38f33ee36da185a4d08ccb908a4a04b2cdc01f4d https://github.com/WebKit/WebKit/commit/38f33ee36da185a4d08ccb908a4a04b2cdc01f4d Author: Chris Dumez Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp Log Message: --- Stop using Vector::unsafeAppendWithoutCapacityCheck() in B3IRGenerator::addLocal() https://bugs.webkit.org/show_bug.cgi?id=264790 Reviewed by Darin Adler. * Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: (JSC::Wasm::B3IRGenerator::addLocal): Canonical link: https://commits.webkit.org/270704@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 49ba5f: [MSE] SourceBufferPrivate::didUpdateFormatDescript...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 49ba5f074748e43875482ec5182b32901017b9b9 https://github.com/WebKit/WebKit/commit/49ba5f074748e43875482ec5182b32901017b9b9 Author: Jean-Yves Avenard Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/platform/mac/TestExpectations M Source/WebCore/platform/graphics/SourceBufferPrivate.cpp M Source/WebCore/platform/graphics/SourceBufferPrivate.h M Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm Log Message: --- [MSE] SourceBufferPrivate::didUpdateFormatDescriptionForTrackId can run out of order. https://bugs.webkit.org/show_bug.cgi?id=264799 rdar://118380017 Reviewed by Youenn Fablet. Ensure the track format description is processed after the init segment by queuing an operation instead of running the callback immediately. Covered by existing tests (which were disabled) * LayoutTests/platform/mac/TestExpectations: * Source/WebCore/platform/graphics/SourceBufferPrivate.cpp: (WebCore::SourceBufferPrivate::didUpdateFormatDescriptionForTrackId): (WebCore::SourceBufferPrivate::processPendingOperations): * Source/WebCore/platform/graphics/SourceBufferPrivate.h: * Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: (WebCore::SourceBufferPrivateAVFObjC::didUpdateFormatDescriptionForTrackId): Canonical link: https://commits.webkit.org/270703@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 2d5fd9: [ macOS wk2 debug ] fast/mediastream/device-change...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 2d5fd917570a4fb655d21f2828d466fd22d8aa2b https://github.com/WebKit/WebKit/commit/2d5fd917570a4fb655d21f2828d466fd22d8aa2b Author: Youenn Fablet Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M LayoutTests/fast/mediastream/device-change-event-2-expected.txt M LayoutTests/fast/mediastream/device-change-event-2.html M LayoutTests/platform/ios/TestExpectations M Source/WebCore/Modules/mediastream/MediaDevices.cpp Log Message: --- [ macOS wk2 debug ] fast/mediastream/device-change-event-2.html is a flaky failure. https://bugs.webkit.org/show_bug.cgi?id=261356 rdar://115192271 Reviewed by Jean-Yves Avenard. We never implemented focus restrictions. The spec has been updated to use inview/visibility restrictions. We align the implementation and the test with the spec. * LayoutTests/fast/mediastream/device-change-event-2-expected.txt: * LayoutTests/fast/mediastream/device-change-event-2.html: * LayoutTests/platform/ios/TestExpectations: * Source/WebCore/Modules/mediastream/MediaDevices.cpp: (WebCore::MediaDevices::scheduledEventTimerFired): Canonical link: https://commits.webkit.org/270702@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 9b5dc3: Add setting for detection of UA visual transitions
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 9b5dc3c4dbff786ca7fbef476a88feef35c5e1fd https://github.com/WebKit/WebKit/commit/9b5dc3c4dbff786ca7fbef476a88feef35c5e1fd Author: Rob Buis Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml M Source/WebCore/dom/PopStateEvent.h M Source/WebCore/dom/PopStateEvent.idl Log Message: --- Add setting for detection of UA visual transitions https://bugs.webkit.org/show_bug.cgi?id=264730 Reviewed by Simon Fraser. In r270589 the new hasUAVisualTransition attribute was landed without an accompanying setting, so add a setting UAVisualTransitionDetection. * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: * Source/WebCore/dom/PopStateEvent.h: * Source/WebCore/dom/PopStateEvent.idl: Canonical link: https://commits.webkit.org/270701@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 5dfffd: [web-animations] interpolating keyframes should be...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 5dfffd1d9c0cdf683b9302cd72303bf9e6700921 https://github.com/WebKit/WebKit/commit/5dfffd1d9c0cdf683b9302cd72303bf9e6700921 Author: Antoine Quint Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/animation/KeyframeEffect.cpp M Source/WebCore/animation/KeyframeEffect.h M Source/WebCore/animation/KeyframeInterpolation.cpp M Source/WebCore/animation/KeyframeInterpolation.h M Source/WebCore/platform/animation/AcceleratedEffect.cpp M Source/WebCore/platform/animation/AcceleratedEffect.h Log Message: --- [web-animations] interpolating keyframes should be shared in `KeyframeInterpolation` https://bugs.webkit.org/show_bug.cgi?id=264796 Reviewed by Dean Jackson. Until now, the code to interpolate keyframes was contained within `KeyframeEffect::setAnimatedPropertiesInStyle()`. As part of the work on threaded animation resolution (see bug 250970), we will need to share this logic with `AcceleratedEffect` as well. Now that we have a shared concept of a keyframe (see bug 264747) and shared code to determine the interpolation interval (see bug 264756), we add a method to `KeyframeInterpolation` for the purpose of interpolation and whatever virtual methods are required to support it. During interpolation, we need additional information from the `KeyframeInterpolation` subclasses such that we can determine what composite operation to use and how to apply it, as well as the timing function to use to compute the final interpolation progress: CompositeOperation compositeOperation() const; bool isPropertyAdditiveOrCumulative(Property) const; IterationCompositeOperation iterationCompositeOperation() const; const TimingFunction* timingFunctionForKeyframe(const Keyframe&) const; With that information, we can add a new `interpolateKeyframes()` method which will take several callbacks as parameters to let the `KeyframeInterpolation` subclass perform the actual interpolation based on the value types it manipulates (`RenderStyle` objects for `KeyframeEffect` and `AcceleratedEffectValues` for `AcceleratedEffect`): using CompositionCallback = Function; using AccumulationCallback = Function; using InterpolationCallback = Function; using RequiresBlendingForAccumulativeIterationCallback = Function; void interpolateKeyframes(Property, const KeyframeInterval&, double iterationProgress, double currentIteration, Seconds iterationDuration, const CompositionCallback&, const AccumulationCallback&, const InterpolationCallback&, const RequiresBlendingForAccumulativeIterationCallback&) const; Finally, we move much of the remaining code from `KeyframeEffect::setAnimatedPropertiesInStyle` into the new `KeyframeInterpolation::interpolateKeyframes()` method. * Source/WebCore/animation/KeyframeEffect.cpp: (WebCore::KeyframeEffect::setAnimatedPropertiesInStyle): (WebCore::KeyframeEffect::timingFunctionForBlendingKeyframe const): (WebCore::KeyframeEffect::timingFunctionForKeyframeAtIndex const): (WebCore::KeyframeEffect::progressUntilNextStep const): (WebCore::KeyframeEffect::timingFunctionForKeyframe const): (WebCore::KeyframeEffect::isPropertyAdditiveOrCumulative const): * Source/WebCore/animation/KeyframeEffect.h: * Source/WebCore/animation/KeyframeInterpolation.cpp: (WebCore::KeyframeInterpolation::interpolateKeyframes const): * Source/WebCore/animation/KeyframeInterpolation.h: (WebCore::KeyframeInterpolation::iterationCompositeOperation const): * Source/WebCore/platform/animation/AcceleratedEffect.cpp: (WebCore::cssPropertyFromAcceleratedProperty): (WebCore::AcceleratedEffect::timingFunctionForKeyframe const): (WebCore::AcceleratedEffect::isPropertyAdditiveOrCumulative const): * Source/WebCore/platform/animation/AcceleratedEffect.h: (WebCore::AcceleratedEffect::compositeOperation const): Deleted. Canonical link: https://commits.webkit.org/270700@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] fc091a: [TextureMapper] Move applyFilters from BitmapTextu...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fc091abb0db77674f3b63fbd6b2d3e46c023c808 https://github.com/WebKit/WebKit/commit/fc091abb0db77674f3b63fbd6b2d3e46c023c808 Author: Carlos Garcia Campos Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp M Source/WebCore/platform/graphics/texmap/BitmapTexture.h M Source/WebCore/platform/graphics/texmap/TextureMapper.cpp M Source/WebCore/platform/graphics/texmap/TextureMapper.h M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp Log Message: --- [TextureMapper] Move applyFilters from BitmapTexture to TextureMapper https://bugs.webkit.org/show_bug.cgi?id=264740 Reviewed by Fujii Hironori. It's TextureMapper the one applying filters. Also remove FilterInfo and use FilterOperation direclty instead. * Source/WebCore/platform/graphics/texmap/BitmapTexture.cpp: (WebCore::BitmapTexture::reset): (WebCore::BitmapTexture::applyFilters): Deleted. * Source/WebCore/platform/graphics/texmap/BitmapTexture.h: * Source/WebCore/platform/graphics/texmap/TextureMapper.cpp: (WebCore::TextureMapper::drawTexture): (WebCore::TextureMapper::drawTexturePlanarYUV): (WebCore::TextureMapper::drawTextureSemiPlanarYUV): (WebCore::TextureMapper::drawTexturePackedYUV): (WebCore::TextureMapper::applyBlurFilter): (WebCore::TextureMapper::applyDropShadowFilter): (WebCore::TextureMapper::applySinglePassFilter): (WebCore::TextureMapper::applyFilters): (WebCore::TextureMapper::applyFilter): * Source/WebCore/platform/graphics/texmap/TextureMapper.h: * Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp: (WebCore::TextureMapperLayer::paintIntoSurface): Canonical link: https://commits.webkit.org/270699@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] dfde53: Port the VTT enums to the new IPC serialization fo...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: dfde53f43eaf15437997cc11e539b2bce32acbd6 https://github.com/WebKit/WebKit/commit/dfde53f43eaf15437997cc11e539b2bce32acbd6 Author: Claudio Saavedra Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/Headers.cmake M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/html/track/VTTCue.cpp M Source/WebCore/html/track/VTTCue.h M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in Log Message: --- Port the VTT enums to the new IPC serialization format https://bugs.webkit.org/show_bug.cgi?id=264768 Reviewed by Chris Dumez. Remove the EnumTraits enums in favor of the new IPC serialization format. Needed to pull a few headers included from VTTCue.h to the private headers for this to work. Also added an alias to the last item in two of the enums, for convenience when doing static-asserts. * Source/WebCore/Headers.cmake: * Source/WebCore/html/track/VTTCue.cpp: * Source/WebCore/html/track/VTTCue.h: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: Canonical link: https://commits.webkit.org/270698@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] f770ed: Generate IPC serialization for enumerations under ...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: f770edcb4761c91545ef81b5a88f12a479b725aa https://github.com/WebKit/WebKit/commit/f770edcb4761c91545ef81b5a88f12a479b725aa Author: Žan Doberšek Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/page/ContextMenuContext.h M Source/WebCore/page/CrossSiteNavigationDataTransfer.h M Source/WebCore/page/DebugOverlayRegions.h M Source/WebCore/page/LoggedInStatus.h M Source/WebCore/page/ModalContainerTypes.h M Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in Log Message: --- Generate IPC serialization for enumerations under WebCore/page https://bugs.webkit.org/show_bug.cgi?id=264724 Reviewed by Chris Dumez. Remove remaining EnumTraits specializations under WebCore/page in favor of using IPC serialization specifications in the WebCoreArgumentCoders serialization input file. * Source/WebCore/page/ContextMenuContext.h: * Source/WebCore/page/CrossSiteNavigationDataTransfer.h: * Source/WebCore/page/DebugOverlayRegions.h: * Source/WebCore/page/LoggedInStatus.h: * Source/WebCore/page/ModalContainerTypes.h: * Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h: * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in: Canonical link: https://commits.webkit.org/270697@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [WebKit/WebKit] 694415: ScrollingStateScrollingNode destructor should be a...
Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 69441586e9e090843c0bb55f9a8b7eb97b1521e4 https://github.com/WebKit/WebKit/commit/69441586e9e090843c0bb55f9a8b7eb97b1521e4 Author: Erica Li Date: 2023-11-14 (Tue, 14 Nov 2023) Changed paths: M Source/WebCore/page/scrolling/ScrollingStateNode.h M Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp Log Message: --- ScrollingStateScrollingNode destructor should be able to handle being called before being attached to a tree. https://bugs.webkit.org/show_bug.cgi?id=264722 rdar://117803479 Reviewed by Alex Christensen. Adding null check to handle the case when destructor being called before being attached to a tree. * Source/WebCore/page/scrolling/ScrollingStateNode.h: (WebCore::ScrollingStateNode::isAttachedToScrollingStateTree const): * Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp: (WebCore::ScrollingStateScrollingNode::~ScrollingStateScrollingNode): Canonical link: https://commits.webkit.org/270696@main ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes