[webkit-changes] [258682] trunk/Source
Title: [258682] trunk/Source Revision 258682 Author peng.l...@apple.com Date 2020-03-18 22:23:14 -0700 (Wed, 18 Mar 2020) Log Message The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP https://bugs.webkit.org/show_bug.cgi?id=204979 Reviewed by Jer Noble. A follow-up patch to fix build failures. Source/WebCore: This patch also removes a meaningless line in the dealloc of WebAVPlayerViewController. * platform/ios/VideoFullscreenInterfaceAVKit.mm: (-[WebAVPlayerViewController initWithFullscreenInterface:]): (-[WebAVPlayerViewController dealloc]): (VideoFullscreenInterfaceAVKit::doEnterFullscreen): Source/WebCore/PAL: * pal/spi/cocoa/AVKitSPI.h: Source/WTF: * wtf/PlatformHave.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h trunk/Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm Diff Modified: trunk/Source/WTF/ChangeLog (258681 => 258682) --- trunk/Source/WTF/ChangeLog 2020-03-19 05:18:29 UTC (rev 258681) +++ trunk/Source/WTF/ChangeLog 2020-03-19 05:23:14 UTC (rev 258682) @@ -1,3 +1,14 @@ +2020-03-18 Peng Liu + +The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP +https://bugs.webkit.org/show_bug.cgi?id=204979 + +Reviewed by Jer Noble. + +A follow-up patch to fix build failures. + +* wtf/PlatformHave.h: + 2020-03-18 Myles C. Maxfield REGRESSION(r254389): Cordova throws an exception because it expects a hyphen inside navigator.locale Modified: trunk/Source/WTF/wtf/PlatformHave.h (258681 => 258682) --- trunk/Source/WTF/wtf/PlatformHave.h 2020-03-19 05:18:29 UTC (rev 258681) +++ trunk/Source/WTF/wtf/PlatformHave.h 2020-03-19 05:23:14 UTC (rev 258682) @@ -614,3 +614,7 @@ #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101600) || (PLATFORM(IOS_FAMILY) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 14) #define HAVE_SYSTEM_FEATURE_FLAGS 1 #endif + +#if (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 13) +#define HAVE_AVOBSERVATIONCONTROLLER 1 +#endif Modified: trunk/Source/WebCore/ChangeLog (258681 => 258682) --- trunk/Source/WebCore/ChangeLog 2020-03-19 05:18:29 UTC (rev 258681) +++ trunk/Source/WebCore/ChangeLog 2020-03-19 05:23:14 UTC (rev 258682) @@ -1,3 +1,18 @@ +2020-03-18 Peng Liu + +The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP +https://bugs.webkit.org/show_bug.cgi?id=204979 + +Reviewed by Jer Noble. + +A follow-up patch to fix build failures. +This patch also removes a meaningless line in the dealloc of WebAVPlayerViewController. + +* platform/ios/VideoFullscreenInterfaceAVKit.mm: +(-[WebAVPlayerViewController initWithFullscreenInterface:]): +(-[WebAVPlayerViewController dealloc]): +(VideoFullscreenInterfaceAVKit::doEnterFullscreen): + 2020-03-18 Andres Gonzalez Use helper function retainPtr(T*) instead of creating one. Modified: trunk/Source/WebCore/PAL/ChangeLog (258681 => 258682) --- trunk/Source/WebCore/PAL/ChangeLog 2020-03-19 05:18:29 UTC (rev 258681) +++ trunk/Source/WebCore/PAL/ChangeLog 2020-03-19 05:23:14 UTC (rev 258682) @@ -1,3 +1,14 @@ +2020-03-18 Peng Liu + +The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP +https://bugs.webkit.org/show_bug.cgi?id=204979 + +Reviewed by Jer Noble. + +A follow-up patch to fix build failures. + +* pal/spi/cocoa/AVKitSPI.h: + 2020-03-18 Alex Christensen Add HTTP3 as an experimental feature Modified: trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h (258681 => 258682) --- trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2020-03-19 05:18:29 UTC (rev 258681) +++ trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2020-03-19 05:23:14 UTC (rev 258682) @@ -27,7 +27,6 @@ #import #if USE(APPLE_INTERNAL_SDK) -#import #import #else #if PLATFORM(IOS_FAMILY) @@ -55,6 +54,20 @@ @end #endif // USE(APPLE_INTERNAL_SDK) +#if HAVE(HAVE_AVOBSERVATIONCONTROLLER) +#if USE(APPLE_INTERNAL_SDK) +#import +#else +@class AVKeyValueChange; + +@interface AVObservationController : NSObject +- (instancetype)initWithOwner:(Owner)owner NS_DESIGNATED_INITIALIZER; +- (id)startObserving:(id)object keyPath:(NSString *)keyPath includeInitialValue:(BOOL)shouldIncludeInitialValue observationHandler:(void (^)(Owner owner, id observed, AVKeyValueChange *change))observationHandler; +- (void)stopAllObservation; +@end +#endif +#endif // HAVE(HAVE_AVOBSERVATIONCONTROLLER) + #if PLATFORM(IOS_FAMILY) #import #import @@ -130,14 +143,6 @@ NS_ASSUME_NONNULL_BEGIN -@class AVKeyValueChange; - -@interface AVObservationController : NSObject --
[webkit-changes] [258681] trunk/Source/WebCore
Title: [258681] trunk/Source/WebCore Revision 258681 Author andresg...@apple.com Date 2020-03-18 22:18:29 -0700 (Wed, 18 Mar 2020) Log Message Use helper function retainPtr(T*) instead of creating one. https://bugs.webkit.org/show_bug.cgi?id=209269 Reviewed by Chris Fleizach. This is acorrection to patch in bug: https://bugs.webkit.org/show_bug.cgi?id=209247. Use the existing retainPtr helper funtion instead of creating a new helper. * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (-[WebAccessibilityObjectWrapper attachmentView]): (-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:spellCheck:]): (-[WebAccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): (-[WebAccessibilityObjectWrapper associatedPluginParent]): (-[WebAccessibilityObjectWrapper windowElement:]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]): (-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]): (-[WebAccessibilityObjectWrapper textMarkerRangeAtTextMarker:forUnit:]): (-[WebAccessibilityObjectWrapper lineTextMarkerRangeForTextMarker:forUnit:]): (-[WebAccessibilityObjectWrapper textMarkerForTextMarker:atUnit:]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): (retainWrapper): Deleted. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm Diff Modified: trunk/Source/WebCore/ChangeLog (258680 => 258681) --- trunk/Source/WebCore/ChangeLog 2020-03-19 05:02:30 UTC (rev 258680) +++ trunk/Source/WebCore/ChangeLog 2020-03-19 05:18:29 UTC (rev 258681) @@ -1,3 +1,27 @@ +2020-03-18 Andres Gonzalez + +Use helper function retainPtr(T*) instead of creating one. +https://bugs.webkit.org/show_bug.cgi?id=209269 + +Reviewed by Chris Fleizach. + +This is acorrection to patch in bug: https://bugs.webkit.org/show_bug.cgi?id=209247. +Use the existing retainPtr helper funtion instead of creating a new helper. + +* accessibility/mac/WebAccessibilityObjectWrapperMac.mm: +(-[WebAccessibilityObjectWrapper attachmentView]): +(-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:spellCheck:]): +(-[WebAccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): +(-[WebAccessibilityObjectWrapper associatedPluginParent]): +(-[WebAccessibilityObjectWrapper windowElement:]): +(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]): +(-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]): +(-[WebAccessibilityObjectWrapper textMarkerRangeAtTextMarker:forUnit:]): +(-[WebAccessibilityObjectWrapper lineTextMarkerRangeForTextMarker:forUnit:]): +(-[WebAccessibilityObjectWrapper textMarkerForTextMarker:atUnit:]): +(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): +(retainWrapper): Deleted. + 2020-03-18 Zalan Bujtas [Multicolumn] RenderListItem::positionListMarker should not fail when the list marker is inside a spanner. Modified: trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm (258680 => 258681) --- trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2020-03-19 05:02:30 UTC (rev 258680) +++ trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2020-03-19 05:18:29 UTC (rev 258681) @@ -553,16 +553,11 @@ [super detach]; } -static inline RetainPtr retainWrapper(WebAccessibilityObjectWrapper* wrapper) -{ -return RetainPtr(wrapper); -} - - (id)attachmentView { ASSERT(self.axBackingObject->isAttachment()); -return Accessibility::retrieveAutoreleasedValueFromMainThread([protectedSelf = retainWrapper(self)] () -> RetainPtr { +return Accessibility::retrieveAutoreleasedValueFromMainThread([protectedSelf = retainPtr(self)] () -> RetainPtr { auto* widget = protectedSelf.get().axBackingObject->widgetForAttachmentView(); if (!widget) return nil; @@ -1252,7 +1247,7 @@ - (NSAttributedString*)doAXAttributedStringForTextMarkerRange:(id)textMarkerRange spellCheck:(BOOL)spellCheck { -return Accessibility::retrieveValueFromMainThread([, , protectedSelf = retainWrapper(self)] () -> NSAttributedString * { +return Accessibility::retrieveValueFromMainThread([, , protectedSelf = retainPtr(self)] () -> NSAttributedString * { auto* backingObject = protectedSelf.get().axBackingObject; if (!backingObject) return nil; @@ -1298,7 +1293,7 @@ - (id)textMarkerRangeFromVisiblePositions:(const VisiblePosition&)startPosition endPosition:(const VisiblePosition&)endPosition { -return Accessibility::retrieveValueFromMainThread([, , protectedSelf = retainWrapper(self)] () -> id { +return Accessibility::retrieveValueFromMainThread([, , protectedSelf = retainPtr(self)] () -> id { auto*
[webkit-changes] [258680] trunk
Title: [258680] trunk Revision 258680 Author za...@apple.com Date 2020-03-18 22:02:30 -0700 (Wed, 18 Mar 2020) Log Message [Multicolumn] RenderListItem::positionListMarker should not fail when the list marker is inside a spanner. https://bugs.webkit.org/show_bug.cgi?id=209262 Reviewed by Simon Fraser. Source/WebCore: When the list marker is in a column spanner and as a result it gets moved under the column flow, the normal "let's find the list item by walking up on the ancestor chain" does not work anymore. We need to check if this list marker is inside a spanner and climb up on the ancestor chain by using the spanner placeholder position (see RenderListMarker::parentBox). This patch also moves the marker's overflow computation from the list item to the marker. Test: fast/multicol/list-item-marker-inside-column-spanner.html * rendering/RenderListItem.cpp: (WebCore::RenderListItem::addOverflowFromChildren): (WebCore::RenderListItem::positionListMarker): Deleted. * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::parentBox): (WebCore::RenderListMarker::addOverflowFromListMarker): (WebCore::RenderListMarker::layout): * rendering/RenderListMarker.h: LayoutTests: * fast/multicol/list-item-marker-inside-column-spanner-expected.txt: Added. * fast/multicol/list-item-marker-inside-column-spanner.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderListItem.cpp trunk/Source/WebCore/rendering/RenderListMarker.cpp trunk/Source/WebCore/rendering/RenderListMarker.h Added Paths trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner-expected.txt trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner.html Diff Modified: trunk/LayoutTests/ChangeLog (258679 => 258680) --- trunk/LayoutTests/ChangeLog 2020-03-19 04:06:37 UTC (rev 258679) +++ trunk/LayoutTests/ChangeLog 2020-03-19 05:02:30 UTC (rev 258680) @@ -1,3 +1,14 @@ +2020-03-18 Zalan Bujtas + +[Multicolumn] RenderListItem::positionListMarker should not fail when the list marker is inside a spanner. +https://bugs.webkit.org/show_bug.cgi?id=209262 + + +Reviewed by Simon Fraser. + +* fast/multicol/list-item-marker-inside-column-spanner-expected.txt: Added. +* fast/multicol/list-item-marker-inside-column-spanner.html: Added. + 2020-03-18 Simon Fraser eventSender.monitorWheelEvents() is very fragile Added: trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner-expected.txt (0 => 258680) --- trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner-expected.txt (rev 0) +++ trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner-expected.txt 2020-03-19 05:02:30 UTC (rev 258680) @@ -0,0 +1,2 @@ +Pass if no crash or assert when the list marker is inside a column spanner. + Added: trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner.html (0 => 258680) --- trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner.html (rev 0) +++ trunk/LayoutTests/fast/multicol/list-item-marker-inside-column-spanner.html 2020-03-19 05:02:30 UTC (rev 258680) @@ -0,0 +1,15 @@ + + + + +Pass if no crash or assert when the list marker is inside a column spanner. + + + + + +if (window.testRunner) +testRunner.dumpAsText(); +document.body.offsetHeight; +list.style.columnCount = 2; + Modified: trunk/Source/WebCore/ChangeLog (258679 => 258680) --- trunk/Source/WebCore/ChangeLog 2020-03-19 04:06:37 UTC (rev 258679) +++ trunk/Source/WebCore/ChangeLog 2020-03-19 05:02:30 UTC (rev 258680) @@ -1,3 +1,28 @@ +2020-03-18 Zalan Bujtas + +[Multicolumn] RenderListItem::positionListMarker should not fail when the list marker is inside a spanner. +https://bugs.webkit.org/show_bug.cgi?id=209262 + + +Reviewed by Simon Fraser. + +When the list marker is in a column spanner and as a result it gets moved under the column flow, the +normal "let's find the list item by walking up on the ancestor chain" does not work anymore. +We need to check if this list marker is inside a spanner and climb up on the ancestor chain by +using the spanner placeholder position (see RenderListMarker::parentBox). +This patch also moves the marker's overflow computation from the list item to the marker. + +Test: fast/multicol/list-item-marker-inside-column-spanner.html + +* rendering/RenderListItem.cpp: +(WebCore::RenderListItem::addOverflowFromChildren): +(WebCore::RenderListItem::positionListMarker): Deleted. +* rendering/RenderListMarker.cpp: +(WebCore::RenderListMarker::parentBox): +(WebCore::RenderListMarker::addOverflowFromListMarker): +(WebCore::RenderListMarker::layout): +* rendering/RenderListMarker.h: + 2020-03-18 Simon Fraser
[webkit-changes] [258679] trunk
Title: [258679] trunk Revision 258679 Author simon.fra...@apple.com Date 2020-03-18 21:06:37 -0700 (Wed, 18 Mar 2020) Log Message eventSender.monitorWheelEvents() is very fragile https://bugs.webkit.org/show_bug.cgi?id=197819 Reviewed by Tim Horton. Source/WebCore: Deflake tests using eventSender.monitorWheelEvents() by fixing several causes of flakiness, adding back changes from r257844 that were reverted in r258558. First, have EventSendingController keep track of whether it's seen then "end" event for the scrolling and momentum phases, and pass this down to WheelEventTestMonitor, which now waits until it sees these, which prevents premature triggering which was a common cause of failure before. Second, remove WheelEventTestMonitor's 1/60s timer and instead have WheelEventTestMonitor test for completion in a callout from the end of Page::updateRendering(), which makes it test and fire at a more consistent time. Third, push WheelEventTestMonitor to the ScrollingTree, so that reasons for deferral can be added on the scrolling thread. This fixes an issue where the RunLoop::main().dispatch() used to send the "ScrollingThreadSyncNeeded" reason to the main thread would get delayed, also resulting in a premature trigger. * Modules/applepay/ApplePaySession.cpp: Unified sources! * dom/WindowEventLoop.cpp: Unified sources! * page/EventHandler.cpp: (WebCore::EventHandler::handleWheelEvent): * page/FrameView.cpp: (WebCore::FrameView::scrollOffsetChangedViaPlatformWidgetImpl): * page/Page.cpp: (WebCore::Page::doAfterUpdateRendering): (WebCore::Page::wheelEventTestMonitor const): (WebCore::Page::clearWheelEventTestMonitor): (WebCore::Page::isMonitoringWheelEvents const): (WebCore::Page::ensureWheelEventTestMonitor): * page/Page.h: (WebCore::Page::wheelEventTestMonitor const): Deleted. (WebCore::Page::clearWheelEventTestMonitor): Deleted. (WebCore::Page::isMonitoringWheelEvents const): Deleted. * page/WheelEventTestMonitor.cpp: (WebCore::WheelEventTestMonitor::WheelEventTestMonitor): (WebCore::WheelEventTestMonitor::clearAllTestDeferrals): (WebCore::WheelEventTestMonitor::setTestCallbackAndStartMonitoring): (WebCore::WheelEventTestMonitor::deferForReason): (WebCore::WheelEventTestMonitor::removeDeferralForReason): (WebCore::WheelEventTestMonitor::receivedWheelEvent): (WebCore::WheelEventTestMonitor::scheduleCallbackCheck): (WebCore::WheelEventTestMonitor::checkShouldFireCallbacks): (WebCore::operator<<): (WebCore::WheelEventTestMonitor::setTestCallbackAndStartNotificationTimer): Deleted. (WebCore::WheelEventTestMonitor::triggerTestTimerFired): Deleted. * page/WheelEventTestMonitor.h: (WebCore::WheelEventTestMonitorCompletionDeferrer::WheelEventTestMonitorCompletionDeferrer): (WebCore::WheelEventTestMonitorCompletionDeferrer::~WheelEventTestMonitorCompletionDeferrer): * page/scrolling/AsyncScrollingCoordinator.cpp: (WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated): (WebCore::AsyncScrollingCoordinator::deferWheelEventTestCompletionForReason const): Deleted. (WebCore::AsyncScrollingCoordinator::removeWheelEventTestCompletionDeferralForReason const): Deleted. * page/scrolling/AsyncScrollingCoordinator.h: * page/scrolling/ScrollingCoordinator.h: (WebCore::ScrollingCoordinator::startMonitoringWheelEvents): (WebCore::ScrollingCoordinator::stopMonitoringWheelEvents): * page/scrolling/ScrollingTree.cpp: (WebCore::ScrollingTree::handleWheelEvent): * page/scrolling/ScrollingTree.h: (WebCore::ScrollingTree::setWheelEventTestMonitor): (WebCore::ScrollingTree::receivedWheelEvent): * page/scrolling/ThreadedScrollingTree.cpp: (WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll): (WebCore::ThreadedScrollingTree::deferWheelEventTestCompletionForReason): Deleted. (WebCore::ThreadedScrollingTree::removeWheelEventTestCompletionDeferralForReason): Deleted. * page/scrolling/ThreadedScrollingTree.h: * page/scrolling/mac/ScrollingCoordinatorMac.h: * page/scrolling/mac/ScrollingCoordinatorMac.mm: (WebCore::ScrollingCoordinatorMac::startMonitoringWheelEvents): (WebCore::ScrollingCoordinatorMac::stopMonitoringWheelEvents): * page/scrolling/mac/ScrollingTreeMac.h: * page/scrolling/mac/ScrollingTreeMac.mm: (ScrollingTreeMac::setWheelEventTestMonitor): (ScrollingTreeMac::receivedWheelEvent): (ScrollingTreeMac::deferWheelEventTestCompletionForReason): (ScrollingTreeMac::removeWheelEventTestCompletionDeferralForReason): * page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::deferWheelEventTestCompletionForReason const): (WebCore::ScrollingTreeScrollingNodeDelegateMac::removeWheelEventTestCompletionDeferralForReason const): * testing/js/WebCoreTestSupport.cpp: (WebCoreTestSupport::setWheelEventMonitorTestCallbackAndStartMonitoring): (WebCoreTestSupport::setTestCallbackAndStartNotificationTimer): Deleted. * testing/js/WebCoreTestSupport.h: Source/WebKit: Deflake tests using eventSender.monitorWheelEvents() by fixing several causes of flakiness, adding back
[webkit-changes] [258678] trunk/Source
Title: [258678] trunk/Source Revision 258678 Author commit-qu...@webkit.org Date 2020-03-18 20:23:18 -0700 (Wed, 18 Mar 2020) Log Message Add HTTP3 as an experimental feature https://bugs.webkit.org/show_bug.cgi?id=209267 and Patch by Alex Christensen on 2020-03-18 Reviewed by Brent Fulgham. Source/WebCore/PAL: * pal/spi/cf/CFNetworkSPI.h: Source/WebKit: Manually verified this sets the CFNetwork SPI as expected. * NetworkProcess/NetworkSessionCreationParameters.cpp: (WebKit::NetworkSessionCreationParameters::encode const): (WebKit::NetworkSessionCreationParameters::decode): * NetworkProcess/NetworkSessionCreationParameters.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::NetworkSessionCocoa): * Shared/WebPreferences.yaml: * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::ensureNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): (WebKit::WebsiteDataStore::http3Enabled): * UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::WebsiteDataStore::http3Enabled): * UIProcess/WebsiteData/WebsiteDataStore.h: Modified Paths trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/Shared/WebPreferences.yaml trunk/Source/WebKit/UIProcess/WebProcessPool.cpp trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h Diff Modified: trunk/Source/WebCore/PAL/ChangeLog (258677 => 258678) --- trunk/Source/WebCore/PAL/ChangeLog 2020-03-19 03:07:05 UTC (rev 258677) +++ trunk/Source/WebCore/PAL/ChangeLog 2020-03-19 03:23:18 UTC (rev 258678) @@ -1,3 +1,13 @@ +2020-03-18 Alex Christensen + +Add HTTP3 as an experimental feature +https://bugs.webkit.org/show_bug.cgi?id=209267 + and + +Reviewed by Brent Fulgham. + +* pal/spi/cf/CFNetworkSPI.h: + 2020-03-18 Peng Liu The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP Modified: trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h (258677 => 258678) --- trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h 2020-03-19 03:07:05 UTC (rev 258677) +++ trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h 2020-03-19 03:23:18 UTC (rev 258678) @@ -209,6 +209,7 @@ #endif #if HAVE(CFNETWORK_ALTERNATIVE_SERVICE) @property (nullable, retain) _NSHTTPAlternativeServicesStorage *_alternativeServicesStorage; +@property (readonly, assign) BOOL _allowsHTTP3; #endif @end Modified: trunk/Source/WebKit/ChangeLog (258677 => 258678) --- trunk/Source/WebKit/ChangeLog 2020-03-19 03:07:05 UTC (rev 258677) +++ trunk/Source/WebKit/ChangeLog 2020-03-19 03:23:18 UTC (rev 258678) @@ -1,3 +1,29 @@ +2020-03-18 Alex Christensen + +Add HTTP3 as an experimental feature +https://bugs.webkit.org/show_bug.cgi?id=209267 + and + +Reviewed by Brent Fulgham. + +Manually verified this sets the CFNetwork SPI as expected. + +* NetworkProcess/NetworkSessionCreationParameters.cpp: +(WebKit::NetworkSessionCreationParameters::encode const): +(WebKit::NetworkSessionCreationParameters::decode): +* NetworkProcess/NetworkSessionCreationParameters.h: +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(WebKit::NetworkSessionCocoa::NetworkSessionCocoa): +* Shared/WebPreferences.yaml: +* UIProcess/WebProcessPool.cpp: +(WebKit::WebProcessPool::ensureNetworkProcess): +* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: +(WebKit::WebsiteDataStore::parameters): +(WebKit::WebsiteDataStore::http3Enabled): +* UIProcess/WebsiteData/WebsiteDataStore.cpp: +(WebKit::WebsiteDataStore::http3Enabled): +* UIProcess/WebsiteData/WebsiteDataStore.h: + 2020-03-18 Saam Barati SharedMemory::Handle::decode shouldn't check rounded size Modified: trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp (258677 => 258678) --- trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp 2020-03-19 03:07:05 UTC (rev 258677) +++ trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp 2020-03-19 03:23:18 UTC (rev 258678) @@ -55,6 +55,7 @@ #if HAVE(CFNETWORK_ALTERNATIVE_SERVICE) encoder << alternativeServiceDirectory; encoder << alternativeServiceDirectoryExtensionHandle; +encoder << http3Enabled; #endif #if USE(SOUP) encoder << cookiePersistentStoragePath; @@ -143,6 +144,11 @@ decoder >> alternativeServiceDirectoryExtensionHandle; if
[webkit-changes] [258677] trunk/Source/WebKit
Title: [258677] trunk/Source/WebKit Revision 258677 Author sbar...@apple.com Date 2020-03-18 20:07:05 -0700 (Wed, 18 Mar 2020) Log Message SharedMemory::Handle::decode shouldn't check rounded size https://bugs.webkit.org/show_bug.cgi?id=209263 Reviewed by Sam Weinig. * Platform/cocoa/SharedMemoryCocoa.cpp: (WebKit::SharedMemory::Handle::decode): (WebKit::SharedMemory::map): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/cocoa/SharedMemoryCocoa.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (258676 => 258677) --- trunk/Source/WebKit/ChangeLog 2020-03-19 03:05:17 UTC (rev 258676) +++ trunk/Source/WebKit/ChangeLog 2020-03-19 03:07:05 UTC (rev 258677) @@ -1,3 +1,14 @@ +2020-03-18 Saam Barati + +SharedMemory::Handle::decode shouldn't check rounded size +https://bugs.webkit.org/show_bug.cgi?id=209263 + +Reviewed by Sam Weinig. + +* Platform/cocoa/SharedMemoryCocoa.cpp: +(WebKit::SharedMemory::Handle::decode): +(WebKit::SharedMemory::map): + 2020-03-18 Fujii Hironori WebCoreArgumentCoders should check bufferIsLargeEnoughToContain before allocating buffers Modified: trunk/Source/WebKit/Platform/cocoa/SharedMemoryCocoa.cpp (258676 => 258677) --- trunk/Source/WebKit/Platform/cocoa/SharedMemoryCocoa.cpp 2020-03-19 03:05:17 UTC (rev 258676) +++ trunk/Source/WebKit/Platform/cocoa/SharedMemoryCocoa.cpp 2020-03-19 03:07:05 UTC (rev 258677) @@ -93,8 +93,6 @@ uint64_t size; if (!decoder.decode(size)) return false; -if (size != round_page(size)) -return false; IPC::MachPort machPort; if (!decoder.decode(machPort)) @@ -194,8 +192,6 @@ if (handle.isNull()) return nullptr; -ASSERT(round_page(handle.m_size) == handle.m_size); - vm_prot_t vmProtection = machProtection(protection); mach_vm_address_t mappedAddress = 0; kern_return_t kr = mach_vm_map(mach_task_self(), , handle.m_size, 0, VM_FLAGS_ANYWHERE, handle.m_port, 0, false, vmProtection, vmProtection, VM_INHERIT_NONE); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258676] trunk/Source/WebCore
Title: [258676] trunk/Source/WebCore Revision 258676 Author hironori.fu...@sony.com Date 2020-03-18 20:05:17 -0700 (Wed, 18 Mar 2020) Log Message AuthenticatorResponseData::decode should check bufferIsLargeEnoughToContain before allocating buffers https://bugs.webkit.org/show_bug.cgi?id=209133 Reviewed by Darin Adler. Check bufferIsLargeEnoughToContain with the decoded size before allocating buffers. Replaced ArrayBuffer::create with ArrayBuffer::tryCreate, and added a null check. * Modules/webauthn/AuthenticatorResponseData.h: (WebCore::encodeArrayBuffer): Added. (WebCore::decodeArrayBuffer): Added. (WebCore::AuthenticatorResponseData::encode const): (WebCore::AuthenticatorResponseData::decode): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/webauthn/AuthenticatorResponseData.h Diff Modified: trunk/Source/WebCore/ChangeLog (258675 => 258676) --- trunk/Source/WebCore/ChangeLog 2020-03-19 02:58:33 UTC (rev 258675) +++ trunk/Source/WebCore/ChangeLog 2020-03-19 03:05:17 UTC (rev 258676) @@ -1,3 +1,22 @@ +2020-03-18 Fujii Hironori + +AuthenticatorResponseData::decode should check bufferIsLargeEnoughToContain before allocating buffers +https://bugs.webkit.org/show_bug.cgi?id=209133 + +Reviewed by Darin Adler. + +Check bufferIsLargeEnoughToContain with the decoded size before +allocating buffers. + +Replaced ArrayBuffer::create with ArrayBuffer::tryCreate, and +added a null check. + +* Modules/webauthn/AuthenticatorResponseData.h: +(WebCore::encodeArrayBuffer): Added. +(WebCore::decodeArrayBuffer): Added. +(WebCore::AuthenticatorResponseData::encode const): +(WebCore::AuthenticatorResponseData::decode): + 2020-03-18 Andres Gonzalez Several TextMarker attributes need to run on the main thread. Modified: trunk/Source/WebCore/Modules/webauthn/AuthenticatorResponseData.h (258675 => 258676) --- trunk/Source/WebCore/Modules/webauthn/AuthenticatorResponseData.h 2020-03-19 02:58:33 UTC (rev 258675) +++ trunk/Source/WebCore/Modules/webauthn/AuthenticatorResponseData.h 2020-03-19 03:05:17 UTC (rev 258676) @@ -56,6 +56,31 @@ }; template +static void encodeArrayBuffer(Encoder& encoder, const ArrayBuffer& buffer) +{ +encoder << static_cast(buffer.byteLength()); +encoder.encodeFixedLengthData(reinterpret_cast(buffer.data()), buffer.byteLength(), 1); +} + +template +RefPtr decodeArrayBuffer(Decoder& decoder) +{ +Optional length; +decoder >> length; +if (!length) +return nullptr; + +if (!decoder.template bufferIsLargeEnoughToContain(length.value())) +return nullptr; +auto buffer = ArrayBuffer::tryCreate(length.value(), sizeof(uint8_t)); +if (!buffer) +return nullptr; +if (!decoder.decodeFixedLengthData(reinterpret_cast(buffer->data()), length.value(), 1)) +return nullptr; +return buffer; +} + +template void AuthenticatorResponseData::encode(Encoder& encoder) const { if (!rawId) { @@ -63,24 +88,19 @@ return; } encoder << false; +encodeArrayBuffer(encoder, *rawId); -encoder << static_cast(rawId->byteLength()); -encoder.encodeFixedLengthData(reinterpret_cast(rawId->data()), rawId->byteLength(), 1); - encoder << isAuthenticatorAttestationResponse; if (isAuthenticatorAttestationResponse && attestationObject) { -encoder << static_cast(attestationObject->byteLength()); -encoder.encodeFixedLengthData(reinterpret_cast(attestationObject->data()), attestationObject->byteLength(), 1); +encodeArrayBuffer(encoder, *attestationObject); return; } if (!authenticatorData || !signature) return; -encoder << static_cast(authenticatorData->byteLength()); -encoder.encodeFixedLengthData(reinterpret_cast(authenticatorData->data()), authenticatorData->byteLength(), 1); -encoder << static_cast(signature->byteLength()); -encoder.encodeFixedLengthData(reinterpret_cast(signature->data()), signature->byteLength(), 1); +encodeArrayBuffer(encoder, *authenticatorData); +encodeArrayBuffer(encoder, *signature); // Encode AppID before user handle to avoid the userHandle flag. encoder << appid; @@ -90,8 +110,7 @@ return; } encoder << true; -encoder << static_cast(userHandle->byteLength()); -encoder.encodeFixedLengthData(reinterpret_cast(userHandle->data()), userHandle->byteLength(), 1); +encodeArrayBuffer(encoder, *userHandle); } template @@ -106,15 +125,10 @@ if (isEmpty.value()) return result; -Optional rawIdLength; -decoder >> rawIdLength; -if (!rawIdLength) +result.rawId = decodeArrayBuffer(decoder); +if (!result.rawId) return WTF::nullopt; -result.rawId = ArrayBuffer::create(rawIdLength.value(), sizeof(uint8_t)); -if (!decoder.decodeFixedLengthData(reinterpret_cast(result.rawId->data()),
[webkit-changes] [258675] trunk/Source/WebKit
Title: [258675] trunk/Source/WebKit Revision 258675 Author hironori.fu...@sony.com Date 2020-03-18 19:58:33 -0700 (Wed, 18 Mar 2020) Log Message WebCoreArgumentCoders should check bufferIsLargeEnoughToContain before allocating buffers https://bugs.webkit.org/show_bug.cgi?id=209219 Reviewed by Darin Adler. * Shared/WebCoreArgumentCoders.cpp: (IPC::decodeSharedBuffer): Added checking of bufferIsLargeEnoughToContain. (IPC::decodeTypesAndData): Don't allocate a buffer with the decoded size. bufferIsLargeEnoughToContain can't be used in this case because SharedBuffer is encoded as variable length data. Instead, append items one-by-one. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (258674 => 258675) --- trunk/Source/WebKit/ChangeLog 2020-03-19 02:27:56 UTC (rev 258674) +++ trunk/Source/WebKit/ChangeLog 2020-03-19 02:58:33 UTC (rev 258675) @@ -1,3 +1,17 @@ +2020-03-18 Fujii Hironori + +WebCoreArgumentCoders should check bufferIsLargeEnoughToContain before allocating buffers +https://bugs.webkit.org/show_bug.cgi?id=209219 + +Reviewed by Darin Adler. + +* Shared/WebCoreArgumentCoders.cpp: +(IPC::decodeSharedBuffer): Added checking of bufferIsLargeEnoughToContain. +(IPC::decodeTypesAndData): Don't allocate a buffer with the +decoded size. bufferIsLargeEnoughToContain can't be used in this +case because SharedBuffer is encoded as variable length data. +Instead, append items one-by-one. + 2020-03-18 John Wilander WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener() should call its ephemeral counterpart when appropriate Modified: trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp (258674 => 258675) --- trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp 2020-03-19 02:27:56 UTC (rev 258674) +++ trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp 2020-03-19 02:58:33 UTC (rev 258675) @@ -155,6 +155,9 @@ return true; #if USE(UNIX_DOMAIN_SOCKETS) +if (!decoder.bufferIsLargeEnoughToContain(bufferSize)) +return false; + Vector data; data.grow(bufferSize); if (!decoder.decodeFixedLengthData(data.data(), data.size(), 1)) @@ -193,9 +196,12 @@ ASSERT(dataSize == types.size()); -data.resize(dataSize); -for (auto& buffer : data) -decodeSharedBuffer(decoder, buffer); +for (uint64_t i = 0; i < dataSize; i++) { +RefPtr buffer; +if (!decodeSharedBuffer(decoder, buffer)) +return false; +data.append(WTFMove(buffer)); +} return true; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258674] trunk/LayoutTests
Title: [258674] trunk/LayoutTests Revision 258674 Author commit-qu...@webkit.org Date 2020-03-18 19:27:56 -0700 (Wed, 18 Mar 2020) Log Message svg/custom/animate-initial-pause-unpause.html is flaky https://bugs.webkit.org/show_bug.cgi?id=127116 Patch by Said Abou-Hallawa on 2020-03-18 Reviewed by Ryosuke Niwa. Use the 'onend' event to perform post-animation actions instead of relying on setTimeout() which can be flaky if the bots are really slow. * platform/gtk/TestExpectations: * platform/ios-wk2/TestExpectations: * platform/mac/TestExpectations: * svg/custom/animate-initial-pause-unpause.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/LayoutTests/platform/ios-wk2/TestExpectations trunk/LayoutTests/platform/mac/TestExpectations trunk/LayoutTests/svg/custom/animate-initial-pause-unpause.html Diff Modified: trunk/LayoutTests/ChangeLog (258673 => 258674) --- trunk/LayoutTests/ChangeLog 2020-03-19 02:09:44 UTC (rev 258673) +++ trunk/LayoutTests/ChangeLog 2020-03-19 02:27:56 UTC (rev 258674) @@ -1,3 +1,19 @@ +2020-03-18 Said Abou-Hallawa + +svg/custom/animate-initial-pause-unpause.html is flaky +https://bugs.webkit.org/show_bug.cgi?id=127116 + + +Reviewed by Ryosuke Niwa. + +Use the 'onend' event to perform post-animation actions instead of relying +on setTimeout() which can be flaky if the bots are really slow. + +* platform/gtk/TestExpectations: +* platform/ios-wk2/TestExpectations: +* platform/mac/TestExpectations: +* svg/custom/animate-initial-pause-unpause.html: + 2020-03-18 John Wilander WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener() should call its ephemeral counterpart when appropriate Modified: trunk/LayoutTests/platform/gtk/TestExpectations (258673 => 258674) --- trunk/LayoutTests/platform/gtk/TestExpectations 2020-03-19 02:09:44 UTC (rev 258673) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2020-03-19 02:27:56 UTC (rev 258674) @@ -1737,8 +1737,6 @@ webkit.org/b/134760 plugins/layout-in-beforeload-listener-affects-plugin-loading.html [ Failure Pass ] -webkit.org/b/134761 svg/custom/animate-initial-pause-unpause.html [ Failure Pass ] - webkit.org/b/134994 fast/forms/select/listbox-click-on-scrollbar.html [ Failure Pass ] webkit.org/b/134981 fast/parser/document-write-during-load.html [ Timeout Pass Crash ] Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (258673 => 258674) --- trunk/LayoutTests/platform/ios-wk2/TestExpectations 2020-03-19 02:09:44 UTC (rev 258673) +++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2020-03-19 02:27:56 UTC (rev 258674) @@ -1114,8 +1114,6 @@ webkit.org/b/162524 [ Release ] http/tests/cache/disk-cache/disk-cache-redirect.html [ Pass Timeout ] -webkit.org/b/127116 [ Debug ] svg/custom/animate-initial-pause-unpause.html [ Pass Failure ] - webkit.org/b/163362 platform/ios/ios/plugin/youtube-flash-plugin-iframe.html [ Pass Failure ] webkit.org/b/164960 http/tests/security/module-correct-mime-types.html [ Slow ] Modified: trunk/LayoutTests/platform/mac/TestExpectations (258673 => 258674) --- trunk/LayoutTests/platform/mac/TestExpectations 2020-03-19 02:09:44 UTC (rev 258673) +++ trunk/LayoutTests/platform/mac/TestExpectations 2020-03-19 02:27:56 UTC (rev 258674) @@ -1208,8 +1208,6 @@ webkit.org/b/162830 [ Debug ] fast/events/tabindex-focus-blur-all.html [ Pass Timeout ] -webkit.org/b/127116 [ Debug ] svg/custom/animate-initial-pause-unpause.html [ Pass Failure ] - # Variation fonts are not implemented earlier than High Sierra. [ Sierra ] fast/text/variations [ Pass Failure ImageOnlyFailure ] [ Sierra ] animations/font-variations [ Pass Failure ImageOnlyFailure Timeout ] @@ -1973,8 +1971,6 @@ webkit.org/b/194162 storage/websql/read-transactions-running-concurrently.html [ Pass Failure ] -webkit.org/b/207710 svg/custom/animate-initial-pause-unpause.html [ Pass Failure ] - webkit.org/b/207046 imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/seeking/seek-to-currentTime.html [ Pass Failure ] webkit.org/b/207723 http/tests/contentextensions/hide-on-ping-with-ping-that-redirects.html [ Pass Failure ] Modified: trunk/LayoutTests/svg/custom/animate-initial-pause-unpause.html (258673 => 258674) --- trunk/LayoutTests/svg/custom/animate-initial-pause-unpause.html 2020-03-19 02:09:44 UTC (rev 258673) +++ trunk/LayoutTests/svg/custom/animate-initial-pause-unpause.html 2020-03-19 02:27:56 UTC (rev 258674) @@ -7,7 +7,7 @@ - +@@ -22,7 +22,7 @@ svg.pauseAnimations(); svg.unpauseAnimations();-setTimeout(function() {+function handleEndEvent() {
[webkit-changes] [258673] trunk/Source/WebCore
Title: [258673] trunk/Source/WebCore Revision 258673 Author andresg...@apple.com Date 2020-03-18 19:09:44 -0700 (Wed, 18 Mar 2020) Log Message Several TextMarker attributes need to run on the main thread. https://bugs.webkit.org/show_bug.cgi?id=209247 Reviewed by Chris Fleizach. - Dispatch several TextMarker parameterized attributes to the main thread. - Added helper methods to return TextMarkers and TextMarkerRanges for diffferent units of text such as word or sentence. - Added a helper function, retainWrapper to make code a bit more readable in lambda definitions. * accessibility/mac/AXObjectCacheMac.mm: (WebCore::textMarkerForVisiblePosition): (WebCore::textMarkerRangeFromVisiblePositions): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (retainWrapper): (-[WebAccessibilityObjectWrapper attachmentView]): (-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:spellCheck:]): (-[WebAccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): (-[WebAccessibilityObjectWrapper associatedPluginParent]): (-[WebAccessibilityObjectWrapper windowElement:]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]): (-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]): (-[WebAccessibilityObjectWrapper textMarkerRangeAtTextMarker:forUnit:]): (-[WebAccessibilityObjectWrapper lineTextMarkerRangeForTextMarker:forUnit:]): (-[WebAccessibilityObjectWrapper textMarkerForTextMarker:atUnit:]): (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/accessibility/mac/AXObjectCacheMac.mm trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm Diff Modified: trunk/Source/WebCore/ChangeLog (258672 => 258673) --- trunk/Source/WebCore/ChangeLog 2020-03-19 01:26:16 UTC (rev 258672) +++ trunk/Source/WebCore/ChangeLog 2020-03-19 02:09:44 UTC (rev 258673) @@ -1,3 +1,34 @@ +2020-03-18 Andres Gonzalez + +Several TextMarker attributes need to run on the main thread. +https://bugs.webkit.org/show_bug.cgi?id=209247 + +Reviewed by Chris Fleizach. + +- Dispatch several TextMarker parameterized attributes to the main +thread. +- Added helper methods to return TextMarkers and TextMarkerRanges for +diffferent units of text such as word or sentence. +- Added a helper function, retainWrapper to make code a bit more +readable in lambda definitions. + +* accessibility/mac/AXObjectCacheMac.mm: +(WebCore::textMarkerForVisiblePosition): +(WebCore::textMarkerRangeFromVisiblePositions): +* accessibility/mac/WebAccessibilityObjectWrapperMac.mm: +(retainWrapper): +(-[WebAccessibilityObjectWrapper attachmentView]): +(-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:spellCheck:]): +(-[WebAccessibilityObjectWrapper textMarkerRangeFromVisiblePositions:endPosition:]): +(-[WebAccessibilityObjectWrapper associatedPluginParent]): +(-[WebAccessibilityObjectWrapper windowElement:]): +(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]): +(-[WebAccessibilityObjectWrapper accessibilityShowContextMenu]): +(-[WebAccessibilityObjectWrapper textMarkerRangeAtTextMarker:forUnit:]): +(-[WebAccessibilityObjectWrapper lineTextMarkerRangeForTextMarker:forUnit:]): +(-[WebAccessibilityObjectWrapper textMarkerForTextMarker:atUnit:]): +(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]): + 2020-03-18 Zalan Bujtas [MultiColumn] Ignore spanner boxes inside Modified: trunk/Source/WebCore/accessibility/mac/AXObjectCacheMac.mm (258672 => 258673) --- trunk/Source/WebCore/accessibility/mac/AXObjectCacheMac.mm 2020-03-19 01:26:16 UTC (rev 258672) +++ trunk/Source/WebCore/accessibility/mac/AXObjectCacheMac.mm 2020-03-19 02:09:44 UTC (rev 258673) @@ -567,6 +567,7 @@ id textMarkerForVisiblePosition(AXObjectCache* cache, const VisiblePosition& visiblePos) { +ASSERT(isMainThread()); ASSERT(cache); if (!cache) return nil; @@ -580,6 +581,7 @@ id textMarkerRangeFromVisiblePositions(AXObjectCache* cache, const VisiblePosition& startPosition, const VisiblePosition& endPosition) { +ASSERT(isMainThread()); if (!cache) return nil; Modified: trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm (258672 => 258673) --- trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2020-03-19 01:26:16 UTC (rev 258672) +++ trunk/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2020-03-19 02:09:44 UTC (rev 258673) @@ -553,11 +553,16 @@ [super detach]; } +static inline RetainPtr retainWrapper(WebAccessibilityObjectWrapper* wrapper) +{ +return RetainPtr(wrapper); +} + - (id)attachmentView {
[webkit-changes] [258672] trunk
Title: [258672] trunk Revision 258672 Author wilan...@apple.com Date 2020-03-18 18:26:16 -0700 (Wed, 18 Mar 2020) Log Message WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener() should call its ephemeral counterpart when appropriate https://bugs.webkit.org/show_bug.cgi?id=209245 Reviewed by Chris Dumez. Source/WebKit: This change makes sure that WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener() calls WebResourceLoadStatisticsStore::requestStorageAccessUnderOpenerEphemeral() for ephemeral sessions. Tests: http/tests/storageAccess/deny-storage-access-under-opener-ephemeral.html http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral.html http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral.html * NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener): Tools: These changes to the TestRunner makes sure that - statisticsClearInMemoryAndPersistentStore() - statisticsClearInMemoryAndPersistentStoreModifiedSinceHours() ... use their own StatisticsDidClearInMemoryAndPersistentStoreCallbackID and adds the infrastructure for that. * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: (WTR::InjectedBundle::didReceiveMessageToPage): * WebKitTestRunner/InjectedBundle/TestRunner.cpp: (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore): (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours): (WTR::TestRunner::statisticsCallClearInMemoryAndPersistentStoreCallback): * WebKitTestRunner/InjectedBundle/TestRunner.h: * WebKitTestRunner/TestController.cpp: (WTR::TestController::statisticsClearInMemoryAndPersistentStore): (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours): * WebKitTestRunner/TestInvocation.cpp: (WTR::TestInvocation::didClearStatisticsInMemoryAndPersistentStore): * WebKitTestRunner/TestInvocation.h: LayoutTests: There are new tests added for the code change. The rest of these change are to better align test cases with asynchronous TestRunner functions that landed in https://trac.webkit.org/changeset/258566 and https://trac.webkit.org/changeset/258598. While working on the new tests, I found a crasher which Chris Dumez fixed in https://trac.webkit.org/changeset/258562, so there's a dependency on that change. * http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction-database.html: * http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction.html: * http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database.html: * http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker.html: * http/tests/resourceLoadStatistics/count-third-party-script-loads-database.html: * http/tests/resourceLoadStatistics/count-third-party-script-loads.html: * http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-database.php: * http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.php: * http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script-database.html: * http/tests/resourceLoadStatistics/dont-count-third-party-image-as-third-party-script.html: * http/tests/resourceLoadStatistics/grandfathering-database.html: * http/tests/resourceLoadStatistics/grandfathering.html: * http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.php: * http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.php: * http/tests/storageAccess/deny-storage-access-under-opener-ephemeral-expected.txt: Added. * http/tests/storageAccess/deny-storage-access-under-opener-ephemeral.html: Added. * http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral-expected.txt: Added. * http/tests/storageAccess/deny-storage-access-under-opener-if-auto-dismiss-ephemeral.html: Added. * http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral-expected.txt: Added. * http/tests/storageAccess/grant-storage-access-under-opener-at-popup-user-gesture-ephemeral.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/cookies-with-and-without-user-interaction.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-import-in-worker.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads-database.html trunk/LayoutTests/http/tests/resourceLoadStatistics/count-third-party-script-loads.html
[webkit-changes] [258671] trunk/Source/WebKit
Title: [258671] trunk/Source/WebKit Revision 258671 Author bfulg...@apple.com Date 2020-03-18 17:41:36 -0700 (Wed, 18 Mar 2020) Log Message Avoid calling 'notifyThisWebProcessPoolWasCreated' inside the constructor https://bugs.webkit.org/show_bug.cgi?id=209254 Reviewed by Alex Christensen and Chris Dumez. Enqueue calls to 'notifyThisWebProcessPoolWasCreated' so they are not invoked until after the process pool is finished with its constructor. Behavior covered by existing tests. * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::WebProcessPool): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebProcessPool.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (258670 => 258671) --- trunk/Source/WebKit/ChangeLog 2020-03-19 00:04:50 UTC (rev 258670) +++ trunk/Source/WebKit/ChangeLog 2020-03-19 00:41:36 UTC (rev 258671) @@ -1,3 +1,19 @@ +2020-03-18 Brent Fulgham + +Avoid calling 'notifyThisWebProcessPoolWasCreated' inside the constructor +https://bugs.webkit.org/show_bug.cgi?id=209254 + + +Reviewed by Alex Christensen and Chris Dumez. + +Enqueue calls to 'notifyThisWebProcessPoolWasCreated' so they are not invoked until +after the process pool is finished with its constructor. + +Behavior covered by existing tests. + +* UIProcess/WebProcessPool.cpp: +(WebKit::WebProcessPool::WebProcessPool): + 2020-03-18 Ross Kirsling Unreviewed WinCairo build fix following r258665. Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (258670 => 258671) --- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2020-03-19 00:04:50 UTC (rev 258670) +++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp 2020-03-19 00:41:36 UTC (rev 258671) @@ -306,8 +306,14 @@ processPoolCounter.increment(); #endif -notifyThisWebProcessPoolWasCreated(); +ASSERT(RunLoop::isMain()); +RunLoop::main().dispatch([weakPtr = makeWeakPtr(*this)] { +if (!weakPtr) +return; +weakPtr->notifyThisWebProcessPoolWasCreated(); +}); + updateBackForwardCacheCapacity(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258670] trunk/Source/WebKit
Title: [258670] trunk/Source/WebKit Revision 258670 Author ross.kirsl...@sony.com Date 2020-03-18 17:04:50 -0700 (Wed, 18 Mar 2020) Log Message Unreviewed WinCairo build fix following r258665. * NetworkProcess/curl/NetworkProcessCurl.cpp: (WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/curl/NetworkProcessCurl.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (258669 => 258670) --- trunk/Source/WebKit/ChangeLog 2020-03-18 23:45:00 UTC (rev 258669) +++ trunk/Source/WebKit/ChangeLog 2020-03-19 00:04:50 UTC (rev 258670) @@ -1,3 +1,10 @@ +2020-03-18 Ross Kirsling + +Unreviewed WinCairo build fix following r258665. + +* NetworkProcess/curl/NetworkProcessCurl.cpp: +(WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. + 2020-03-18 Kate Cheney Pass isNavigatingToAppBoundDomain for speculative loads, preconnect tasks and downloads Modified: trunk/Source/WebKit/NetworkProcess/curl/NetworkProcessCurl.cpp (258669 => 258670) --- trunk/Source/WebKit/NetworkProcess/curl/NetworkProcessCurl.cpp 2020-03-18 23:45:00 UTC (rev 258669) +++ trunk/Source/WebKit/NetworkProcess/curl/NetworkProcessCurl.cpp 2020-03-19 00:04:50 UTC (rev 258670) @@ -49,11 +49,6 @@ notImplemented(); } -void NetworkProcess::clearCacheForAllOrigins(uint32_t cachesToClear) -{ -notImplemented(); -} - void NetworkProcess::clearDiskCache(WallTime, CompletionHandler&& completionHandler) { notImplemented(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258669] trunk/LayoutTests
Title: [258669] trunk/LayoutTests Revision 258669 Author ryanhad...@apple.com Date 2020-03-18 16:45:00 -0700 (Wed, 18 Mar 2020) Log Message svg/as-object/object-box-sizing-no-width-height.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=209257 Unreviewed test gardening. * platform/ios/TestExpectations: Mark test as flaky. * platform/mac/TestExpectations: Ditto. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations trunk/LayoutTests/platform/mac/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (258668 => 258669) --- trunk/LayoutTests/ChangeLog 2020-03-18 23:22:22 UTC (rev 258668) +++ trunk/LayoutTests/ChangeLog 2020-03-18 23:45:00 UTC (rev 258669) @@ -1,7 +1,17 @@ 2020-03-18 Ryan Haddad +svg/as-object/object-box-sizing-no-width-height.html is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=209257 + Unreviewed test gardening. +* platform/ios/TestExpectations: Mark test as flaky. +* platform/mac/TestExpectations: Ditto. + +2020-03-18 Ryan Haddad + +Unreviewed test gardening. + * platform/ios/TestExpectations: Skip the http/wpt/notifications directory on iOS. 2020-03-18 Zalan Bujtas Modified: trunk/LayoutTests/platform/ios/TestExpectations (258668 => 258669) --- trunk/LayoutTests/platform/ios/TestExpectations 2020-03-18 23:22:22 UTC (rev 258668) +++ trunk/LayoutTests/platform/ios/TestExpectations 2020-03-18 23:45:00 UTC (rev 258669) @@ -3500,4 +3500,6 @@ webkit.org/b/204312 imported/w3c/web-platform-tests/svg/import/struct-dom-06-b-manual.svg [ Failure Pass ] +webkit.org/b/209257 svg/as-object/object-box-sizing-no-width-height.html [ Pass Failure ] + webkit.org/b/208592 svg/custom/object-sizing-explicit-height.xhtml [ Pass Failure ] Modified: trunk/LayoutTests/platform/mac/TestExpectations (258668 => 258669) --- trunk/LayoutTests/platform/mac/TestExpectations 2020-03-18 23:22:22 UTC (rev 258668) +++ trunk/LayoutTests/platform/mac/TestExpectations 2020-03-18 23:45:00 UTC (rev 258669) @@ -2024,6 +2024,8 @@ webkit.org/b/208592 svg/custom/object-sizing-explicit-height.xhtml [ Pass Failure ] +webkit.org/b/209257 svg/as-object/object-box-sizing-no-width-height.html [ Pass Failure ] + webkit.org/b/208930 accessibility/accessibility-node-memory-management.html [ Pass Failure ] webkit.org/b/209056 webgpu/whlsl/uint-bitwise.html [ Pass Crash ] @@ -2036,4 +2038,4 @@ webkit.org/b/207150 platform/mac/webrtc/captureCanvas-webrtc-software-encoder.html [ Pass Failure ] -webkit.org/b/209239 imported/w3c/web-platform-tests/web-animations/timing-model/timelines/update-and-send-events-replacement.html [ Pass Failure ] \ No newline at end of file +webkit.org/b/209239 imported/w3c/web-platform-tests/web-animations/timing-model/timelines/update-and-send-events-replacement.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258668] trunk/LayoutTests
Title: [258668] trunk/LayoutTests Revision 258668 Author ryanhad...@apple.com Date 2020-03-18 16:22:22 -0700 (Wed, 18 Mar 2020) Log Message Unreviewed test gardening. * platform/ios/TestExpectations: Skip the http/wpt/notifications directory on iOS. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (258667 => 258668) --- trunk/LayoutTests/ChangeLog 2020-03-18 23:09:54 UTC (rev 258667) +++ trunk/LayoutTests/ChangeLog 2020-03-18 23:22:22 UTC (rev 258668) @@ -1,3 +1,9 @@ +2020-03-18 Ryan Haddad + +Unreviewed test gardening. + +* platform/ios/TestExpectations: Skip the http/wpt/notifications directory on iOS. + 2020-03-18 Zalan Bujtas [MultiColumn] Ignore spanner boxes inside Modified: trunk/LayoutTests/platform/ios/TestExpectations (258667 => 258668) --- trunk/LayoutTests/platform/ios/TestExpectations 2020-03-18 23:09:54 UTC (rev 258667) +++ trunk/LayoutTests/platform/ios/TestExpectations 2020-03-18 23:22:22 UTC (rev 258668) @@ -58,6 +58,7 @@ # Web Notifications are not supported on iOS. http/tests/notifications +http/wpt/notifications fast/history/page-cache-notification-showing.html fast/history/page-cache-notification-suspendable.html imported/w3c/web-platform-tests/notifications/ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258667] trunk/Source/WebKit
Title: [258667] trunk/Source/WebKit Revision 258667 Author katherine_che...@apple.com Date 2020-03-18 16:09:54 -0700 (Wed, 18 Mar 2020) Log Message Pass isNavigatingToAppBoundDomain for speculative loads, preconnect tasks and downloads https://bugs.webkit.org/show_bug.cgi?id=209246 Reviewed by Alex Christensen. Pass isNavigatingToAppBoundDomain in 4 new places: 1) Speculative Loads 2) Preconnect Tasks 3) Downloads 4) CORS preflight checker These loads should happen in an app-bound session if isNavigatingToAppBoundDomain is true. * NetworkProcess/Downloads/DownloadManager.cpp: (WebKit::DownloadManager::startDownload): * NetworkProcess/Downloads/DownloadManager.h: (WebKit::DownloadManager::startDownload): * NetworkProcess/Downloads/PendingDownload.cpp: (WebKit::PendingDownload::PendingDownload): * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::startDownload): (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload): * NetworkProcess/NetworkConnectionToWebProcess.h: (WebKit::NetworkConnectionToWebProcess::startDownload): * NetworkProcess/NetworkConnectionToWebProcess.messages.in: * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::preconnectTo): (WebKit::NetworkProcess::downloadRequest): * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::start): (WebKit::NetworkResourceLoader::retrieveCacheEntry): (WebKit::NetworkResourceLoader::convertToDownload): * NetworkProcess/PreconnectTask.cpp: * NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp: (WebKit::ServiceWorkerSoftUpdateLoader::ServiceWorkerSoftUpdateLoader): The service worker script should be considered an app-bound load. * NetworkProcess/cache/AsyncRevalidation.cpp: (WebKit::NetworkCache::AsyncRevalidation::AsyncRevalidation): * NetworkProcess/cache/AsyncRevalidation.h: * NetworkProcess/cache/NetworkCache.cpp: (WebKit::NetworkCache::Cache::startAsyncRevalidationIfNeeded): (WebKit::NetworkCache::Cache::retrieve): * NetworkProcess/cache/NetworkCache.h: * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp: (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad): * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h: * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp: (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad): (WebKit::NetworkCache::SpeculativeLoadManager::preconnectForSubresource): (WebKit::NetworkCache::SpeculativeLoadManager::revalidateSubresource): (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry): (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation): * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h: * NetworkProcess/cocoa/NetworkSessionCocoa.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::sessionWrapperForTask): * Shared/NavigatingToAppBoundDomain.h: Separates NavigatingToAppBoundDomain to its own file to allow for sending over IPC. * Shared/PolicyDecision.h: * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::preconnectTo): * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain): (WebKit::WebPageProxy::preconnectTo): * UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::isNavigatingToAppBoundDomain const): * UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::download): * WebKit.xcodeproj/project.pbxproj: * WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::WebLoaderStrategy::preconnectTo): * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::startDownload): (WebKit::WebFrame::convertMainResourceLoadToDownload): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/Downloads/DownloadManager.cpp trunk/Source/WebKit/NetworkProcess/Downloads/DownloadManager.h trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerSoftUpdateLoader.cpp trunk/Source/WebKit/NetworkProcess/cache/AsyncRevalidation.cpp trunk/Source/WebKit/NetworkProcess/cache/AsyncRevalidation.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCache.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCache.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoad.h trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp trunk/Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h
[webkit-changes] [258666] trunk
Title: [258666] trunk Revision 258666 Author za...@apple.com Date 2020-03-18 15:48:44 -0700 (Wed, 18 Mar 2020) Log Message [MultiColumn] Ignore spanner boxes inside https://bugs.webkit.org/show_bug.cgi?id=209248 Reviewed by Simon Fraser. Source/WebCore: boxes don't participate in the multicolumn flow, they are simply ignored. This patch ensures that we don't include their descendants in the spanner construction. somecontent <- the "spanner" div won't span the column content. Test: fast/multicol/spanner-inside-legend-crash.html * rendering/updating/RenderTreeBuilderMultiColumn.cpp: (WebCore::isValidColumnSpanner): LayoutTests: * fast/multicol/spanner-inside-legend-crash-expected.txt: Added. * fast/multicol/spanner-inside-legend-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp Added Paths trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash-expected.txt trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (258665 => 258666) --- trunk/LayoutTests/ChangeLog 2020-03-18 22:30:11 UTC (rev 258665) +++ trunk/LayoutTests/ChangeLog 2020-03-18 22:48:44 UTC (rev 258666) @@ -1,3 +1,14 @@ +2020-03-18 Zalan Bujtas + +[MultiColumn] Ignore spanner boxes inside +https://bugs.webkit.org/show_bug.cgi?id=209248 + + +Reviewed by Simon Fraser. + +* fast/multicol/spanner-inside-legend-crash-expected.txt: Added. +* fast/multicol/spanner-inside-legend-crash.html: Added. + 2020-03-18 Eugene But Test for ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash fix Added: trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash-expected.txt (0 => 258666) --- trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash-expected.txt (rev 0) +++ trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash-expected.txt 2020-03-18 22:48:44 UTC (rev 258666) @@ -0,0 +1,2 @@ + +spanners should be ignored inside legends(legends are not part of the flow) Added: trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash.html (0 => 258666) --- trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash.html (rev 0) +++ trunk/LayoutTests/fast/multicol/spanner-inside-legend-crash.html 2020-03-18 22:48:44 UTC (rev 258666) @@ -0,0 +1,13 @@ + +.container, fieldset { +column-count: 2; +} +.spanner { +column-span: all; +} + +spanners should be ignored inside legends(legends are not part of the flow) + +if (window.testRunner) +testRunner.dumpAsText(); + Modified: trunk/Source/WebCore/ChangeLog (258665 => 258666) --- trunk/Source/WebCore/ChangeLog 2020-03-18 22:30:11 UTC (rev 258665) +++ trunk/Source/WebCore/ChangeLog 2020-03-18 22:48:44 UTC (rev 258666) @@ -1,3 +1,20 @@ +2020-03-18 Zalan Bujtas + +[MultiColumn] Ignore spanner boxes inside +https://bugs.webkit.org/show_bug.cgi?id=209248 + + +Reviewed by Simon Fraser. + + boxes don't participate in the multicolumn flow, they are simply ignored. +This patch ensures that we don't include their descendants in the spanner construction. +somecontent <- the "spanner" div won't span the column content. + +Test: fast/multicol/spanner-inside-legend-crash.html + +* rendering/updating/RenderTreeBuilderMultiColumn.cpp: +(WebCore::isValidColumnSpanner): + 2020-03-18 Yusuke Suzuki Add a way to mark a rejected promise as handled Modified: trunk/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp (258665 => 258666) --- trunk/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp 2020-03-18 22:30:11 UTC (rev 258665) +++ trunk/Source/WebCore/rendering/updating/RenderTreeBuilderMultiColumn.cpp 2020-03-18 22:48:44 UTC (rev 258666) @@ -99,6 +99,8 @@ for (auto* ancestor = descendantBox.containingBlock(); ancestor; ancestor = ancestor->containingBlock()) { if (is(*ancestor)) return false; +if (ancestor->isLegend()) +return false; if (is(*ancestor)) { // Don't allow any intervening non-multicol fragmentation contexts. The spec doesn't say // anything about disallowing this, but it's just going to be too complicated to ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258665] trunk/Source/WebKit
Title: [258665] trunk/Source/WebKit Revision 258665 Author sihui_...@apple.com Date 2020-03-18 15:30:11 -0700 (Wed, 18 Mar 2020) Log Message Remove unused IPC message NetworkProcess::ClearCacheForAllOrigins https://bugs.webkit.org/show_bug.cgi?id=209152 Reviewed by Chris Dumez. * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * NetworkProcess/ios/NetworkProcessIOS.mm: (WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. * NetworkProcess/mac/NetworkProcessMac.mm: (WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. * NetworkProcess/soup/NetworkProcessSoup.cpp: (WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. * Shared/ResourceCachesToClear.h: Removed. * UIProcess/API/C/WKAPICast.h: (WebKit::toResourceCachesToClear): Deleted. * WebKit.xcodeproj/project.pbxproj: * WebProcess/WebProcess.cpp: (WebKit::WebProcess::clearResourceCaches): Deleted. * WebProcess/WebProcess.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/NetworkProcess/ios/NetworkProcessIOS.mm trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm trunk/Source/WebKit/NetworkProcess/soup/NetworkProcessSoup.cpp trunk/Source/WebKit/UIProcess/API/C/WKAPICast.h trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj trunk/Source/WebKit/WebProcess/WebProcess.cpp trunk/Source/WebKit/WebProcess/WebProcess.h Removed Paths trunk/Source/WebKit/Shared/ResourceCachesToClear.h Diff Modified: trunk/Source/WebKit/ChangeLog (258664 => 258665) --- trunk/Source/WebKit/ChangeLog 2020-03-18 22:27:22 UTC (rev 258664) +++ trunk/Source/WebKit/ChangeLog 2020-03-18 22:30:11 UTC (rev 258665) @@ -1,3 +1,27 @@ +2020-03-18 Sihui Liu + +Remove unused IPC message NetworkProcess::ClearCacheForAllOrigins +https://bugs.webkit.org/show_bug.cgi?id=209152 + + +Reviewed by Chris Dumez. + +* NetworkProcess/NetworkProcess.h: +* NetworkProcess/NetworkProcess.messages.in: +* NetworkProcess/ios/NetworkProcessIOS.mm: +(WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. +* NetworkProcess/mac/NetworkProcessMac.mm: +(WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. +* NetworkProcess/soup/NetworkProcessSoup.cpp: +(WebKit::NetworkProcess::clearCacheForAllOrigins): Deleted. +* Shared/ResourceCachesToClear.h: Removed. +* UIProcess/API/C/WKAPICast.h: +(WebKit::toResourceCachesToClear): Deleted. +* WebKit.xcodeproj/project.pbxproj: +* WebProcess/WebProcess.cpp: +(WebKit::WebProcess::clearResourceCaches): Deleted. +* WebProcess/WebProcess.h: + 2020-03-18 youenn fablet WebPage should own a Ref Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.h (258664 => 258665) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2020-03-18 22:27:22 UTC (rev 258664) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2020-03-18 22:30:11 UTC (rev 258665) @@ -415,7 +415,6 @@ void setCacheModel(CacheModel); void setCacheModelSynchronouslyForTesting(CacheModel, CompletionHandler&&); void allowSpecificHTTPSCertificateForHost(const WebCore::CertificateInfo&, const String& host); -void clearCacheForAllOrigins(uint32_t cachesToClear); void setAllowsAnySSLCertificateForWebSocket(bool, CompletionHandler&&); void syncAllCookies(); Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in (258664 => 258665) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in 2020-03-18 22:27:22 UTC (rev 258664) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in 2020-03-18 22:30:11 UTC (rev 258665) @@ -68,8 +68,7 @@ SyncAllCookies() AllowSpecificHTTPSCertificateForHost(WebCore::CertificateInfo certificate, String host) - -ClearCacheForAllOrigins(uint32_t cachesToClear) + SetCacheModel(enum:uint8_t WebKit::CacheModel cacheModel) SetCacheModelSynchronouslyForTesting(enum:uint8_t WebKit::CacheModel cacheModel) -> () Synchronous Modified: trunk/Source/WebKit/NetworkProcess/ios/NetworkProcessIOS.mm (258664 => 258665) --- trunk/Source/WebKit/NetworkProcess/ios/NetworkProcessIOS.mm 2020-03-18 22:27:22 UTC (rev 258664) +++ trunk/Source/WebKit/NetworkProcess/ios/NetworkProcessIOS.mm 2020-03-18 22:30:11 UTC (rev 258665) @@ -30,7 +30,6 @@ #import "NetworkCache.h" #import "NetworkProcessCreationParameters.h" -#import "ResourceCachesToClear.h" #import "SandboxInitializationParameters.h" #import "SecItemShim.h" #import @@ -61,17 +60,6 @@ [NSURLRequest setAllowsSpecificHTTPSCertificate:(NSArray *)certificateInfo.certificateChain() forHost:host]; } -void NetworkProcess::clearCacheForAllOrigins(uint32_t cachesToClear) -{ -ResourceCachesToClear resourceCachesToClear = static_cast(cachesToClear); -if
[webkit-changes] [258664] trunk
Title: [258664] trunk Revision 258664 Author ysuz...@apple.com Date 2020-03-18 15:27:22 -0700 (Wed, 18 Mar 2020) Log Message Add a way to mark a rejected promise as handled https://bugs.webkit.org/show_bug.cgi?id=209241 Reviewed by Michael Saboff. JSTests: * stress/reject-as-handled.js: Added. (shouldBe): (set new): Source/_javascript_Core: Some of WebCore promise implementations (WebAnimation etc.) want to reject promise as handled state to suppress UnhandledPromiseRejection tracking. For example, a lot of WebCore implementations expose Promise DOM attributes which will be rejected at some conditions. But we do not want to force users setting a handler for each such an attribute. This patch adds `JSPromise::rejectAsHandled` C++ function. This simply sets isHandledFlag before executing `JSPromise::reject` if we are not calling a reject function yet. * runtime/JSPromise.cpp: (JSC::JSPromise::rejectAsHandled): * runtime/JSPromise.h: * tools/JSDollarVM.cpp: (JSC::functionRejectPromiseAsHandled): (JSC::JSDollarVM::finishCreation): Source/WebCore: This adds an interface using JSPromise::rejectAsHandled to DOMPromise classes. * bindings/js/DOMPromiseProxy.h: (WebCore::DOMPromiseProxy::reject): (WebCore::DOMPromiseProxy::reject): (WebCore::DOMPromiseProxyWithResolveCallback::reject): * bindings/js/JSDOMPromiseDeferred.cpp: (WebCore::DeferredPromise::callFunction): (WebCore::DeferredPromise::reject): * bindings/js/JSDOMPromiseDeferred.h: (WebCore::DeferredPromise::reject): (WebCore::DeferredPromise::rejectWithCallback): (WebCore::DOMPromiseDeferredBase::reject): (WebCore::DOMPromiseDeferredBase::rejectType): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSPromise.cpp trunk/Source/_javascript_Core/runtime/JSPromise.h trunk/Source/_javascript_Core/tools/JSDollarVM.cpp trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/js/DOMPromiseProxy.h trunk/Source/WebCore/bindings/js/JSDOMPromiseDeferred.cpp trunk/Source/WebCore/bindings/js/JSDOMPromiseDeferred.h Added Paths trunk/JSTests/stress/reject-as-handled.js Diff Modified: trunk/JSTests/ChangeLog (258663 => 258664) --- trunk/JSTests/ChangeLog 2020-03-18 20:30:02 UTC (rev 258663) +++ trunk/JSTests/ChangeLog 2020-03-18 22:27:22 UTC (rev 258664) @@ -1,3 +1,14 @@ +2020-03-18 Yusuke Suzuki + +Add a way to mark a rejected promise as handled +https://bugs.webkit.org/show_bug.cgi?id=209241 + +Reviewed by Michael Saboff. + +* stress/reject-as-handled.js: Added. +(shouldBe): +(set new): + 2020-03-16 Keith Miller _javascript_ identifier grammar supports unescaped astral symbols, but JSC doesn’t Added: trunk/JSTests/stress/reject-as-handled.js (0 => 258664) --- trunk/JSTests/stress/reject-as-handled.js (rev 0) +++ trunk/JSTests/stress/reject-as-handled.js 2020-03-18 22:27:22 UTC (rev 258664) @@ -0,0 +1,38 @@ +function shouldBe(actual, expected) { +if (actual !== expected) +throw new Error('bad value: ' + actual); +} + +var set = new Set; +var count = 0; +setUnhandledRejectionCallback(function (promise) { +shouldBe(set.has(promise), true); +++count; +}); +var promise1 = Promise.reject(42); +set.add(promise1); +var promise2 = new Promise(function () { }); +$vm.rejectPromiseAsHandled(promise2, 42); + +// If it is already rejected, rejectPromiseAsHandled is no-op: not marking the promise as handled. +var promise3 = Promise.reject(43); +set.add(promise3); +$vm.rejectPromiseAsHandled(promise3, 43); + +drainMicrotasks(); +shouldBe(count, 2); + +promise1.then($vm.abort, function (value) { +shouldBe(value, 42); +++count; +}); +promise2.then($vm.abort, function (value) { +shouldBe(value, 42); +++count; +}); +promise3.then($vm.abort, function (value) { +shouldBe(value, 43); +++count; +}); +drainMicrotasks(); +shouldBe(count, 5); Modified: trunk/Source/_javascript_Core/ChangeLog (258663 => 258664) --- trunk/Source/_javascript_Core/ChangeLog 2020-03-18 20:30:02 UTC (rev 258663) +++ trunk/Source/_javascript_Core/ChangeLog 2020-03-18 22:27:22 UTC (rev 258664) @@ -1,3 +1,26 @@ +2020-03-18 Yusuke Suzuki + +Add a way to mark a rejected promise as handled +https://bugs.webkit.org/show_bug.cgi?id=209241 + +Reviewed by Michael Saboff. + +Some of WebCore promise implementations (WebAnimation etc.) want to reject promise +as handled state to suppress UnhandledPromiseRejection tracking. For example, a +lot of WebCore implementations expose Promise DOM attributes which will be rejected +at some conditions. But we do not want to force users setting a handler for each such an +attribute. + +This patch adds `JSPromise::rejectAsHandled` C++ function. This simply sets isHandledFlag +before executing `JSPromise::reject` if we are not calling a reject function yet. + +*
[webkit-changes] [258662] trunk
Title: [258662] trunk Revision 258662 Author commit-qu...@webkit.org Date 2020-03-18 13:23:39 -0700 (Wed, 18 Mar 2020) Log Message Source/WebCore: Fix ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash https://bugs.webkit.org/show_bug.cgi?id=208312 Patch by Eugene But on 2020-03-18 Reviewed by Ryosuke Niwa ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren was crashing on dereferencing m_firstNodeInserted pointer. Before the crash ReplaceSelectionCommand::InsertedNodes object received the following calls: respondToNodeInsertion() with node A, which set m_firstNodeInserted and m_lastNodeInserted to A willRemoveNode() with node B, which left m_firstNodeInserted and m_lastNodeInserted unchanged (A) (node A was destroyed setting m_firstNodeInserted and m_lastNodeInserted to null) respondToNodeInsertion() with node C, which set m_firstNodeInserted and m_lastNodeInserted to C willRemoveNodePreservingChildren() with node C, which set m_firstNodeInserted to null and crashed This patch checks m_firstNodeInserted before dereferencing and sets m_lastNodeInserted to null if m_firstNodeInserted became null. It seems like having non-null value for m_lastNodeInserted would be an invalid state. Test: editing/pasteboard/insert-apple-style-span-after-timeout.html * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren): LayoutTests: Test for ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash fix https://bugs.webkit.org/show_bug.cgi?id=208312 Patch by Eugene But on 2020-03-18 Reviewed by Ryosuke Niwa This test insers empty Apple-style-span after timeout to a non-empty document. * editing/pasteboard/insert-apple-style-span-after-timeout.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/ReplaceSelectionCommand.cpp Added Paths trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout-expected.txt trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout.html Diff Modified: trunk/LayoutTests/ChangeLog (258661 => 258662) --- trunk/LayoutTests/ChangeLog 2020-03-18 19:52:37 UTC (rev 258661) +++ trunk/LayoutTests/ChangeLog 2020-03-18 20:23:39 UTC (rev 258662) @@ -1,3 +1,14 @@ +2020-03-18 Eugene But + +Test for ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash fix +https://bugs.webkit.org/show_bug.cgi?id=208312 + +Reviewed by Ryosuke Niwa + +This test insers empty Apple-style-span after timeout to a non-empty document. + +* editing/pasteboard/insert-apple-style-span-after-timeout.html: + 2020-03-18 Frank Yang [CSS Writing Modes] Import css/css-writing-modes from WPT Added: trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout-expected.txt (0 => 258662) --- trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout-expected.txt (rev 0) +++ trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout-expected.txt 2020-03-18 20:23:39 UTC (rev 258662) @@ -0,0 +1 @@ +No crash! Added: trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout.html (0 => 258662) --- trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout.html (rev 0) +++ trunk/LayoutTests/editing/pasteboard/insert-apple-style-span-after-timeout.html 2020-03-18 20:23:39 UTC (rev 258662) @@ -0,0 +1,21 @@ + + + + if (window.testRunner) { +window.testRunner.dumpAsText(); +window.testRunner.waitUntilDone(); + } + + function test() { +document.designMode = 'on'; +document.execCommand("selectAll"); +document.execCommand("InsertHTML", false, "No crash!
"); +document.execCommand("InsertHTML", false, ""); + +if (window.testRunner) + testRunner.notifyDone(); + } + setTimeout(test); + + + Modified: trunk/Source/WebCore/ChangeLog (258661 => 258662) --- trunk/Source/WebCore/ChangeLog 2020-03-18 19:52:37 UTC (rev 258661) +++ trunk/Source/WebCore/ChangeLog 2020-03-18 20:23:39 UTC (rev 258662) @@ -1,3 +1,29 @@ +2020-03-18 Eugene But + +Fix ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash +https://bugs.webkit.org/show_bug.cgi?id=208312 + +Reviewed by Ryosuke Niwa + +ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren +was crashing on dereferencing m_firstNodeInserted pointer. Before the crash +ReplaceSelectionCommand::InsertedNodes object received the following calls: + +respondToNodeInsertion() with node A, which set m_firstNodeInserted and m_lastNodeInserted to A +willRemoveNode() with node B, which left
[webkit-changes] [258663] trunk/Source
Title: [258663] trunk/Source Revision 258663 Author you...@apple.com Date 2020-03-18 13:30:02 -0700 (Wed, 18 Mar 2020) Log Message WebPage should own a Ref https://bugs.webkit.org/show_bug.cgi?id=209235 Reviewed by Geoffrey Garen. Source/WebCore: * loader/FrameLoaderStateMachine.h: Export committedFirstRealDocumentLoad/ Source/WebKit: Update code since m_mainFrame is now a Ref and no longer a RefPtr. Update WebPage constructor to set its m_mainFrame very early. We update WebPage::didCompletePageTransition to compute whether this is initialization or not using the frame state machine state instead of m_mainFrame being null. * WebProcess/Automation/WebAutomationSessionProxy.cpp: (WebKit::WebAutomationSessionProxy::evaluateJavaScriptFunction): (WebKit::WebAutomationSessionProxy::resolveChildFrameWithOrdinal): (WebKit::WebAutomationSessionProxy::resolveChildFrameWithNodeHandle): (WebKit::WebAutomationSessionProxy::resolveChildFrameWithName): (WebKit::WebAutomationSessionProxy::resolveParentFrame): (WebKit::WebAutomationSessionProxy::focusFrame): (WebKit::WebAutomationSessionProxy::computeElementLayout): (WebKit::WebAutomationSessionProxy::selectOptionElement): (WebKit::WebAutomationSessionProxy::setFilesForInputFileUpload): (WebKit::WebAutomationSessionProxy::takeScreenshot): (WebKit::WebAutomationSessionProxy::snapshotRectForScreenshot): (WebKit::WebAutomationSessionProxy::getCookiesForFrame): (WebKit::WebAutomationSessionProxy::deleteCookie): * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: (WKBundlePageGetMainFrame): * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::findLargestFrameInFrameSet): (WebKit::WebChromeClient::closeWindowSoon): * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::dispatchDidReachLayoutMilestone): (WebKit::WebFrameLoaderClient::dispatchDidLayout): (WebKit::WebFrameLoaderClient::restoreViewState): * WebProcess/WebPage/ViewGestureGeometryCollector.cpp: (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture): (WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture): * WebProcess/WebPage/WebBackForwardListProxy.cpp: (WebKit::WebBackForwardListProxy::goToItem): * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::WebPage): (WebKit::m_processDisplayName): (WebKit::WebPage::close): (WebKit::WebPage::suspendForProcessSwap): (WebKit::WebPage::loadDataInFrame): (WebKit::WebPage::loadRequest): (WebKit::WebPage::reload): (WebKit::WebPage::didCompletePageTransition): (WebKit::WebPage::runJavaScriptInFrameInScriptWorld): (WebKit::WebPage::setIsSuspended): (WebKit::WebPage::didLoadFromRegistrableDomain): * WebProcess/WebPage/WebPage.h: (WebKit::WebPage::mainWebFrame const): * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::cancelPotentialTap): * WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::origin): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/FrameLoaderStateMachine.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp trunk/Source/WebKit/WebProcess/InjectedBundle/API/c/WKBundlePage.cpp trunk/Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp trunk/Source/WebKit/WebProcess/WebPage/ViewGestureGeometryCollector.cpp trunk/Source/WebKit/WebProcess/WebPage/WebBackForwardListProxy.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (258662 => 258663) --- trunk/Source/WebCore/ChangeLog 2020-03-18 20:23:39 UTC (rev 258662) +++ trunk/Source/WebCore/ChangeLog 2020-03-18 20:30:02 UTC (rev 258663) @@ -1,3 +1,13 @@ +2020-03-18 youenn fablet + +WebPage should own a Ref +https://bugs.webkit.org/show_bug.cgi?id=209235 + +Reviewed by Geoffrey Garen. + +* loader/FrameLoaderStateMachine.h: +Export committedFirstRealDocumentLoad/ + 2020-03-18 Eugene But Fix ReplaceSelectionCommand::InsertedNodes::willRemoveNodePreservingChildren crash Modified: trunk/Source/WebCore/loader/FrameLoaderStateMachine.h (258662 => 258663) --- trunk/Source/WebCore/loader/FrameLoaderStateMachine.h 2020-03-18 20:23:39 UTC (rev 258662) +++ trunk/Source/WebCore/loader/FrameLoaderStateMachine.h 2020-03-18 20:30:02 UTC (rev 258663) @@ -51,7 +51,7 @@ }; WEBCORE_EXPORT bool committingFirstRealLoad() const; -bool committedFirstRealDocumentLoad() const; +WEBCORE_EXPORT bool committedFirstRealDocumentLoad() const; bool creatingInitialEmptyDocument() const; WEBCORE_EXPORT bool isDisplayingInitialEmptyDocument() const; WEBCORE_EXPORT bool firstLayoutDone() const; Modified:
[webkit-changes] [258660] trunk/Source/WebCore
Title: [258660] trunk/Source/WebCore Revision 258660 Author you...@apple.com Date 2020-03-18 12:40:23 -0700 (Wed, 18 Mar 2020) Log Message CrossOriginPreflightResultCacheItem::allows methods should not use out parameters https://bugs.webkit.org/show_bug.cgi?id=209224 Reviewed by Alex Christensen. Instead of having an out parameter for the error description, either return whether there is an error or not. Covered by existing tests. * loader/CrossOriginPreflightResultCache.cpp: (WebCore::CrossOriginPreflightResultCacheItem::validateMethodAndHeaders const): (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod const): (WebCore::CrossOriginPreflightResultCacheItem::validateCrossOriginHeaders const): (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest const): (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders const): Deleted. * loader/CrossOriginPreflightResultCache.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/CrossOriginPreflightResultCache.cpp trunk/Source/WebCore/loader/CrossOriginPreflightResultCache.h Diff Modified: trunk/Source/WebCore/ChangeLog (258659 => 258660) --- trunk/Source/WebCore/ChangeLog 2020-03-18 19:31:20 UTC (rev 258659) +++ trunk/Source/WebCore/ChangeLog 2020-03-18 19:40:23 UTC (rev 258660) @@ -1,3 +1,21 @@ +2020-03-18 Youenn Fablet + +CrossOriginPreflightResultCacheItem::allows methods should not use out parameters +https://bugs.webkit.org/show_bug.cgi?id=209224 + +Reviewed by Alex Christensen. + +Instead of having an out parameter for the error description, either return whether there is an error or not. +Covered by existing tests. + +* loader/CrossOriginPreflightResultCache.cpp: +(WebCore::CrossOriginPreflightResultCacheItem::validateMethodAndHeaders const): +(WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod const): +(WebCore::CrossOriginPreflightResultCacheItem::validateCrossOriginHeaders const): +(WebCore::CrossOriginPreflightResultCacheItem::allowsRequest const): +(WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders const): Deleted. +* loader/CrossOriginPreflightResultCache.h: + 2020-03-18 Peng Liu The value of [AVPlayerViewController isPictureInPicturePossible] is NO in the first attempt to enter PiP Modified: trunk/Source/WebCore/loader/CrossOriginPreflightResultCache.cpp (258659 => 258660) --- trunk/Source/WebCore/loader/CrossOriginPreflightResultCache.cpp 2020-03-18 19:31:20 UTC (rev 258659) +++ trunk/Source/WebCore/loader/CrossOriginPreflightResultCache.cpp 2020-03-18 19:40:23 UTC (rev 258660) @@ -74,47 +74,40 @@ Optional CrossOriginPreflightResultCacheItem::validateMethodAndHeaders(const String& method, const HTTPHeaderMap& requestHeaders) const { -String errorDescription; -if (!allowsCrossOriginMethod(method, m_storedCredentialsPolicy, errorDescription)) -return WTFMove(errorDescription); -if (!allowsCrossOriginHeaders(requestHeaders, m_storedCredentialsPolicy, errorDescription)) -return WTFMove(errorDescription); +if (!allowsCrossOriginMethod(method, m_storedCredentialsPolicy)) +return makeString("Method ", method, " is not allowed by Access-Control-Allow-Methods."); + +if (auto badHeader = validateCrossOriginHeaders(requestHeaders, m_storedCredentialsPolicy)) +return makeString("Request header field ", *badHeader, " is not allowed by Access-Control-Allow-Headers."); return { }; } -bool CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod(const String& method, StoredCredentialsPolicy storedCredentialsPolicy, String& errorDescription) const +bool CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod(const String& method, StoredCredentialsPolicy storedCredentialsPolicy) const { -if (m_methods.contains(method) || (m_methods.contains("*") && storedCredentialsPolicy != StoredCredentialsPolicy::Use) || isOnAccessControlSimpleRequestMethodWhitelist(method)) -return true; - -errorDescription = "Method " + method + " is not allowed by Access-Control-Allow-Methods."; -return false; +return m_methods.contains(method) || (m_methods.contains("*") && storedCredentialsPolicy != StoredCredentialsPolicy::Use) || isOnAccessControlSimpleRequestMethodWhitelist(method); } -bool CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders(const HTTPHeaderMap& requestHeaders, StoredCredentialsPolicy storedCredentialsPolicy, String& errorDescription) const +Optional CrossOriginPreflightResultCacheItem::validateCrossOriginHeaders(const HTTPHeaderMap& requestHeaders, StoredCredentialsPolicy storedCredentialsPolicy) const { bool validWildcard = m_headers.contains("*") && storedCredentialsPolicy != StoredCredentialsPolicy::Use; for (const auto& header : requestHeaders) { if (header.keyAsHTTPHeaderName &&
[webkit-changes] [258659] trunk
Title: [258659] trunk Revision 258659 Author wenson_hs...@apple.com Date 2020-03-18 12:31:20 -0700 (Wed, 18 Mar 2020) Log Message REGRESSION (r257214): Targeted preview animates to the wrong place when dropping in editable content https://bugs.webkit.org/show_bug.cgi?id=209218 Reviewed by Tim Horton. Source/WebKit: In r257214, we split out the context menu hint preview container view into two views: one for drag and drop, and another for the context menu hint. The container view used for both drag and drop previews was removed under -cleanUpDragSourceSessionState, which is invoked after both drag and drop sessions have ended; however, in the case of a drop in editable content where the drop preview is delayed, the drop animation can end up finishing after -cleanUpDragSourceSessionState is invoked. This means we end up prematurely unparenting the preview container, which results in a broken drop animation. To fix this, split the drag and drop container views further, into separate container views for dragging and for dropping. The drag preview container will continue to be removed under -cleanUpDragSourceSessionState, and the drop preview container will now be removed under the delegate call to -dropInteraction:concludeDrop:, which is invoked by UIKit after all drop previews are finished animating. Covered by adding additional test assertions while running existing API tests (see Tools/ChangeLog for more details). * UIProcess/ios/WKContentViewInteraction.h: * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _createPreviewContainerWithLayerName:]): Pull out common logic for creating and setting up a preview container view into a helper method. This is used by the three methods below, which ensure container views for each of the types of previews we create when showing the context menu, dragging an element, and dropping. (-[WKContentView containerForDropPreviews]): (-[WKContentView containerForDragPreviews]): (-[WKContentView containerForContextMenuHintPreviews]): Add a third preview container view for drop previews, and factor duplicated code in these three methods into a common helper (see above). (-[WKContentView _hideTargetedPreviewContainerViews]): (-[WKContentView _deliverDelayedDropPreviewIfPossible:]): Instead of using the container for drag previews, use the container for drop previews. (-[WKContentView dropInteraction:concludeDrop:]): Remove the drop preview container after the drop has concluded (i.e. all animations are complete). Tools: Augment the drag and drop test harness to verify that for all targeted previews, if they have container views, those views must be parented (i.e. they must be connected to a UIWindow). * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]): (-[DragAndDropSimulator _expectNoDropPreviewsWithUnparentedContainerViews]): (-[DragAndDropSimulator _invokeDropAnimationCompletionBlocksAndConcludeDrop]): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.h trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm Diff Modified: trunk/Source/WebKit/ChangeLog (258658 => 258659) --- trunk/Source/WebKit/ChangeLog 2020-03-18 19:28:39 UTC (rev 258658) +++ trunk/Source/WebKit/ChangeLog 2020-03-18 19:31:20 UTC (rev 258659) @@ -1,3 +1,50 @@ +2020-03-18 Wenson Hsieh + +REGRESSION (r257214): Targeted preview animates to the wrong place when dropping in editable content +https://bugs.webkit.org/show_bug.cgi?id=209218 + + +Reviewed by Tim Horton. + +In r257214, we split out the context menu hint preview container view into two views: one for drag and drop, and +another for the context menu hint. The container view used for both drag and drop previews was removed under +-cleanUpDragSourceSessionState, which is invoked after both drag and drop sessions have ended; however, in the +case of a drop in editable content where the drop preview is delayed, the drop animation can end up finishing +after -cleanUpDragSourceSessionState is invoked. This means we end up prematurely unparenting the preview +container, which results in a broken drop animation. + +To fix this, split the drag and drop container views further, into separate container views for dragging and for +dropping. The drag preview container will continue to be removed under -cleanUpDragSourceSessionState, and the +drop preview container will now be removed under the delegate call to -dropInteraction:concludeDrop:, which is +invoked by UIKit after all drop previews are finished animating. + +Covered by adding additional test assertions while running existing API tests (see Tools/ChangeLog for more +details). + +* UIProcess/ios/WKContentViewInteraction.h: +
[webkit-changes] [258658] trunk/Source/WTF
Title: [258658] trunk/Source/WTF Revision 258658 Author mmaxfi...@apple.com Date 2020-03-18 12:28:39 -0700 (Wed, 18 Mar 2020) Log Message REGRESSION(r254389): Cordova throws an exception because it expects a hyphen inside navigator.locale https://bugs.webkit.org/show_bug.cgi?id=208969 Reviewed by Darin Adler. We want to thwart fingerprinting by minimizing the list of locales, but we also don't want to break existing apps. We can achieve both by a linked-on-or-after check. * wtf/cocoa/LanguageCocoa.mm: (WTF::canMinimizeLanguages): Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/cocoa/LanguageCocoa.mm Diff Modified: trunk/Source/WTF/ChangeLog (258657 => 258658) --- trunk/Source/WTF/ChangeLog 2020-03-18 19:24:22 UTC (rev 258657) +++ trunk/Source/WTF/ChangeLog 2020-03-18 19:28:39 UTC (rev 258658) @@ -1,3 +1,17 @@ +2020-03-18 Myles C. Maxfield + +REGRESSION(r254389): Cordova throws an exception because it expects a hyphen inside navigator.locale +https://bugs.webkit.org/show_bug.cgi?id=208969 + + +Reviewed by Darin Adler. + +We want to thwart fingerprinting by minimizing the list of locales, but we also don't want to break existing apps. +We can achieve both by a linked-on-or-after check. + +* wtf/cocoa/LanguageCocoa.mm: +(WTF::canMinimizeLanguages): + 2020-03-17 Alex Christensen REGRESSION(r254856) Add exception for window.openDatabase to not masquerade as undefined in currently shipping Jesus Calling Devotional app Modified: trunk/Source/WTF/wtf/cocoa/LanguageCocoa.mm (258657 => 258658) --- trunk/Source/WTF/wtf/cocoa/LanguageCocoa.mm 2020-03-18 19:24:22 UTC (rev 258657) +++ trunk/Source/WTF/wtf/cocoa/LanguageCocoa.mm 2020-03-18 19:28:39 UTC (rev 258658) @@ -27,6 +27,7 @@ #import #import +#import #import namespace WTF { @@ -33,7 +34,17 @@ bool canMinimizeLanguages() { -static bool result = [NSLocale respondsToSelector:@selector(minimizedLanguagesFromLanguages:)]; +static const bool result = []() -> bool { +#if PLATFORM(MAC) +if (applicationSDKVersion() < DYLD_MACOSX_VERSION_10_15_4) +return false; +#endif +#if PLATFORM(IOS) +if (applicationSDKVersion() < DYLD_IOS_VERSION_13_4) +return false; +#endif +return [NSLocale respondsToSelector:@selector(minimizedLanguagesFromLanguages:)]; +}(); return result; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [258657] trunk/LayoutTests
Title: [258657] trunk/LayoutTests
Revision 258657
Author grao...@webkit.org
Date 2020-03-18 12:24:22 -0700 (Wed, 18 Mar 2020)
Log Message
[macOS WK1] Layout Test media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=192974
Reviewed by Dean Jackson.
Since the console output is not guaranteed to appear in a deterministic order, we supress it.
* media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt:
* media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html:
* platform/mac-wk1/TestExpectations:
Modified Paths
trunk/LayoutTests/ChangeLog
trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt
trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html
trunk/LayoutTests/platform/mac-wk1/TestExpectations
Diff
Modified: trunk/LayoutTests/ChangeLog (258656 => 258657)
--- trunk/LayoutTests/ChangeLog 2020-03-18 19:22:30 UTC (rev 258656)
+++ trunk/LayoutTests/ChangeLog 2020-03-18 19:24:22 UTC (rev 258657)
@@ -1,5 +1,19 @@
2020-03-18 Antoine Quint
+[macOS WK1] Layout Test media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html is flaky
+https://bugs.webkit.org/show_bug.cgi?id=192974
+
+
+Reviewed by Dean Jackson.
+
+Since the console output is not guaranteed to appear in a deterministic order, we supress it.
+
+* media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt:
+* media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html:
+* platform/mac-wk1/TestExpectations:
+
+2020-03-18 Antoine Quint
+
[ Mac WK1 ] Layout Test media/modern-media-controls/compact-media-controls/compact-media-controls-layout.html is a flaky text diff failure
https://bugs.webkit.org/show_bug.cgi?id=194309
Modified: trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt (258656 => 258657)
--- trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt 2020-03-18 19:22:30 UTC (rev 258656)
+++ trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt 2020-03-18 19:24:22 UTC (rev 258657)
@@ -1,6 +1,3 @@
-CONSOLE MESSAGE: line 140: Button failed to load, iconName = PlayCompact, layoutTraits = 8, src = ""
-CONSOLE MESSAGE: line 140: Button failed to load, iconName = InvalidCompact, layoutTraits = 8, src = ""
-CONSOLE MESSAGE: line 140: Button failed to load, iconName = ActivityIndicatorSpriteCompact, layoutTraits = 8, src = ""
Testing the CompactMediaControls constructor.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Modified: trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html (258656 => 258657)
--- trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html 2020-03-18 19:22:30 UTC (rev 258656)
+++ trunk/LayoutTests/media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html 2020-03-18 19:24:22 UTC (rev 258657)
@@ -1,3 +1,4 @@
+