Linking against libWPEWebKit-0.1.so is not posible when WPE is build with ENABLE_VIDE...
[WebKit-https.git] / Source / WebCore / ChangeLog
index c7f206b..eec833a 100644 (file)
@@ -1,3 +1,254 @@
+2018-09-12  Pablo Saavedra  <psaavedra@igalia.com>
+
+        Linking against libWPEWebKit-0.1.so is not posible when WPE is build with ENABLE_VIDEO=OFF and ENABLE_WEB_AUDIO=OFF
+        https://bugs.webkit.org/show_bug.cgi?id=189540
+
+        Reviewed by Philippe Normand.
+
+        Related issues:
+
+        This issue is related with changes in https://bugs.webkit.org/show_bug.cgi?id=183080
+        This issue is introduced in https://bugs.webkit.org/show_bug.cgi?id=186547
+
+        No new tests, no changes in the functionality.
+
+        * platform/GStreamer.cmake:
+        * platform/SourcesGLib.txt:
+        * platform/mediastream/libwebrtc/LibWebRTCProviderGlib.cpp:
+        (WebCore::LibWebRTCProvider::webRTCAvailable):
+
+2018-09-11  Zan Dobersek  <zdobersek@igalia.com>
+
+        Unreviewed WPE build fix.
+
+        * platform/network/soup/SocketStreamHandleImplSoup.cpp:
+        Add extra header inclusions to get this code building after the unified
+        sources system shifted it into a different translation unit.
+
+2018-09-11  Basuke Suzuki  <Basuke.Suzuki@sony.com>
+
+        [Curl] WebInspector doesn't display request headers added during processing.
+        https://bugs.webkit.org/show_bug.cgi?id=189531
+
+        Reviewed by Alex Christensen.
+
+        While processing the request, Curl port network layer adds some headers to the request
+        such as cookies. Those headers should be displayed in the WebInspector.
+
+        Tested on MiniBrowser.
+
+        * platform/network/curl/CurlRequest.cpp:
+        (WebCore::CurlRequest::didReceiveHeader):
+        (WebCore::CurlRequest::didCompleteTransfer):
+        (WebCore::CurlRequest::updateNetworkLoadMetrics):
+        * platform/network/curl/CurlRequest.h:
+
+2018-09-11  James Savage  <james.savage@apple.com>
+
+        Follow up to:
+        Expose -apple-system-container-border color to internal web views.
+        https://bugs.webkit.org/show_bug.cgi?id=189178.
+
+        Reviewed by Timothy Hatcher.
+
+        * rendering/RenderThemeMac.mm:
+        (WebCore::RenderThemeMac::systemColor const): Add a separate #if block for
+        Mojave. When I used CSSValueAppleSystemFindHighlightBackground as a template
+        for this change, I had to write out the condition in the first change, but
+        mistakenly thought I could reuse the block here. Turns out the versions were
+        different, and I could not.
+
+2018-09-11  Youenn Fablet  <youenn@apple.com>
+
+        Remove MediaDevices NoInterfaceObject
+        https://bugs.webkit.org/show_bug.cgi?id=189512
+
+        Reviewed by Alex Christensen.
+
+        Covered by rebased WPT tests.
+
+        * Modules/mediastream/MediaDevices.idl:
+
+2018-09-11  Jer Noble  <jer.noble@apple.com>
+
+        [MediaCapabilities] Implement MediaEngineConfigurationFactory registration
+        https://bugs.webkit.org/show_bug.cgi?id=189438
+
+        Reviewed by Eric Carlson.
+
+        Implement a mechanism to register platform-specific MediaEngineConfigurationFactory methods, and a mechanism to iterate
+        over those registered factories when createDecodingConfiguration() and createEncodingConfiguration() are called.
+
+        The Factory has been radically simplified; the concept of MediaEngineDecodingConfiguration
+        and MediaEngineEncodingConfiguration and its subclasess have been removed. Since the primary
+        objects representing video and audio configurations are IDLDictionaries, the native objects
+        are just structs full of POD types (and Strings). Since these have no dependencies on
+        higher-level HTML concepts, they can be moved into platform/ and accessed from there. This
+        patch also converts MediaCapabilitiesInfo to an Interface, so its implementation also can
+        become a struct and live in platform/. The MediaEngineDecodingConfigurationMock and
+        MediaEngineEncodingConfigurationMock have been consolidated in a single class which simply
+        parses MediaDecodingConfiguration and MediaEncodingConifguration objects (now that they live
+        in Platform) and return a MediaCapabilitiesInfo object (now that it does too).
+
+        * Modules/mediacapabilities/MediaCapabilities.cpp:
+        (WebCore::isValidVideoConfiguration):
+        (WebCore::MediaCapabilities::decodingInfo):
+        (WebCore::MediaCapabilities::encodingInfo):
+        * Modules/mediacapabilities/MediaCapabilitiesInfo.h: Removed.
+        * Modules/mediacapabilities/MediaCapabilitiesInfo.idl:
+        * Modules/mediacapabilities/VideoConfiguration.idl:
+        * Sources.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * platform/MediaCapabilitiesInfo.h: Copied from Source/WebCore/Modules/mediacapabilities/MediaDecodingType.h.
+        * platform/mediacapabilities/AudioConfiguration.h: Renamed from Source/WebCore/Modules/mediacapabilities/AudioConfiguration.h.
+        * platform/mediacapabilities/MediaConfiguration.h: Renamed from Source/WebCore/Modules/mediacapabilities/MediaConfiguration.h.
+        * platform/mediacapabilities/MediaDecodingConfiguration.h: Renamed from Source/WebCore/Modules/mediacapabilities/MediaDecodingConfiguration.h.
+        * platform/mediacapabilities/MediaDecodingType.h: Renamed from Source/WebCore/Modules/mediacapabilities/MediaDecodingType.h.
+        * platform/mediacapabilities/MediaEncodingConfiguration.h: Renamed from Source/WebCore/Modules/mediacapabilities/MediaEncodingConfiguration.h.
+        * platform/mediacapabilities/MediaEncodingType.h: Renamed from Source/WebCore/Modules/mediacapabilities/MediaEncodingType.h.
+        * platform/mediacapabilities/MediaEngineConfiguration.cpp: Removed.
+        * platform/mediacapabilities/MediaEngineConfiguration.h: Removed.
+        * platform/mediacapabilities/MediaEngineConfigurationFactory.cpp:
+        (WebCore::factories):
+        (WebCore::MediaEngineConfigurationFactory::createDecodingConfiguration):
+        (WebCore::MediaEngineConfigurationFactory::createEncodingConfiguration):
+        * platform/mediacapabilities/MediaEngineConfigurationFactory.h:
+        * platform/mediacapabilities/MediaEngineEncodingConfiguration.h: Removed.
+        * platform/mediacapabilities/VideoConfiguration.h: Renamed from Source/WebCore/Modules/mediacapabilities/VideoConfiguration.h.
+        * platform/mediastream/mac/DisplayCaptureSourceCocoa.h:
+        * platform/mock/MediaEngineConfigurationFactoryMock.cpp: Added.
+        (WebCore::canDecodeMedia):
+        (WebCore::canSmoothlyDecodeMedia):
+        (WebCore::canPowerEfficientlyDecodeMedia):
+        (WebCore::canEncodeMedia):
+        (WebCore::canSmoothlyEncodeMedia):
+        (WebCore::canPowerEfficientlyEncodeMedia):
+        (WebCore::MediaEngineConfigurationFactoryMock::createDecodingConfiguration):
+        (WebCore::MediaEngineConfigurationFactoryMock::createEncodingConfiguration):
+        * platform/mock/MediaEngineConfigurationFactoryMock.h: Renamed from Source/WebCore/platform/mediacapabilities/MediaEngineDecodingConfiguration.h.
+        * platform/mock/MediaEngineDecodingConfigurationMock.cpp: Removed.
+        * platform/mock/MediaEngineDecodingConfigurationMock.h: Removed.
+        * platform/mock/MediaEngineEncodingConfigurationMock.cpp: Removed.
+        * platform/mock/MediaEngineEncodingConfigurationMock.h: Removed.
+
+2018-09-08  Ryosuke Niwa  <rniwa@webkit.org>
+
+        :first-child, :last-child, :nth-child, and :nth-of-type don't work on shadow root's children
+        https://bugs.webkit.org/show_bug.cgi?id=166748
+        <rdar://problem/29649177>
+
+        Reviewed by Yusuke Suzuki.
+
+        Added the support for matching positional pseudo classes. For now, we invalidate whenever a child node
+        of a non-UA ShadowRoot is mutated instead of a fine-grained style invalidation as done for regular elements.
+
+        Tests: fast/shadow-dom/nth-node-on-shadow-child-invalidation.html
+               fast/shadow-dom/nth-node-on-shadow-child-no-jit.html
+               fast/shadow-dom/nth-node-on-shadow-child.html
+
+        * css/SelectorChecker.cpp:
+        (WebCore::SelectorChecker::checkOne const):
+        * cssjit/SelectorCompiler.cpp:
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateWalkToParentElementOrShadowRoot):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateNthChildParentCheckAndRelationUpdate):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChild):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthChildOf):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateNthLastChildParentCheckAndRelationUpdate):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthLastChild):
+        (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsNthLastChildOf):
+        * dom/ShadowRoot.cpp:
+        (WebCore::ShadowRoot::childrenChanged): Invalidate the subtree whenever a child node is mutated.
+        * dom/ShadowRoot.h:
+        * domjit/DOMJITHelpers.h:
+        (WebCore::DOMJIT::branchTestIsShadowRootFlagOnNode): Added.
+        (WebCore::DOMJIT::branchTestIsElementOrShadowRootFlagOnNode): Added.
+
+2018-09-11  Per Arne Vollan  <pvollan@apple.com>
+
+        Addressing post-review feedback on r235619.
+        https://bugs.webkit.org/show_bug.cgi?id=187925
+
+        Unreviewed.
+
+        * testing/Internals.cpp:
+        (WebCore::Internals::primaryScreenDisplayID):
+        * testing/Internals.h:
+
+2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        [macOS] [WK2] Support changing foreground colors via color panel
+        https://bugs.webkit.org/show_bug.cgi?id=189382
+        <rdar://problem/44227311>
+
+        Reviewed by Ryosuke Niwa.
+
+        Small adjustments to support changing foreground text color using NSColorPanel in WebKit2. See comments below.
+        Tested by FontManagerTests.ChangeFontColorWithColorPanel.
+
+        * editing/EditingStyle.cpp:
+        (WebCore::StyleChange::extractTextStyles):
+
+        Support setting foreground text color with alpha by using a styled span element rather than a font element with
+        attributes. To do this, only populate `StyleChange::m_applyFontColor` if the color is opaque. This is because
+        the font element does not support `rgba()` syntax, so any font colors here with alpha that are serialized to
+        `rgba()` result in a garbage value for the computed color style.
+
+        * editing/FontAttributeChanges.cpp:
+        (WebCore::FontAttributeChanges::editAction const):
+
+        Add a helper to return the relevant EditAction describing this set of FontAttributeChanges.
+
+        * editing/FontAttributeChanges.h:
+        (WebCore::FontChanges::isEmpty const):
+
+2018-09-11  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
+
+        Shrink size of ResourseResponseBase
+        https://bugs.webkit.org/show_bug.cgi?id=189501
+
+        Reviewed by Simon Fraser.
+
+        We reduce the size of ResourceResponseBase by the following two optimizations.
+
+        1. Use bitfields for bool flags and reorder them.
+
+        2. Use Markable<> in CacheControlDirectives, which is held by ResourceResponseBase.
+
+        This patch reduces the size of ResourceResponseBase from 416 to 392 bytes.
+
+        No behavior change.
+
+        * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
+        (WebCore::WebCoreAVFResourceLoader::responseReceived):
+        (WebCore::WebCoreAVFResourceLoader::fulfillRequestWithResource):
+        * platform/network/CacheValidation.h:
+        (WebCore::CacheControlDirectives::CacheControlDirectives):
+        * platform/network/ResourceResponseBase.cpp:
+        (WebCore::ResourceResponseBase::ResourceResponseBase):
+        (WebCore::ResourceResponseBase::contentRange const):
+        * platform/network/ResourceResponseBase.h:
+        (WebCore::ResourceResponseBase::decode):
+
+2018-09-11  Michael Catanzaro  <mcatanzaro@igalia.com>
+
+        Unreviewed, fix some -Wreturn-type warnings
+
+        * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
+        (WebCore::sourceFromNewReceiver):
+        * Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
+        (WebCore::toRTCRtpTransceiverDirection):
+        (WebCore::fromRTCRtpTransceiverDirection):
+
+2018-09-11  Jiewen Tan  <jiewen_tan@apple.com>
+
+        Unreviewed, a speculative build fix for r235888.
+
+        * Modules/mediastream/MediaDevices.h:
+        Add class Document forward declaration.
+
 2018-09-11  Woodrow Wang  <woodrow_wang@apple.com>
 
         Add Web API Statistics Collection