[Quick Look] Rename PreviewLoader{,Client} to LegacyPreviewLoader{,Client}
[WebKit-https.git] / Source / WebCore / ChangeLog
index a1f354a..622f85e 100644 (file)
@@ -1,3 +1,356 @@
+2019-10-23  Andy Estes  <aestes@apple.com>
+
+        [Quick Look] Rename PreviewLoader{,Client} to LegacyPreviewLoader{,Client}
+        https://bugs.webkit.org/show_bug.cgi?id=203306
+
+        Reviewed by Tim Horton.
+
+        * SourcesCocoa.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * loader/EmptyClients.cpp:
+        * loader/EmptyFrameLoaderClient.h:
+        * loader/FrameLoaderClient.h:
+        * loader/ResourceLoader.cpp:
+        * loader/ResourceLoader.h:
+        * loader/SubresourceLoader.cpp:
+        (WebCore::SubresourceLoader::didReceiveResponse):
+        * loader/ios/LegacyPreviewLoader.h: Renamed from Source/WebCore/loader/ios/PreviewLoader.h.
+        * loader/ios/LegacyPreviewLoader.mm: Renamed from Source/WebCore/loader/ios/PreviewLoader.mm.
+        (testingClient):
+        (emptyClient):
+        (WebCore::LegacyPreviewLoader::LegacyPreviewLoader):
+        (WebCore::LegacyPreviewLoader::~LegacyPreviewLoader):
+        (WebCore::LegacyPreviewLoader::create):
+        (WebCore::LegacyPreviewLoader::didReceiveResponse):
+        (WebCore::LegacyPreviewLoader::didReceiveData):
+        (WebCore::LegacyPreviewLoader::didReceiveBuffer):
+        (WebCore::LegacyPreviewLoader::didFinishLoading):
+        (WebCore::LegacyPreviewLoader::didFail):
+        (WebCore::LegacyPreviewLoader::setClientForTesting):
+        * platform/network/ios/LegacyPreviewLoaderClient.h: Renamed from Source/WebCore/platform/network/ios/PreviewLoaderClient.h.
+        * testing/Internals.cpp:
+        (WebCore::Internals::resetToConsistentState):
+        (WebCore::Internals::setQuickLookPassword):
+        * testing/MockPreviewLoaderClient.h:
+
+2019-10-23  Antti Koivisto  <antti@apple.com>
+
+        [LFC] LayoutState should have out-of-line destructor
+        https://bugs.webkit.org/show_bug.cgi?id=203307
+
+        Reviewed by Zalan Bujtas.
+
+        Otherwise instantiating it requires a pile of other headers.
+
+        * layout/LayoutState.cpp:
+        * layout/LayoutState.h:
+        * layout/layouttree/LayoutTreeBuilder.cpp:
+        (WebCore::Layout::TreeBuilder::createLayoutTree):
+
+        Use makeUnique.
+
+2019-10-23  youenn fablet  <youenn@apple.com>
+
+        Remove NavigatorBase::serviceWorkerIfExists
+        https://bugs.webkit.org/show_bug.cgi?id=203241
+
+        Reviewed by Chris Dumez.
+
+        Remove unused method.
+        No change of behavior.
+
+        * page/NavigatorBase.cpp:
+        (WebCore::NavigatorBase::serviceWorkerIfExists): Deleted.
+        * page/NavigatorBase.h:
+
+2019-10-22  Simon Fraser  <simon.fraser@apple.com>
+
+        wpt/css/css-images/gradient/color-stops-parsing.html fails
+        https://bugs.webkit.org/show_bug.cgi?id=200211
+
+        Reviewed by Dean Jackson.
+
+        CSS gradients allow a single color stop to have multiple positions. In this case
+        we need to copy the color from the first to subsequent stops.
+
+        Tested by web-platform-tests/css/css-images/gradient/color-stops-parsing.html
+        and imported/w3c/web-platform-tests/css/css-images/multiple-position-color-stop-conic.html.
+
+        * css/CSSGradientValue.cpp:
+        (WebCore::CSSGradientValue::gradientWithStylesResolved): Copy colors to subsequent stops.
+        * css/parser/CSSPropertyParserHelpers.cpp:
+        (WebCore::CSSPropertyParserHelpers::consumeGradientColorStops): Fix the parsing of
+        stops with multiple positions.
+
+2019-10-22  Joanmarie Diggs  <jdiggs@igalia.com>
+
+        AX: Implement support for new ARIA roles: code, strong, emphasis, generic
+        https://bugs.webkit.org/show_bug.cgi?id=203257
+
+        Reviewed by Chris Fleizach.
+
+        Create new internal AccessibilityRole types for the new roles.
+        Treat code, strong, and emphasis as internal format style groups,
+        which are equivalent to their corresponding HTML elements.
+
+        No new tests. Instead, added new roles to existing tests and updated
+        expectations.
+
+        * accessibility/AccessibilityObject.cpp:
+        (WebCore::initializeRoleMap):
+        (WebCore::AccessibilityObject::isStyleFormatGroup const):
+        * accessibility/AccessibilityObjectInterface.h:
+        * accessibility/AccessibilityRenderObject.cpp:
+        (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
+        * accessibility/atk/WebKitAccessible.cpp:
+        (atkRole):
+        * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+        (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):
+        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+        (createAccessibilityRoleMap):
+        (-[WebAccessibilityObjectWrapper subrole]):
+
+2019-10-22  John Wilander  <wilander@apple.com>
+
+        Resource Load Statistics (experimental): Block all third-party cookies
+        https://bugs.webkit.org/show_bug.cgi?id=203266
+        <rdar://problem/56512858>
+
+        Reviewed by Alex Christensen.
+
+        This change updates the experimental change in
+        <https://trac.webkit.org/changeset/251213> to block all
+        third-party cookies, regardless of user interaction with
+        the first-party website.
+
+        Tests: http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html
+               http/tests/resourceLoadStatistics/third-party-cookie-blocking.html
+
+        * page/Settings.yaml:
+        * platform/network/NetworkStorageSession.cpp:
+        (WebCore::NetworkStorageSession::shouldBlockCookies const):
+        * platform/network/NetworkStorageSession.h:
+        (WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingEnabled):
+        (WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingOnSitesWithoutUserInteractionEnabled): Deleted.
+
+2019-10-22  Said Abou-Hallawa  <sabouhallawa@apple.com>
+
+        [SVG2] Remove the 'viewTarget' property of SVGViewElement
+        https://bugs.webkit.org/show_bug.cgi?id=203217
+
+        Reviewed by Simon Fraser.
+
+        The interface of SVGViewElement is defined here:
+            https://www.w3.org/TR/SVG2/linking.html#InterfaceSVGViewElement.
+
+        * svg/SVGViewElement.cpp:
+        (WebCore::SVGViewElement::SVGViewElement):
+        (WebCore::SVGViewElement::parseAttribute):
+        * svg/SVGViewElement.h:
+        * svg/SVGViewElement.idl:
+
+2019-10-22  Charlie Turner  <cturner@igalia.com>
+
+        media/W3C/video/networkState/networkState_during_progress.html is flaky
+        https://bugs.webkit.org/show_bug.cgi?id=76280
+
+        Reviewed by Eric Carlson.
+
+        The onprogress event must be received when networkState is
+        NETWORK_LOADING, make sure in the transition from loading to idle
+        that the progress event is fired synchronously, so that it is
+        received before the networkState changes to NETWORK_IDLE.
+
+        Tested by media/W3C/video/networkState/networkState_during_progress.html
+
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::changeNetworkStateFromLoadingToIdle):
+
+2019-10-22  Peng Liu  <peng.liu6@apple.com>
+
+        [Picture-in-Picture Web API] The implementation needs runtime logging
+        https://bugs.webkit.org/show_bug.cgi?id=202774
+
+        Reviewed by Eric Carlson.
+
+        Add runtime logging, no new tests needed.
+
+        * Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:
+        (WebCore::HTMLVideoElementPictureInPicture::HTMLVideoElementPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::~HTMLVideoElementPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::requestPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::exitPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::didEnterPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::didExitPictureInPicture):
+        (WebCore::HTMLVideoElementPictureInPicture::logChannel const):
+        * Modules/pictureinpicture/HTMLVideoElementPictureInPicture.h:
+
+2019-10-22  Yusuke Suzuki  <ysuzuki@apple.com>
+
+        [JSC] Remove non-LargeAllocation restriction for JSCallee
+        https://bugs.webkit.org/show_bug.cgi?id=203260
+
+        Reviewed by Saam Barati.
+
+        Passing VM& instead of calling CallFrame::vm.
+
+        * bindings/js/JSDOMGlobalObject.cpp:
+        (WebCore::callerGlobalObject):
+        * bindings/js/JSDOMWindowBase.cpp:
+        (WebCore::responsibleDocument):
+        * bindings/js/JSDOMWindowBase.h:
+        * bindings/scripts/CodeGeneratorJS.pm:
+        (GenerateCallWith):
+        * testing/Internals.cpp:
+        (WebCore::Internals::parserMetaData):
+
+2019-10-22  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Add support for continuous content/commit boundary check
+        https://bugs.webkit.org/show_bug.cgi?id=203255
+        <rdar://problem/56503598>
+
+        Reviewed by Antti Koivisto.
+
+        This patch adds support for continuous content and commit boundary check.
+        
+        <span style="padding-right: 10px;">textcontent</span>
+
+        The content above forms a continuous, unbreakable run of ([container start][textcontent][container end with horizontal padding of 10px]).
+        However at this point we don't know yet whether we are at the end of the run and we need to keep checking for the trailing content.
+        In general, we can't submit the run to the line breaking unless we managed to find the commit boundary for the current run.
+
+        <span style="padding-right: 10px;">textcontent</span><img src="broken.jpg">
+            This content produces two separate runs as follows:
+            1. ([container start][textcontent][container end with horizontal padding of 10px])
+            2. ([img])
+        vs.
+        <span style="padding-right: 10px;">textcontent</span>moretextcontent
+            This content produces only one run
+            1. ([container start][textcontent][container end with horizontal padding of 10px][moretextcontent])
+
+        The idea here is that we don't commit the content on the line unless we identified the run boundary. In practice it means that we hardly commit the current inline item on the line
+        but instead we use it to decide whether the uncommitted content is ready to be committed.
+
+        Using the following example:        
+        <span style="padding-right: 10px;">textcontent<img src="broken.jpg"></span>
+        
+        Incoming inline items are:
+         [container start] -> we can't identify the run boundary -> add inline item to pending content
+         [textcontent] -> we still can't identify the run boundary sine we don't know what the next inline item is -> add inline item to pending content
+         [img] -> now we know that the [container start][textcontent] is on a commit boundary -> commit pending content -> however the current [img] item's boundary is unknown.
+         [container end with horizontal padding of 10px] -> Now the [img] and [container end] form an unbreakable run but we don't yet know if this is a run boundary
+         - End of content -> always a commit boundary -> commit pending items -> ([img][container end])  
+
+        * layout/inlineformatting/InlineLineBreaker.cpp:
+        (WebCore::Layout::LineBreaker::breakingContext):
+        (WebCore::Layout::LineBreaker::breakingContextForFloat):
+        (WebCore::Layout::LineBreaker::wordBreakingBehavior const):
+        (WebCore::Layout::LineBreaker::isAtBreakingOpportunity): Deleted.
+        * layout/inlineformatting/InlineLineBreaker.h:
+        * layout/inlineformatting/InlineLineLayout.cpp:
+        (WebCore::Layout::LineLayout::layout):
+        (WebCore::Layout::LineLayout::close):
+        (WebCore::Layout::LineLayout::placeInlineItem):
+        (WebCore::Layout::LineLayout::processUncommittedContent):
+        (WebCore::Layout::LineLayout::shouldProcessUncommittedContent const):
+        * layout/inlineformatting/InlineLineLayout.h:
+        (WebCore::Layout::LineLayout::UncommittedContent::runs):
+        (WebCore::Layout::LineLayout::UncommittedContent::runs const):
+
+2019-10-22  Dean Jackson  <dino@apple.com>
+
+        WebCoreDecompressionSession needs padding on all platforms to avoid link warnings
+        https://bugs.webkit.org/show_bug.cgi?id=203267
+        <rdar://problem/56514219>
+
+        Reviewed by Simon Fraser.
+
+        It's annoying that we have to do this, but it is less annoying than getting
+        4 linker warnings every time you compile for iOS.
+
+        * platform/graphics/cocoa/WebCoreDecompressionSession.mm:
+        (WebCore::WebCoreDecompressionSession::enqueueSample): Use padding everywhere.
+
+2019-10-22  Tim Horton  <timothy_horton@apple.com>
+
+        Make it possible to not include IPC Messages headers in other headers
+        https://bugs.webkit.org/show_bug.cgi?id=203074
+
+        Reviewed by Geoffrey Garen.
+
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/ExceptionDetails.h: Added.
+        * bindings/js/JSDOMExceptionHandling.h:
+        Split the ExceptionDetails struct out into its own file.
+
+2019-10-22  Dirk Schulze  <krit@webkit.org>
+
+        SVG2: Add bounding-box keyword to pointer-events
+        https://bugs.webkit.org/show_bug.cgi?id=191382
+
+        Reviewed by Dean Jackson.
+
+        SVG 2 added the bounding-box keyword to the pointer-events CSS
+        property. It takes the bounding box of an element as hit area.
+
+        Implemented it so that it is as if "fill" was specified for HTML.
+
+        Extended existing tests.
+
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore::CSSPrimitiveValue::operator PointerEvents const):
+        * css/CSSProperties.json:
+        * css/CSSValueKeywords.in:
+        * css/parser/CSSParserFastPaths.cpp:
+        (WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
+        * rendering/PointerEventsHitRules.cpp:
+        (WebCore::PointerEventsHitRules::PointerEventsHitRules):
+        * rendering/PointerEventsHitRules.h:
+        * rendering/style/RenderStyleConstants.h:
+        * rendering/svg/RenderSVGShape.cpp:
+        (WebCore::RenderSVGShape::nodeAtFloatPoint):
+
+2019-10-22  youenn fablet  <youenn@apple.com>
+
+        Carriage return character sometimes missing in SDP c-line
+        https://bugs.webkit.org/show_bug.cgi?id=203190
+
+        Reviewed by Eric Carlson.
+
+        Covered by updated test.
+
+        * Modules/mediastream/PeerConnectionBackend.cpp:
+        (WebCore::PeerConnectionBackend::filterSDP const):
+        Add missing\r when filterig the c line.
+
+2019-10-22  youenn fablet  <youenn@apple.com>
+
+        Remove mayHaveServiceWorkerRegisteredForOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=203055
+
+        Reviewed by Alex Christensen.
+
+        Remove ServiceWorkerProvider::mayHaveServiceWorkerRegisteredForOrigin and existingServiceWorkerConnection since they are no longer useful.
+        Creation of a service worker connection no longer requires any additional IPC once network connection is created.
+        Covered by existing tests.
+
+        * dom/Document.cpp:
+        (WebCore::Document::resume):
+        * loader/DocumentLoader.cpp:
+        (WebCore::DocumentLoader::matchRegistration):
+        (WebCore::DocumentLoader::commitData):
+        * testing/Internals.cpp:
+        (WebCore::Internals::terminateServiceWorker):
+        * testing/Internals.h:
+        * testing/Internals.idl:
+        * workers/service/SWClientConnection.h:
+        * workers/service/ServiceWorkerProvider.cpp:
+        * workers/service/ServiceWorkerProvider.h:
+        * workers/service/WorkerSWClientConnection.cpp:
+        * workers/service/WorkerSWClientConnection.h:
+
 2019-10-21  Simon Fraser  <simon.fraser@apple.com>
 
         wpt/css/css-images/gradient/color-stops-parsing.html crashes