Text can wrap between hyphens and commas
[WebKit-https.git] / Source / WebCore / ChangeLog
index a896373..21a24ef 100644 (file)
+2018-05-22  Myles C. Maxfield  <mmaxfield@apple.com>
+
+        Text can wrap between hyphens and commas
+        https://bugs.webkit.org/show_bug.cgi?id=185899
+        <rdar://problem/40118983>
+
+        Reviewed by Zalan Bujtas.
+
+        Chrome, Firefox, and ICU all agree that text shouldn't wrap there.
+
+        Test: fast/text/line-break-hyphen-comma.html
+
+        * rendering/BreakLines.cpp:
+
+2018-05-22  Simon Fraser  <simon.fraser@apple.com>
+
+        Add notifyutil callbacks to dump the memory cache, and the list of live Pages and Documents
+        https://bugs.webkit.org/show_bug.cgi?id=185853
+
+        Reviewed by Keith Miller.
+
+        Add a notifyutil callback to dump the PageCache, which dumps the stats, and the list of live pages.
+        This can be invoked on iOS and macOS via "notifyutil -p com.apple.WebKit.showPageCache".
+        
+        Add a notifyutil callback that dumps the list of all Pages, and the list of all Documents, with
+        Document pointer address and URL.
+        This can be invoked on iOS and macOS via "notifyutil -p com.apple.WebKit.showAllDocuments".
+
+        * history/PageCache.cpp:
+        (WebCore::PageCache::PageCache):
+        (WebCore::PageCache::dump const):
+        * history/PageCache.h:
+        * loader/cache/CachedResource.h:
+        (WebCore::CachedResource::numberOfClients const):
+        (WebCore::CachedResource::count const): Deleted.
+        * loader/cache/MemoryCache.cpp:
+        (WebCore::MemoryCache::MemoryCache):
+        (WebCore::MemoryCache::pruneLiveResourcesToSize):
+        (WebCore::MemoryCache::dumpStats):
+        (WebCore::MemoryCache::dumpLRULists const):
+        * loader/cache/MemoryCache.h:
+        * page/mac/PageMac.mm:
+        (WebCore::Page::platformInitialize):
+
+2018-05-22  Dean Jackson  <dino@apple.com>
+
+        Optimized path zoom animation needs a valid UIImage and CGRect
+        https://bugs.webkit.org/show_bug.cgi?id=185883
+        <rdar://problem/40306056>
+
+        Build fix.
+
+        * loader/FrameLoadRequest.h:
+
+2018-05-22  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r232081.
+        https://bugs.webkit.org/show_bug.cgi?id=185895
+
+        Broke two API tests (Requested by bfulgham_ on #webkit).
+
+        Reverted changeset:
+
+        "Avoid keeping FormState alive longer than necessary"
+        https://bugs.webkit.org/show_bug.cgi?id=185877
+        https://trac.webkit.org/changeset/232081
+
+2018-05-22  Dean Jackson  <dino@apple.com>
+
+        Optimized path zoom animation needs a valid UIImage and CGRect
+        https://bugs.webkit.org/show_bug.cgi?id=185883
+        <rdar://problem/40306056>
+
+        Reviewed by Jon Lee.
+
+        Pass the bounding box of the element that was clicked onto
+        the UI process, so it can perform an animation from that spot.
+
+        This involved adding an IntRect to the ResourceRequest, and passing
+        that info into it from the HTMLAnchorElement, using a new struct
+        called SystemPreviewInfo.
+
+        * html/HTMLAnchorElement.cpp:
+        (WebCore::HTMLAnchorElement::handleClick):
+        * loader/FrameLoadRequest.cpp:
+        (WebCore::FrameLoadRequest::FrameLoadRequest):
+        * loader/FrameLoadRequest.h:
+        (WebCore::FrameLoadRequest::FrameLoadRequest):
+        (WebCore::FrameLoadRequest::isSystemPreview const):
+        (WebCore::FrameLoadRequest::systemPreviewRect const):
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::urlSelected):
+        (WebCore::FrameLoader::loadURL):
+        * loader/FrameLoader.h:
+        (WebCore::FrameLoader::urlSelected):
+        * loader/FrameLoaderTypes.h:
+        * platform/network/ResourceRequestBase.cpp:
+        (WebCore::ResourceRequestBase::systemPreviewRect const):
+        (WebCore::ResourceRequestBase::setSystemPreviewRect):
+        * platform/network/ResourceRequestBase.h:
+
+2018-05-22  Chris Dumez  <cdumez@apple.com>
+
+        [POSIX] Use access() instead of stat() in FileSystem::fileExists()
+        https://bugs.webkit.org/show_bug.cgi?id=185882
+
+        Reviewed by Geoffrey Garen.
+
+        Use access() instead of stat() in FileSystem::fileExists(). stat() returns a lot of information we
+        do not leverage and local benchmarking on macOS shows access() being > 80% faster than stat():
+        stat: 0.31567 (lower is better)
+        access: 0.16074 (lower is better)
+        stat: 0.303665 (lower is better)
+        access: 0.165468 (lower is better)
+
+        * platform/posix/FileSystemPOSIX.cpp:
+        (WebCore::FileSystem::fileExists):
+
+2018-05-22  Brent Fulgham  <bfulgham@apple.com>
+
+        Avoid keeping FormState alive longer than necessary
+        https://bugs.webkit.org/show_bug.cgi?id=185877
+        <rdar://problem/39329219>
+
+        Reviewed by Ryosuke Niwa.
+
+        A number of crash fixes were done to prevent FormState objects from being
+        accessed after their relevant Frames had been destroyed. Unfortunately, this
+        could cause the FormState to persist after the owning Frame had been
+        destroyed, resulting in nullptr dereferences.
+
+        This patch does the following:
+
+        1. Changes to use WeakPtr's for FormState objects passed to completion handlers,
+           rather than RefPtr, since those completion handlers might fire as part of
+           the clean-up process during Frame destruction. This allows us to use the FormState
+           if they are still valid, but gracefully handle cases where a form submission
+           is cancelled in-flight.
+        2. Removes some extraneous WTFMove() calls being made on bare FormState pointers.
+        3. Changes the trap from Bug 183704 so that it only fires if the FormState object
+           is being retained more than once.
+
+        * loader/DocumentLoader.cpp:
+        (WebCore::DocumentLoader::willSendRequest): Update for new CompletionHandler
+        signature.
+        * loader/FormState.cpp:
+        (WebCore::FormState::willDetachPage): Revise trap to check for retain counts
+        above one.
+        * loader/FormState.h:
+        (WebCore::FormState::weakPtrFactory const): Added.
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::loadFrameRequest): Revise to use WeakPtr for FormState
+        passed to the completion handler.
+        (WebCore::FrameLoader::loadURL): Update for new CompletionHandler signature.
+        (WebCore::FrameLoader::load): Ditto.
+        (WebCore::FrameLoader::loadWithDocumentLoader): Ditto.
+        (WebCore::FrameLoader::loadPostRequest): Ditto.
+        * loader/PolicyChecker.cpp:
+        (WebCore::PolicyChecker::checkNavigationPolicy): Revise to use WeakPtr for
+        FormState passed to the completion handler. Remove some extraneous WTFMove()
+        calls on bare pointers.
+        (WebCore::PolicyChecker::checkNewWindowPolicy): Ditto.
+        * loader/PolicyChecker.h:
+
+2018-05-22  Sihui Liu  <sihui_liu@apple.com>
+
+        Conversion between SecurityOriginData and DatabaseIdentifier is asymmetric when port is null
+        https://bugs.webkit.org/show_bug.cgi?id=185715
+
+        Reviewed by Geoffrey Garen.
+
+        Fixed the issue of null port when converting between SecurityOriginData and DatabaseIdentifier.
+
+        Test: WKWebView.LocalStorageFetchDataRecords.
+
+        * page/SecurityOriginData.cpp:
+        (WebCore::SecurityOriginData::fromDatabaseIdentifier):
+
+2018-05-22  Keith Miller  <keith_miller@apple.com>
+
+        We should have a CoW storage for NewArrayBuffer arrays.
+        https://bugs.webkit.org/show_bug.cgi?id=185003
+
+        Reviewed by Filip Pizlo.
+
+        * bindings/js/JSDOMConvertSequences.h:
+        (WebCore::Detail::NumericSequenceConverter::convertArray):
+        (WebCore::Detail::SequenceConverter::convertArray):
+
+2018-05-22  Ryan Haddad  <ryanhaddad@apple.com>
+
+        Unreviewed, rolling out r232052.
+
+        Breaks internal builds.
+
+        Reverted changeset:
+
+        "Use more C++17"
+        https://bugs.webkit.org/show_bug.cgi?id=185176
+        https://trac.webkit.org/changeset/232052
+
+2018-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [GTK] WebDriver: Network process crash when running imported/w3c/webdriver/tests/delete_cookie/delete.py::test_unknown_cookie
+        https://bugs.webkit.org/show_bug.cgi?id=185867
+
+        Reviewed by Michael Catanzaro.
+
+        We need to null check the value returned by URL::createSoupURI() before passing it to soup.
+
+        * platform/network/soup/CookieJarSoup.cpp:
+        (WebCore::setCookiesFromDOM):
+        (WebCore::cookiesForSession):
+        (WebCore::getRawCookies):
+        (WebCore::deleteCookie):
+        * platform/network/soup/NetworkStorageSessionSoup.cpp:
+        (WebCore::NetworkStorageSession::getCookies):
+
+2018-05-22  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Implement positioning for non-replaced out-of-flow elements.
+        https://bugs.webkit.org/show_bug.cgi?id=185858
+
+        Reviewed by Antti Koivisto.
+
+        In certain cases, the out-of-flow element's final position depends on the element's size.
+        Call computeOutOfFlowPosition() after width/height are resolved.
+
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::computeOutOfFlowPosition const):
+        (WebCore::Layout::FormattingContext::layoutOutOfFlowDescendants const):
+        (WebCore::Layout::FormattingContext::computeOutOfFlowNonReplacedPosition const):
+        (WebCore::Layout::FormattingContext::computeOutOfFlowReplacedPosition const):
+        * layout/FormattingContext.h:
+
+2018-05-22  Olivier Blin  <olivier.blin@softathome.com>
+
+        Fix build without MathML
+        https://bugs.webkit.org/show_bug.cgi?id=185865
+
+        Reviewed by Frédéric Wang.
+
+        Regression(r226654): [RenderTreeBuilder] Move MathML addChild logic to RenderTreeBuilder
+        https://bugs.webkit.org/show_bug.cgi?id=181443
+
+        Regression(r229694): Put the DOM in IsoHeaps
+        https://bugs.webkit.org/show_bug.cgi?id=183546
+
+        No new tests, build fix.
+
+        * mathml/MathMLUnknownElement.cpp:
+        * mathml/MathMLUnknownElement.h:
+        * rendering/updating/RenderTreeBuilder.cpp:
+        (WebCore::RenderTreeBuilder::RenderTreeBuilder):
+        (WebCore::RenderTreeBuilder::attach):
+        * rendering/updating/RenderTreeBuilder.h:
+        * rendering/updating/RenderTreeBuilderMathML.cpp:
+        * rendering/updating/RenderTreeBuilderMathML.h:
+
+2018-05-22  Yacine Bandou  <yacine.bandou_ext@softathome.com>
+
+        [GStreamer] Don't set the ReadyState to HaveNothing when an error occurs in playback pipeline
+        https://bugs.webkit.org/show_bug.cgi?id=185725
+
+        Reviewed by Philippe Normand.
+
+        The ReadyState should not be set to HaveNothing when an error occurs in playback pipeline, because
+        at least we should have the metadata in order to have an error in pipeline.
+
+        Here is the definition of HaveNothing state in W3C spec https://dev.w3.org/html5/spec-preview/media-elements.html#ready-states
+        "HAVE_NOTHING (numeric value 0): No information regarding the media resource is available. No data for the current
+        playback position is available. Media elements whose networkState attribute is NETWORK_EMPTY are always in the HAVE_NOTHING state."
+
+        In MSE case, this patch fixes the crashes of the followings WPT encrypted-media tests:
+        - clearkey-mp4-playback-temporary-clear-encrypted.https.html
+        - clearkey-mp4-playback-temporary-multikey-sequential.https.html
+        - clearkey-mp4-playback-temporary-multikey-sequential-readyState.https.html
+
+        Here is the cause of the crashes: When an error occurs in playback pipeline like no decipher key, in case of encrypted content,
+        the MediaPlayerPrivateGstreamer sets NetworkState to FormatError which causes the detachment of MediaElement from MediaSource,
+        then MediaPlayerPrivateGstreamer sets the ReadyState to HaveNothing which causes a trying again to play the same URI,
+        thus the crash occurs because the MediaElement is detached from MediaSource, see bugzilla for more details.
+        Note: these crashes should be fixed in 185242 but unfortunately it isn't the case. See bug 185242 for more details.
+
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+        (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
+
+2018-05-22  Yacine Bandou  <yacine.bandou_ext@softathome.com>
+
+        [MSE][GStreamer] Fix the deadlock caused by bug 185242 (r231351)
+        https://bugs.webkit.org/show_bug.cgi?id=185723
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        After a detailed investigation, we found that, the patch r231351 doesn't fix the crash that expected to fix,
+        it just replaces it by a deadlock. Now the crash is fixed in the bug 185725.
+
+        This Patch will remove a part of r231351 that causes the deadlock.
+
+        * platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
+        (webKitMediaSrcFreeStream):
+
+2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
+
+        Use more C++17
+        https://bugs.webkit.org/show_bug.cgi?id=185176
+
+        Reviewed by JF Bastien.
+
+        * Configurations/Base.xcconfig:
+        * DerivedSources.make:
+        * platform/ios/LegacyTileGrid.mm:
+        (WebCore::LegacyTileGrid::dropDistantTiles):
+
+2018-05-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Box::isDescendantOf() should work with out-of-flow elements.
+        https://bugs.webkit.org/show_bug.cgi?id=185812
+
+        Reviewed by Antti Koivisto.
+
+        Use the containing block chain instead of the parent chain to check for isDescendantOf().
+        (containing block is not always the direct parent)
+
+        * layout/layouttree/LayoutBox.cpp:
+        (WebCore::Layout::Box::isDescendantOf const):
+
+2018-05-21  Chris Nardi  <cnardi@chromium.org>
+
+        Remove dead exception in MediaList.appendMedium
+        https://bugs.webkit.org/show_bug.cgi?id=185278
+
+        Reviewed by Chris Dumez.
+
+        MediaList.appendMedium was able to throw an exception, but MediaQuerySet::add() always
+        returned true, making it impossible for that exception to be thrown. This matched the
+        spec, as |appendMedium| is not specified to throw an exception. Remove the dead code
+        surrounding the exception, and make MediaQuerySet::add() return false if the medium is
+        not added.
+
+        No new/modified tests as there should be no functional changes.
+
+        * css/MediaList.cpp:
+        (WebCore::MediaQuerySet::add):
+        (WebCore::MediaList::appendMedium):
+        * css/MediaList.h:
+        * css/MediaList.idl:
+
+2018-05-21  Chris Dumez  <cdumez@apple.com>
+
+        File's structured serialization should serialize lastModified attribute
+        https://bugs.webkit.org/show_bug.cgi?id=185773
+
+        Reviewed by Youenn Fablet.
+
+        Update our implementation for the stuctured serialization of a File to include
+        its lastModified attribute, as per:
+        - https://w3c.github.io/FileAPI/#file-section
+
+        No new tests, rebaselined existing test.
+
+        * bindings/js/SerializedScriptValue.cpp:
+        (WebCore::CloneSerializer::write):
+        (WebCore::CloneDeserializer::readFile):
+        * fileapi/File.cpp:
+        (WebCore::File::File):
+        * fileapi/File.h:
+
+2018-05-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Add FormattingContext::validateGeometryConstraintsAfterLayout
+        https://bugs.webkit.org/show_bug.cgi?id=185811
+
+        Reviewed by Antti Koivisto.
+
+        Also implement LayoutDescendantIterator and fix LayoutIterator.
+
+        * WebCore.xcodeproj/project.pbxproj:
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::validateGeometryConstraintsAfterLayout const):
+        * layout/FormattingContext.h:
+        * layout/blockformatting/BlockFormattingContext.cpp:
+        (WebCore::Layout::BlockFormattingContext::layout const):
+        * layout/layouttree/LayoutDescendantIterator.h: Added.
+        (WebCore::Layout::LayoutDescendantIterator<T>::LayoutDescendantIterator):
+        (WebCore::Layout::LayoutDescendantIterator<T>::operator):
+        (WebCore::Layout::LayoutDescendantIteratorAdapter<T>::LayoutDescendantIteratorAdapter):
+        (WebCore::Layout::LayoutDescendantIteratorAdapter<T>::begin):
+        (WebCore::Layout::LayoutDescendantIteratorAdapter<T>::end):
+        (WebCore::Layout::LayoutDescendantIteratorAdapter<T>::at):
+        (WebCore::Layout::descendantsOfType):
+        * layout/layouttree/LayoutIterator.h:
+        (WebCore::Layout::LayoutBoxTraversal::firstChild):
+        (WebCore::Layout::LayoutBoxTraversal::nextAncestorSibling):
+        (WebCore::Layout::LayoutBoxTraversal::next):
+        (WebCore::Layout::LayoutBoxTraversal::nextSkippingChildren):
+        (WebCore::Layout::Traversal::firstChild):
+        (WebCore::Layout::Traversal::nextSibling):
+        (WebCore::Layout::Traversal::previousSibling):
+        (WebCore::Layout::Traversal::findAncestorOfType):
+        (WebCore::Layout::Traversal::firstWithin):
+        (WebCore::Layout::Traversal::next):
+        (WebCore::Layout::LayoutIterator<T>::traversePreviousSibling):
+        (WebCore::Layout::LayoutIterator<T>::traverseAncestor):
+        (WebCore::Layout::Traversal::nextAncestorSibling): Deleted.
+        (WebCore::Layout::Traversal::nextWithin): Deleted.
+
+2018-05-21  Basuke Suzuki  <Basuke.Suzuki@sony.com>
+
+        [Curl] Bugfix for r231968, Suspend/Resume with WK2
+        https://bugs.webkit.org/show_bug.cgi?id=185830
+
+        The flags are needed to be updated even if it is cancelled or finished to cleanup correctly.
+        Also fixed trivial bug for very rare case (hard to produce the situation).
+
+        Reviewed by Youenn Fablet.
+
+        No new tests because WK2 is not ready for WinCairo yet in public., tested internaly.
+
+        * platform/network/curl/CurlRequest.cpp:
+        (WebCore::CurlRequest::suspend):
+        (WebCore::CurlRequest::resume):
+        (WebCore::CurlRequest::pausedStatusChanged):
+
+2018-05-21  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r232030.
+        https://bugs.webkit.org/show_bug.cgi?id=185850
+
+        "Caused
+        TestWebKitAPI.IndexedDB.StructuredCloneBackwardCompatibility
+        API test to fail" (Requested by cdumez on #webkit).
+
+        Reverted changeset:
+
+        "File's structured serialization should serialize lastModified
+        attribute"
+        https://bugs.webkit.org/show_bug.cgi?id=185773
+        https://trac.webkit.org/changeset/232030
+
+2018-05-21  Daniel Bates  <dabates@apple.com>
+
+        REGRESSION (r231107): CSP report-only policies are ignored for beacon, importScripts, fetch(), EventSource, and XHR
+        https://bugs.webkit.org/show_bug.cgi?id=185789
+        <rdar://problem/40380175>
+
+        Reviewed by Andy Estes.
+
+        Fixes an issue where CSP report-only policies were ignored for DocumentThreadableLoader and
+        PingLoad initiated loads as a result of moving CSP processing to NetworkProcess.
+
+        Have NetworkLoadChecker implement the ContentSecurityPolicyClient interface and support logging
+        console messages, sending CSP reports, and dispatching SecurityPolicyViolation events. To support
+        the latter we introduce a new WebPage message, EnqueueSecurityPolicyViolationEvent, to enqueue
+        a SecurityPolicyViolationEvent created from an event init dictionary on the document's event
+        dispatch queue.
+
+        Additionally, shorten the description for a ResourceError caused by CSP to "Blocked by Content Security Policy"
+        because the CSP code run in NetworkProcess can now log its more detailed error description to
+        Web Inspector.
+
+        Tests: http/tests/security/contentSecurityPolicy/connect-src-beacon-allowed.html
+               http/tests/security/contentSecurityPolicy/connect-src-beacon-blocked.html
+               http/tests/security/contentSecurityPolicy/report-only-connect-src-beacon-redirect-blocked.php
+               http/tests/security/contentSecurityPolicy/report-only-connect-src-xmlhttprequest-redirect-to-blocked.php
+
+        * WebCore.xcodeproj/project.pbxproj: Change SecurityPolicyViolationEvent.h from a project header to
+        a private header so that we can include it in WebKit code.
+        * dom/Document.cpp:
+        (WebCore::Document::enqueueSecurityPolicyViolationEvent): Added.
+        * dom/Document.h:
+
+        * dom/EventInit.h:
+        (WebCore::EventInit::encode const):
+        (WebCore::EventInit::decode
+        * dom/SecurityPolicyViolationEvent.h:
+        (WebCore::SecurityPolicyViolationEvent::Init::encode const):
+        (WebCore::SecurityPolicyViolationEvent::Init::decode):
+        Support encoding and decoding for the event.
+
+        * loader/DocumentLoader.cpp:
+        (WebCore::DocumentLoader::enqueueSecurityPolicyViolationEvent): Formerly named "dispatchSecurityPolicyViolationEvent".
+        (WebCore::DocumentLoader::dispatchSecurityPolicyViolationEvent): Deleted; renamed to "enqueueSecurityPolicyViolationEvent".
+        * loader/DocumentLoader.h:
+
+        * loader/DocumentThreadableLoader.cpp:
+        (WebCore::DocumentThreadableLoader::redirectReceived): While I am here, move the check for whether the loader
+        strategy took responsibility for performing security checks to be before we perform the CSP check to avoid doing
+        such CSP checks twice in the case that the loader strategy already did them.
+        (WebCore::DocumentThreadableLoader::didFail): Remove code that checked the CSP policy if the load failed. When
+        the loader strategy (NetworkProcess) is responsible for performing security checks then this code would never
+        be executed for a violation of a CSP report-only policy because the loader does not and should not fail the load
+        for a report-only violations. As the name implies, a report-only violation is only reported. That is, it is not
+        enforced such that the load is blocked; => fail the load.
+        (WebCore::DocumentThreadableLoader::reportContentSecurityPolicyError): Update the error description to more
+        accurately describe the error and be consistent with the error message used in NetworkProcess. This error
+        message is shown for a redirect blocked by CSP regardless of whether the redirect was to a same-origin or
+        cross-origin resource. I chose to make the error message more vague than necessary for simplicity because
+        the CSP code will log a more detailed message for this error than could ever be captured by error message
+        for the ResourceError. Also use ASCIILiteral to efficiently construct the String object for the error
+        message.
+
+        * page/csp/ContentSecurityPolicy.cpp:
+        (WebCore::ContentSecurityPolicy::reportViolation const): Build up a SecurityPolicyViolationEvent::Init and
+        pass that to the delegate to dispatch.
+        * page/csp/ContentSecurityPolicy.h: Export allowScriptFromSource() and allowChildContextFromSource() so that
+        we can call them from WebKit.
+        * page/csp/ContentSecurityPolicyClient.h: Update for renaming.
+        * platform/network/ResourceRequestBase.h: Define a new requester type to be able to differentiate a request
+        initiated by importScripts() from other requests. We use this to perform the appropriate CSP checks in NetworkProcess.
+        * workers/WorkerScriptLoader.cpp:
+        (WebCore::WorkerScriptLoader::loadSynchronously): Set the requester on the ResourceRequest to ResourceRequest::Requester::ImportScripts
+        so that we can differentiate this request from other requests. See remark for file ResourceRequestBase.h for
+        more details.
+
+2018-05-21  Chris Dumez  <cdumez@apple.com>
+
+        File's structured serialization should serialize lastModified attribute
+        https://bugs.webkit.org/show_bug.cgi?id=185773
+
+        Reviewed by Youenn Fablet.
+
+        Update our implementation for the stuctured serialization of a File to include
+        its lastModified attribute, as per:
+        - https://w3c.github.io/FileAPI/#file-section
+
+        No new tests, rebaselined existing test.
+
+        * bindings/js/SerializedScriptValue.cpp:
+        (WebCore::CloneSerializer::write):
+        (WebCore::CloneDeserializer::readFile):
+        * fileapi/File.cpp:
+        (WebCore::File::File):
+        * fileapi/File.h:
+
+2018-05-21  Jer Noble  <jer.noble@apple.com>
+
+        Complete fix for enabling modern EME by default
+        https://bugs.webkit.org/show_bug.cgi?id=185770
+        <rdar://problem/40368220>
+
+        Reviewed by Eric Carlson.
+
+        * Configurations/FeatureDefines.xcconfig:
+
+2018-05-21  Olivier Blin  <olivier.blin@softathome.com>
+
+        [CMake][WebCore] fix sqlite include dir variable
+        https://bugs.webkit.org/show_bug.cgi?id=185825
+
+        Reviewed by Konstantin Tokarev.
+
+        WebCore's CMakeLists.txt used SQLITE_INCLUDE_DIRS, but only SQLITE_INCLUDE_DIR is defined.
+
+        No new tests, build fix only.
+
+        * CMakeLists.txt: Use SQLITE_INCLUDE_DIR instead of SQLITE_INCLUDE_DIRS.
+
+2018-05-21  Olivier Blin  <olivier.blin@softathome.com>
+
+        Propagate WebCore system include dirs in WebCoreHeaderInterface
+        https://bugs.webkit.org/show_bug.cgi?id=185822
+
+        Reviewed by Michael Catanzaro.
+
+        System include directories from WebCore are not propagated anymore to its users.
+        For example gcrypt, sqlite and ICU system headers defined in PAL are not properly passed to WebKit build.
+
+        This may have been caused partly by the fix in r230385:
+        [CMake] WebKit should link to WebCore as a PRIVATE library if WebCore is a static library
+        https://bugs.webkit.org/show_bug.cgi?id=184127
+
+        No new tests, build fix.
+
+        * CMakeLists.txt:
+
+2018-05-21  Olivier Blin  <olivier.blin@softathome.com>
+
+        Fix FrameLoader build without video
+        https://bugs.webkit.org/show_bug.cgi?id=185821
+
+        Reviewed by Michael Catanzaro.
+
+        Regression(r231392): Release assert in ScriptController::canExecuteScripts via HTMLMediaElement::~HTMLMediaElement()
+        https://bugs.webkit.org/show_bug.cgi?id=185288
+
+        No new tests, build fix only.
+
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::checkCompleted): Flag HTMLMediaElement::isRunningDestructor() usage.
+
+2018-05-21  Sam Weinig  <sam@webkit.org>
+
+        Modernize RenderStyleConstants.h - Part 1
+        https://bugs.webkit.org/show_bug.cgi?id=185809
+
+        Reviewed by Yusuke Suzuki.
+            
+        Modernized the first set of enums in RenderStyleConstants.h by:
+            - Converting them to enum classes
+            - Renaming them to remove unnecessary prefix 'E's
+            - Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal)
+            - Renaming to match modern conventions (e.g BNONE -> None)
+            - Reformatting them so that each value is on its own line.
+
+        Modernizes the following enums:
+            PrintColorAdjust
+            StyleDifference
+            StyleDifferenceContextSensitiveProperty
+            ColumnFill
+            ColumnSpan
+            BorderCollapse (renamed from EBorderCollapse)
+            BorderStyle (renamed from EBorderStyle)
+            BorderPrecedence (renamed from EBorderPrecedence)
+            OutlineIsAuto
+            PositionType (renamed from EPosition)
+            Float (renamed from EFloat)
+            MarginCollapse (renamed from EMarginCollapse)
+            BoxDecorationBreak (renamed from EBoxDecorationBreak)
+            BoxSizing (renamed from EBoxSizing)
+            Overflow (renamed from EOverflow)
+            VerticalAlign (renamed from EVerticalAlign)
+            Clear (renamed from EClear)
+            TableLayoutType (renamed from ETableLayout)
+            TextCombine
+            FillAttachment (renamed from EFillAttachment)
+            FillBox (renamed from EFillBox)
+            FillRepeat (renamed from EFillRepeat)
+            FillLayerType (renamed from EFillLayerType)
+            FillSizeType (renamed from EFillSizeType)
+            MaskSourceType (renamed from EMaskSourceType)
+            BoxPack (renamed from EBoxPack)
+            BoxAlignment (renamed from EBoxAlignment)
+            BoxOrient (renamed from EBoxOrient)
+            BoxLines (renamed from EBoxLines)
+            BoxDirection (renamed from EBoxDirection)
+            AlignContent (renamed from EAlignContent)
+            FlexDirection (renamed from EFlexDirection)
+            FlexWrap (renamed from EFlexWrap)
+            ItemPosition
+            OverflowAlignment
+            ItemPositionType
+            ContentPosition
+            ContentDistribution (renamed from ContentDistributionType)
+            TextSecurity (renamed from ETextSecurity)
+            UserModify (renamed from EUserModify)
+            UserDrag (renamed from EUserDrag)
+            UserSelect (renamed from EUserSelect)
+            ObjectFit
+            AspectRatioType
+            WordBreak (renamed from EWordBreak)
+            OverflowWrap (renamed from EOverflowWrap)
+            NBSPMode (renamed from ENBSPMode)
+            LineBreak
+            Resize (renamed from EResize)
+            QuoteType
+            TransformStyle3D (renamed from ETransformStyle3D)
+            BackfaceVisibility (renamed from EBackfaceVisibility)
+            LineClamp (renamed from ELineClamp)
+            TextOverflow
+            ImageRendering (renamed from EImageRendering)
+            TextIndentLine
+            TextIndentType
+            Isolation
+
+        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+        (AXAttributeStringSetStyle):
+        * css/BasicShapeFunctions.cpp:
+        (WebCore::valueForCenterCoordinate):
+        (WebCore::valueForBasicShape):
+        * css/CSSComputedStyleDeclaration.cpp:
+        (WebCore::sizingBox):
+        (WebCore::fillRepeatToCSSValue):
+        (WebCore::fillSourceTypeToCSSValue):
+        (WebCore::fillSizeToCSSValue):
+        (WebCore::valueForItemPositionWithOverflowAlignment):
+        (WebCore::valueForContentPositionAndDistributionWithOverflowAlignment):
+        (WebCore::ComputedStyleExtractor::valueForPropertyinStyle):
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::operator LineClampValue const):
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore::CSSPrimitiveValue::operator ColumnFill const):
+        (WebCore::CSSPrimitiveValue::operator ColumnSpan const):
+        (WebCore::CSSPrimitiveValue::operator PrintColorAdjust const):
+        (WebCore::CSSPrimitiveValue::operator BorderStyle const):
+        (WebCore::CSSPrimitiveValue::operator OutlineIsAuto const):
+        (WebCore::CSSPrimitiveValue::operator BackfaceVisibility const):
+        (WebCore::CSSPrimitiveValue::operator FillAttachment const):
+        (WebCore::CSSPrimitiveValue::operator FillBox const):
+        (WebCore::CSSPrimitiveValue::operator FillRepeat const):
+        (WebCore::CSSPrimitiveValue::operator BoxPack const):
+        (WebCore::CSSPrimitiveValue::operator BoxAlignment const):
+        (WebCore::CSSPrimitiveValue::operator BoxDecorationBreak const):
+        (WebCore::CSSPrimitiveValue::operator BoxSizing const):
+        (WebCore::CSSPrimitiveValue::operator BoxDirection const):
+        (WebCore::CSSPrimitiveValue::operator BoxLines const):
+        (WebCore::CSSPrimitiveValue::operator BoxOrient const):
+        (WebCore::CSSPrimitiveValue::operator Clear const):
+        (WebCore::CSSPrimitiveValue::operator FlexDirection const):
+        (WebCore::CSSPrimitiveValue::operator AlignContent const):
+        (WebCore::CSSPrimitiveValue::operator FlexWrap const):
+        (WebCore::CSSPrimitiveValue::operator Float const):
+        (WebCore::CSSPrimitiveValue::operator LineBreak const):
+        (WebCore::CSSPrimitiveValue::operator MarginCollapse const):
+        (WebCore::CSSPrimitiveValue::operator NBSPMode const):
+        (WebCore::CSSPrimitiveValue::operator Overflow const):
+        (WebCore::CSSPrimitiveValue::operator PositionType const):
+        (WebCore::CSSPrimitiveValue::operator Resize const):
+        (WebCore::CSSPrimitiveValue::operator TableLayoutType const):
+        (WebCore::CSSPrimitiveValue::operator TextSecurity const):
+        (WebCore::CSSPrimitiveValue::operator UserDrag const):
+        (WebCore::CSSPrimitiveValue::operator UserModify const):
+        (WebCore::CSSPrimitiveValue::operator UserSelect const):
+        (WebCore::CSSPrimitiveValue::operator VerticalAlign const):
+        (WebCore::CSSPrimitiveValue::operator WordBreak const):
+        (WebCore::CSSPrimitiveValue::operator OverflowWrap const):
+        (WebCore::CSSPrimitiveValue::operator TextCombine const):
+        (WebCore::CSSPrimitiveValue::operator TextOverflow const):
+        (WebCore::CSSPrimitiveValue::operator ObjectFit const):
+        (WebCore::CSSPrimitiveValue::operator Isolation const):
+        (WebCore::CSSPrimitiveValue::operator BorderCollapse const):
+        (WebCore::CSSPrimitiveValue::operator ImageRendering const):
+        (WebCore::CSSPrimitiveValue::operator TransformStyle3D const):
+        (WebCore::CSSPrimitiveValue::operator ItemPosition const):
+        (WebCore::CSSPrimitiveValue::operator OverflowAlignment const):
+        (WebCore::CSSPrimitiveValue::operator ContentPosition const):
+        (WebCore::CSSPrimitiveValue::operator ContentDistribution const):
+        (WebCore::CSSPrimitiveValue::operator EBorderStyle const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBackfaceVisibility const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFillAttachment const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFillBox const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFillRepeat const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxPack const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxAlignment const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxDecorationBreak const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxSizing const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxDirection const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxLines const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBoxOrient const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EClear const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFlexDirection const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EAlignContent const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFlexWrap const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EFloat const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EMarginCollapse const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator ENBSPMode const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EOverflow const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EPosition const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EResize const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator ETableLayout const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator ETextSecurity const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EUserDrag const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EUserModify const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EUserSelect const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EVerticalAlign const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EWordBreak const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EOverflowWrap const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EBorderCollapse const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator EImageRendering const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator ETransformStyle3D const): Deleted.
+        (WebCore::CSSPrimitiveValue::operator ContentDistributionType const): Deleted.
+        * css/CSSProperties.json:
+        * css/CSSToStyleMap.cpp:
+        (WebCore::CSSToStyleMap::mapFillAttachment):
+        (WebCore::CSSToStyleMap::mapFillSize):
+        (WebCore::CSSToStyleMap::mapFillMaskSourceType):
+        * css/CSSValueKeywords.in:
+        * css/StyleBuilderConverter.h:
+        (WebCore::StyleBuilderConverter::convertResize):
+        (WebCore::StyleBuilderConverter::convertSelfOrDefaultAlignmentData):
+        * css/StyleBuilderCustom.h:
+        (WebCore::StyleBuilderCustom::applyValueTextIndent):
+        (WebCore::StyleBuilderCustom::applyInheritWebkitAspectRatio):
+        (WebCore::StyleBuilderCustom::applyValueWebkitAspectRatio):
+        (WebCore::StyleBuilderCustom::applyValueContent):
+        * css/StyleResolver.cpp:
+        (WebCore::isScrollableOverflow):
+        (WebCore::StyleResolver::adjustRenderStyle):
+        * css/StyleResolver.h:
+        * css/makeprop.pl:
+        (getFillLayerType):
+        * dom/Element.h:
+        * dom/Node.cpp:
+        (WebCore::computeEditabilityFromComputedStyle):
+        (WebCore::Node::canStartSelection const):
+        * dom/Position.cpp:
+        (WebCore::Position::nodeIsUserSelectNone):
+        (WebCore::Position::nodeIsUserSelectAll):
+        * dom/Range.cpp:
+        (WebCore::Range::collectSelectionRectsWithoutUnionInteriorLines const):
+        * editing/ApplyBlockElementCommand.cpp:
+        (WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded):
+        * editing/DeleteSelectionCommand.cpp:
+        (WebCore::DeleteSelectionCommand::doApply):
+        * editing/Editing.cpp:
+        (WebCore::isSpecialHTMLElement):
+        * editing/EditorCommand.cpp:
+        (WebCore::verticalScrollDistance):
+        * editing/ReplaceSelectionCommand.cpp:
+        (WebCore::ReplaceSelectionCommand::doApply):
+        * editing/SimplifyMarkupCommand.cpp:
+        (WebCore::SimplifyMarkupCommand::doApply):
+        * editing/VisibleUnits.cpp:
+        (WebCore::backwardSearchForBoundaryWithTextIterator):
+        (WebCore::forwardSearchForBoundaryWithTextIterator):
+        * editing/cocoa/EditorCocoa.mm:
+        (WebCore::Editor::fontAttributesForSelectionStart const):
+        * editing/cocoa/HTMLConverter.mm:
+        (WebCore::editingAttributedStringFromRange):
+        * html/HTMLInputElement.cpp:
+        (WebCore::HTMLInputElement::shouldTruncateText const):
+        (WebCore::HTMLInputElement::createInnerTextStyle):
+        * html/HTMLTextFormControlElement.cpp:
+        (WebCore::HTMLTextFormControlElement::adjustInnerTextStyle const):
+        * html/shadow/SliderThumbElement.cpp:
+        (WebCore::RenderSliderContainer::layout):
+        * html/shadow/TextControlInnerElements.cpp:
+        (WebCore::TextControlInnerContainer::resolveCustomStyle):
+        (WebCore::TextControlInnerElement::resolveCustomStyle):
+        (WebCore::TextControlPlaceholderElement::resolveCustomStyle):
+        * layout/displaytree/DisplayBox.cpp:
+        (WebCore::Display::Box::borderBox const):
+        (WebCore::Display::Box::contentBox const):
+        * layout/displaytree/DisplayBox.h:
+        * layout/layouttree/LayoutBox.cpp:
+        (WebCore::Layout::Box::isRelativelyPositioned const):
+        (WebCore::Layout::Box::isStickyPositioned const):
+        (WebCore::Layout::Box::isAbsolutelyPositioned const):
+        (WebCore::Layout::Box::isFixedPositioned const):
+        (WebCore::Layout::Box::isFloatingPositioned const):
+        (WebCore::Layout::Box::isOverflowVisible const):
+        * page/DragController.cpp:
+        (WebCore::DragController::draggableElement const):
+        * page/Frame.cpp:
+        (WebCore::Frame::rangeForPoint):
+        * page/FrameView.cpp:
+        (WebCore::paginationModeForRenderStyle):
+        (WebCore::FrameView::applyOverflowToViewport):
+        (WebCore::FrameView::applyPaginationToViewport):
+        (WebCore::FrameView::calculateScrollbarModesForLayout):
+        (WebCore::FrameView::calculateExtendedBackgroundMode const):
+        (WebCore::FrameView::adjustScrollStepForFixedContent):
+        * page/SpatialNavigation.cpp:
+        (WebCore::canScrollInDirection):
+        (WebCore::canBeScrolledIntoView):
+        * page/ios/FrameIOS.mm:
+        (WebCore::Frame::nodeRespondingToScrollWheelEvents):
+        * page/mac/EventHandlerMac.mm:
+        (WebCore::scrolledToEdgeInDominantDirection):
+        * rendering/BorderEdge.cpp:
+        (WebCore::BorderEdge::BorderEdge):
+        (WebCore::BorderEdge::obscuresBackgroundEdge const):
+        (WebCore::BorderEdge::obscuresBackground const):
+        * rendering/BorderEdge.h:
+        (WebCore::BorderEdge::style const):
+        (WebCore::BorderEdge::hasVisibleColorAndStyle const):
+        * rendering/FlexibleBoxAlgorithm.h:
+        (WebCore::FlexLayoutAlgorithm::isMultiline const):
+        * rendering/FloatingObjects.cpp:
+        (WebCore::FloatingObject::FloatingObject):
+        * rendering/GridTrackSizingAlgorithm.cpp:
+        (WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
+        (WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
+        * rendering/HitTestResult.cpp:
+        (WebCore::HitTestResult::innerTextIfTruncated const):
+        * rendering/ImageQualityController.cpp:
+        (WebCore::ImageQualityController::interpolationQualityFromStyle):
+        * rendering/InlineBox.h:
+        (WebCore::InlineBox::verticalAlign const):
+        * rendering/InlineFlowBox.cpp:
+        (WebCore::InlineFlowBox::addToLine):
+        (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
+        (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
+        (WebCore::InlineFlowBox::computeLogicalBoxHeights):
+        (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+        (WebCore::InlineFlowBox::paintFillLayer):
+        * rendering/LogicalSelectionOffsetCaches.h:
+        (WebCore::LogicalSelectionOffsetCaches::containingBlockInfo const):
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::removePositionedObjectsIfNeeded):
+        (WebCore::RenderBlock::styleDidChange):
+        (WebCore::RenderBlock::isSelfCollapsingBlock const):
+        (WebCore::RenderBlock::addOverflowFromPositionedObjects):
+        (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
+        (WebCore::RenderBlock::isSelectionRoot const):
+        (WebCore::RenderBlock::selectionGaps):
+        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
+        (WebCore::RenderBlock::adjustBorderBoxLogicalHeightForBoxSizing const):
+        (WebCore::RenderBlock::adjustContentBoxLogicalHeightForBoxSizing const):
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::MarginInfo::MarginInfo):
+        (WebCore::RenderBlockFlow::willCreateColumns const):
+        (WebCore::RenderBlockFlow::marginOffsetForSelfCollapsingBlock):
+        (WebCore::RenderBlockFlow::clearFloatsIfNeeded):
+        (WebCore::RenderBlockFlow::marginBeforeEstimateForChild const):
+        (WebCore::RenderBlockFlow::setMustDiscardMarginBefore):
+        (WebCore::RenderBlockFlow::setMustDiscardMarginAfter):
+        (WebCore::RenderBlockFlow::mustDiscardMarginBefore const):
+        (WebCore::RenderBlockFlow::mustDiscardMarginAfter const):
+        (WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild const):
+        (WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild const):
+        (WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild const):
+        (WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild const):
+        (WebCore::RenderBlockFlow::styleDidChange):
+        (WebCore::RenderBlockFlow::styleWillChange):
+        (WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
+        (WebCore::RenderBlockFlow::positionNewFloats):
+        (WebCore::RenderBlockFlow::clearFloats):
+        (WebCore::RenderBlockFlow::getClearDelta):
+        (WebCore::RenderBlockFlow::inlineBlockBaseline const):
+        (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
+        * rendering/RenderBlockFlow.h:
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::expansionBehaviorForInlineTextBox):
+        (WebCore::isCollapsibleSpace):
+        (WebCore::RenderBlockFlow::layoutRunsAndFloats):
+        (WebCore::RenderBlockFlow::layoutLineBoxes):
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::styleWillChange):
+        (WebCore::RenderBox::styleDidChange):
+        (WebCore::RenderBox::updateFromStyle):
+        (WebCore::RenderBox::includeVerticalScrollbarSize const):
+        (WebCore::RenderBox::includeHorizontalScrollbarSize const):
+        (WebCore::RenderBox::intrinsicScrollbarLogicalWidth const):
+        (WebCore::RenderBox::hasVerticalScrollbarWithAutoBehavior const):
+        (WebCore::RenderBox::hasHorizontalScrollbarWithAutoBehavior const):
+        (WebCore::RenderBox::adjustBorderBoxLogicalWidthForBoxSizing const):
+        (WebCore::RenderBox::adjustBorderBoxLogicalHeightForBoxSizing const):
+        (WebCore::RenderBox::adjustContentBoxLogicalWidthForBoxSizing const):
+        (WebCore::RenderBox::adjustContentBoxLogicalHeightForBoxSizing const):
+        (WebCore::RenderBox::backgroundIsKnownToBeOpaqueInRect const):
+        (WebCore::isCandidateForOpaquenessTest):
+        (WebCore::RenderBox::foregroundIsKnownToBeOpaqueInRect const):
+        (WebCore::RenderBox::backgroundHasOpaqueTopLayer const):
+        (WebCore::RenderBox::computeRectForRepaint const):
+        (WebCore::RenderBox::computeLogicalWidthInFragment const):
+        (WebCore::RenderBox::columnFlexItemHasStretchAlignment const):
+        (WebCore::RenderBox::isStretchingColumnFlexItem const):
+        (WebCore::RenderBox::hasStretchedLogicalWidth const):
+        (WebCore::RenderBox::sizesLogicalWidthToFitContent const):
+        (WebCore::RenderBox::computeLogicalHeight const):
+        (WebCore::RenderBox::computeIntrinsicLogicalContentHeightUsing const):
+        (WebCore::RenderBox::createsNewFormattingContext const):
+        * rendering/RenderBox.h:
+        (WebCore::RenderBox::scrollsOverflowX const):
+        (WebCore::RenderBox::scrollsOverflowY const):
+        (WebCore::RenderBox::selfAlignmentNormalBehavior const):
+        * rendering/RenderBoxModelObject.cpp:
+        (WebCore::RenderBoxModelObject::paintFillLayerExtended):
+        (WebCore::RenderBoxModelObject::calculateFillTileSize const):
+        (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry const):
+        (WebCore::styleRequiresClipPolygon):
+        (WebCore::borderStyleFillsBorderArea):
+        (WebCore::borderStyleHasInnerDetail):
+        (WebCore::borderStyleIsDottedOrDashed):
+        (WebCore::borderStyleHasUnmatchedColorsAtCorner):
+        (WebCore::borderStylesRequireMitre):
+        (WebCore::RenderBoxModelObject::paintBorder):
+        (WebCore::RenderBoxModelObject::drawBoxSideFromPath):
+        (WebCore::RenderBoxModelObject::boxShadowShouldBeAppliedToBackground const):
+        * rendering/RenderBoxModelObject.h:
+        * rendering/RenderDeprecatedFlexibleBox.cpp:
+        (WebCore::FlexBoxIterator::FlexBoxIterator):
+        (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
+        (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
+        (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
+        * rendering/RenderDeprecatedFlexibleBox.h:
+        * rendering/RenderElement.cpp:
+        (WebCore::RenderElement::adjustStyleDifference const):
+        (WebCore::RenderElement::shouldRepaintForStyleDifference const):
+        (WebCore::RenderElement::initializeStyle):
+        (WebCore::RenderElement::setStyle):
+        (WebCore::RenderElement::didAttachChild):
+        (WebCore::RenderElement::propagateStyleToAnonymousChildren):
+        (WebCore::RenderElement::styleWillChange):
+        (WebCore::RenderElement::styleDidChange):
+        (WebCore::mustRepaintFillLayers):
+        (WebCore::RenderElement::selectionColor const):
+        (WebCore::RenderElement::selectionBackgroundColor const):
+        (WebCore::RenderElement::drawLineForBoxSide const):
+        (WebCore::RenderElement::paintFocusRing):
+        (WebCore::RenderElement::paintOutline):
+        (WebCore::RenderElement::updateOutlineAutoAncestor):
+        (WebCore::includeNonFixedHeight):
+        * rendering/RenderElement.h:
+        (WebCore::RenderElement::hasHiddenBackface const):
+        (WebCore::RenderElement::canContainAbsolutelyPositionedObjects const):
+        * rendering/RenderFlexibleBox.cpp:
+        (WebCore::RenderFlexibleBox::firstLineBaseline const):
+        (WebCore::contentAlignmentNormalBehavior):
+        (WebCore::RenderFlexibleBox::styleDidChange):
+        (WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems):
+        (WebCore::RenderFlexibleBox::isLeftToRightFlow const):
+        (WebCore::RenderFlexibleBox::isMultiline const):
+        (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
+        (WebCore::RenderFlexibleBox::crossSizeForPercentageResolution):
+        (WebCore::initialJustifyContentOffset):
+        (WebCore::justifyContentSpaceBetweenChildren):
+        (WebCore::alignmentOffset):
+        (WebCore::RenderFlexibleBox::staticMainAxisPositionForPositionedChild):
+        (WebCore::RenderFlexibleBox::staticCrossAxisPositionForPositionedChild):
+        (WebCore::RenderFlexibleBox::alignmentForChild const):
+        (WebCore::RenderFlexibleBox::needToStretchChildLogicalHeight const):
+        (WebCore::RenderFlexibleBox::mainAxisOverflowForChild const):
+        (WebCore::RenderFlexibleBox::crossAxisOverflowForChild const):
+        (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
+        (WebCore::RenderFlexibleBox::layoutColumnReverse):
+        (WebCore::initialAlignContentOffset):
+        (WebCore::alignContentSpaceBetweenChildren):
+        (WebCore::RenderFlexibleBox::alignFlexLines):
+        (WebCore::RenderFlexibleBox::alignChildren):
+        * rendering/RenderFlexibleBox.h:
+        * rendering/RenderFragmentContainer.cpp:
+        (WebCore::RenderFragmentContainer::overflowRectForFragmentedFlowPortion):
+        * rendering/RenderFullScreen.cpp:
+        (WebCore::createFullScreenStyle):
+        * rendering/RenderFullScreen.h:
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::selfAlignmentChangedToStretch const):
+        (WebCore::RenderGrid::selfAlignmentChangedFromStretch const):
+        (WebCore::RenderGrid::styleDidChange):
+        (WebCore::contentAlignmentNormalBehaviorGrid):
+        (WebCore::computeOverflowAlignmentOffset):
+        (WebCore::RenderGrid::isInlineBaselineAlignedChild const):
+        (WebCore::RenderGrid::columnAxisPositionForChild const):
+        (WebCore::RenderGrid::rowAxisPositionForChild const):
+        (WebCore::RenderGrid::resolveAutoStartGridPosition const):
+        (WebCore::RenderGrid::resolveAutoEndGridPosition const):
+        (WebCore::resolveContentDistributionFallback):
+        (WebCore::contentDistributionOffset):
+        (WebCore::RenderGrid::computeContentPositionAndDistributionOffset const):
+        * rendering/RenderGrid.h:
+        * rendering/RenderIFrame.cpp:
+        (WebCore::RenderIFrame::requiresLayer const):
+        * rendering/RenderImage.cpp:
+        (WebCore::RenderImage::styleDidChange):
+        (WebCore::RenderImage::foregroundIsKnownToBeOpaqueInRect const):
+        * rendering/RenderInline.cpp:
+        (WebCore::RenderInline::styleWillChange):
+        (WebCore::RenderInline::updateAlwaysCreateLineBoxes):
+        (WebCore::RenderInline::paintOutline):
+        (WebCore::RenderInline::paintOutlineForLine):
+        * rendering/RenderLayer.cpp:
+        (WebCore::isContainerForPositioned):
+        (WebCore::RenderLayer::enclosingAncestorForPosition const):
+        (WebCore::accumulateOffsetTowardsAncestor):
+        (WebCore::RenderLayer::canResize const):
+        (WebCore::RenderLayer::resize):
+        (WebCore::RenderLayer::scrollCornerRect const):
+        (WebCore::resizerCornerRect):
+        (WebCore::RenderLayer::hasOverflowControls const):
+        (WebCore::styleRequiresScrollbar):
+        (WebCore::styleDefinesAutomaticScrollbar):
+        (WebCore::RenderLayer::updateScrollbarsAfterLayout):
+        (WebCore::RenderLayer::paintResizer):
+        (WebCore::RenderLayer::hitTestOverflowControls):
+        (WebCore::RenderLayer::hitTestLayer):
+        (WebCore::RenderLayer::calculateClipRects const):
+        * rendering/RenderLayer.h:
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::RenderLayerBacking::updateGeometry):
+        (WebCore::canDirectlyCompositeBackgroundBackgroundImage):
+        (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer const):
+        (WebCore::backgroundRectForBox):
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::isScrollableOverflow):
+        (WebCore::styleChangeRequiresLayerRebuild):
+        (WebCore::RenderLayerCompositor::layerStyleChanged):
+        (WebCore::RenderLayerCompositor::reasonsForCompositing const):
+        (WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility const):
+        (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const):
+        (WebCore::RenderLayerCompositor::isViewportConstrainedFixedOrStickyLayer const):
+        (WebCore::RenderLayerCompositor::requiresCompositingForPosition const):
+        (WebCore::RenderLayerCompositor::layerHas3DContent const):
+        (WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
+        * rendering/RenderLayerModelObject.cpp:
+        (WebCore::RenderLayerModelObject::styleWillChange):
+        * rendering/RenderMenuList.cpp:
+        (WebCore::RenderMenuList::adjustInnerStyle):
+        * rendering/RenderMultiColumnFlow.cpp:
+        (WebCore::RenderMultiColumnFlow::isColumnSpanningDescendant const):
+        * rendering/RenderMultiColumnSet.cpp:
+        (WebCore::RenderMultiColumnSet::requiresBalancing const):
+        (WebCore::RenderMultiColumnSet::paintColumnRules):
+        * rendering/RenderMultiColumnSpannerPlaceholder.cpp:
+        (WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous):
+        * rendering/RenderObject.cpp:
+        (WebCore::RenderObject::propagateRepaintToParentWithOutlineAutoIfNeeded const):
+        (WebCore::containerForElement):
+        (WebCore::RenderObject::calculateBorderStyleColor):
+        * rendering/RenderObject.h:
+        (WebCore::RenderObject::isFixedPositioned const):
+        (WebCore::RenderObject::isAbsolutelyPositioned const):
+        (WebCore::RenderObject::setPositionState):
+        (WebCore::RenderObject::RenderObjectBitfields::setPositionedState):
+        (WebCore::RenderObject::RenderObjectBitfields::clearPositionedState):
+        * rendering/RenderQuote.cpp:
+        (WebCore::RenderQuote::styleDidChange):
+        (WebCore::RenderQuote::computeText const):
+        (WebCore::RenderQuote::isOpen const):
+        * rendering/RenderReplaced.cpp:
+        (WebCore::RenderReplaced::layout):
+        (WebCore::RenderReplaced::setNeedsLayoutIfNeededAfterIntrinsicSizeChange):
+        (WebCore::RenderReplaced::replacedContentRect const):
+        * rendering/RenderScrollbarPart.cpp:
+        (WebCore::RenderScrollbarPart::styleDidChange):
+        * rendering/RenderTable.cpp:
+        (WebCore::RenderTable::styleDidChange):
+        (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
+        (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
+        (WebCore::RenderTable::calcBorderStart const):
+        (WebCore::RenderTable::calcBorderEnd const):
+        (WebCore::RenderTable::outerBorderBefore const):
+        (WebCore::RenderTable::outerBorderAfter const):
+        (WebCore::RenderTable::outerBorderStart const):
+        (WebCore::RenderTable::outerBorderEnd const):
+        * rendering/RenderTable.h:
+        (WebCore::RenderTable::collapseBorders const):
+        * rendering/RenderTableCell.cpp:
+        (WebCore::RenderTableCell::computeIntrinsicPadding):
+        (WebCore::RenderTableCell::styleDidChange):
+        (WebCore::compareBorders):
+        (WebCore::chooseBorder):
+        (WebCore::emptyBorder):
+        (WebCore::RenderTableCell::computeCollapsedStartBorder const):
+        (WebCore::RenderTableCell::computeCollapsedEndBorder const):
+        (WebCore::RenderTableCell::computeCollapsedBeforeBorder const):
+        (WebCore::RenderTableCell::computeCollapsedAfterBorder const):
+        (WebCore::CollapsedBorders::addBorder):
+        (WebCore::RenderTableCell::paintCollapsedBorders):
+        (WebCore::RenderTableCell::scrollbarsChanged):
+        * rendering/RenderTableCell.h:
+        (WebCore::RenderTableCell::logicalHeightForRowSizing const):
+        (WebCore::RenderTableCell::isBaselineAligned const):
+        * rendering/RenderTableRow.cpp:
+        (WebCore::RenderTableRow::styleDidChange):
+        * rendering/RenderTableSection.cpp:
+        (WebCore::RenderTableSection::calcOuterBorderBefore const):
+        (WebCore::RenderTableSection::calcOuterBorderAfter const):
+        (WebCore::RenderTableSection::calcOuterBorderStart const):
+        (WebCore::RenderTableSection::calcOuterBorderEnd const):
+        (WebCore::RenderTableSection::paintRowGroupBorder):
+        (WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
+        (WebCore::RenderTableSection::cachedCollapsedBorder):
+        * rendering/RenderTableSection.h:
+        * rendering/RenderText.cpp:
+        (WebCore::RenderText::styleDidChange):
+        (WebCore::RenderText::absoluteQuadsClippedToEllipsis const):
+        (WebCore::isSpaceAccordingToStyle):
+        (WebCore::mapLineBreakToIteratorMode):
+        (WebCore::RenderText::computePreferredLogicalWidths):
+        (WebCore::RenderText::setRenderedText):
+        (WebCore::RenderText::textWithoutConvertingBackslashToYenSymbol const):
+        (WebCore::RenderText::momentarilyRevealLastTypedCharacter):
+        * rendering/RenderTextControl.cpp:
+        (WebCore::RenderTextControl::computeLogicalHeight const):
+        * rendering/RenderTextControlSingleLine.cpp:
+        (WebCore::RenderTextControlSingleLine::styleDidChange):
+        * rendering/RenderTheme.cpp:
+        (WebCore::RenderTheme::extractControlStatesForRenderer const):
+        * rendering/RenderThemeIOS.mm:
+        (WebCore::adjustInputElementButtonStyle):
+        * rendering/RenderThemeMac.mm:
+        (WebCore::RenderThemeMac::updateFocusedState):
+        (WebCore::RenderThemeMac::paintCellAndSetFocusedElementNeedsRepaintIfNecessary):
+        (WebCore::RenderThemeMac::adjustSearchFieldStyle const):
+        * rendering/RenderTreeAsText.cpp:
+        (WebCore::printBorderStyle):
+        * rendering/RenderVideo.cpp:
+        (WebCore::RenderVideo::updatePlayer):
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::RenderView):
+        (WebCore::rendererObscuresBackground):
+        * rendering/RootInlineBox.cpp:
+        (WebCore::RootInlineBox::verticalPositionForBox):
+        * rendering/SimpleLineLayout.cpp:
+        (WebCore::SimpleLineLayout::canUseForStyle):
+        (WebCore::SimpleLineLayout::canUseForWithReason):
+        * rendering/SimpleLineLayoutTextFragmentIterator.cpp:
+        (WebCore::SimpleLineLayout::TextFragmentIterator::Style::Style):
+        * rendering/TextPaintStyle.cpp:
+        (WebCore::computeTextPaintStyle):
+        * rendering/line/BreakingContext.h:
+        (WebCore::BreakingContext::handleBR):
+        (WebCore::shouldAddBorderPaddingMargin):
+        (WebCore::BreakingContext::handleText):
+        (WebCore::BreakingContext::optimalLineBreakLocationForTrailingWord):
+        * rendering/line/LineBreaker.cpp:
+        (WebCore::LineBreaker::reset):
+        * rendering/line/LineBreaker.h:
+        (WebCore::LineBreaker::clear):
+        * rendering/line/LineInlineHeaders.h:
+        (WebCore::skipNonBreakingSpace):
+        * rendering/line/LineWidth.cpp:
+        (WebCore::requiresIndent):
+        * rendering/style/BorderData.h:
+        (WebCore::BorderData::borderLeftWidth const):
+        (WebCore::BorderData::borderRightWidth const):
+        (WebCore::BorderData::borderTopWidth const):
+        (WebCore::BorderData::borderBottomWidth const):
+        * rendering/style/BorderValue.h:
+        (WebCore::BorderValue::BorderValue):
+        (WebCore::BorderValue::nonZero const):
+        (WebCore::BorderValue::isVisible const):
+        (WebCore::BorderValue::style const):
+        * rendering/style/CollapsedBorderValue.h:
+        (WebCore::CollapsedBorderValue::CollapsedBorderValue):
+        (WebCore::CollapsedBorderValue::width const):
+        (WebCore::CollapsedBorderValue::style const):
+        (WebCore::CollapsedBorderValue::exists const):
+        (WebCore::CollapsedBorderValue::precedence const):
+        * rendering/style/FillLayer.cpp:
+        (WebCore::FillLayer::FillLayer):
+        (WebCore::clipMax):
+        (WebCore::FillLayer::computeClipMax const):
+        (WebCore::FillLayer::hasRepeatXY const):
+        (WebCore::FillLayer::hasFixedImage const):
+        * rendering/style/FillLayer.h:
+        (WebCore::FillSize::FillSize):
+        (WebCore::FillLayer::attachment const):
+        (WebCore::FillLayer::clip const):
+        (WebCore::FillLayer::origin const):
+        (WebCore::FillLayer::repeatX const):
+        (WebCore::FillLayer::repeatY const):
+        (WebCore::FillLayer::sizeType const):
+        (WebCore::FillLayer::size const):
+        (WebCore::FillLayer::maskSourceType const):
+        (WebCore::FillLayer::isSizeSet const):
+        (WebCore::FillLayer::setAttachment):
+        (WebCore::FillLayer::setClip):
+        (WebCore::FillLayer::setOrigin):
+        (WebCore::FillLayer::setRepeatX):
+        (WebCore::FillLayer::setRepeatY):
+        (WebCore::FillLayer::setComposite):
+        (WebCore::FillLayer::setBlendMode):
+        (WebCore::FillLayer::setSizeType):
+        (WebCore::FillLayer::setSize):
+        (WebCore::FillLayer::setMaskSourceType):
+        (WebCore::FillLayer::clearSize):
+        (WebCore::FillLayer::type const):
+        (WebCore::FillLayer::initialFillAttachment):
+        (WebCore::FillLayer::initialFillClip):
+        (WebCore::FillLayer::initialFillOrigin):
+        (WebCore::FillLayer::initialFillRepeatX):
+        (WebCore::FillLayer::initialFillRepeatY):
+        (WebCore::FillLayer::initialFillComposite):
+        (WebCore::FillLayer::initialFillBlendMode):
+        (WebCore::FillLayer::initialFillSize):
+        (WebCore::FillLayer::initialFillXPosition):
+        (WebCore::FillLayer::initialFillYPosition):
+        (WebCore::FillLayer::initialFillImage):
+        (WebCore::FillLayer::initialFillMaskSourceType):
+        * rendering/style/LineClampValue.h:
+        (WebCore::LineClampValue::LineClampValue):
+        (WebCore::LineClampValue::isPercentage const):
+        * rendering/style/RenderStyle.cpp:
+        (WebCore::RenderStyle::RenderStyle):
+        (WebCore::resolvedSelfAlignment):
+        (WebCore::RenderStyle::resolvedAlignSelf const):
+        (WebCore::RenderStyle::resolvedJustifySelf const):
+        (WebCore::resolvedContentAlignment):
+        (WebCore::resolvedContentAlignmentPosition):
+        (WebCore::resolvedContentAlignmentDistribution):
+        (WebCore::RenderStyle::resolvedJustifyContentDistribution const):
+        (WebCore::RenderStyle::resolvedAlignContentDistribution const):
+        (WebCore::RenderStyle::changeRequiresLayout const):
+        (WebCore::RenderStyle::changeRequiresPositionedLayoutOnly const):
+        (WebCore::RenderStyle::changeRequiresLayerRepaint const):
+        (WebCore::RenderStyle::changeRequiresRepaint const):
+        (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline const):
+        (WebCore::RenderStyle::changeRequiresRecompositeLayer const):
+        (WebCore::RenderStyle::diff const):
+        (WebCore::RenderStyle::diffRequiresLayerRepaint const):
+        (WebCore::allLayersAreFixed):
+        (WebCore::RenderStyle::colorIncludingFallback const):
+        (WebCore::RenderStyle::setColumnStylesFromPaginationMode):
+        (WebCore::RenderStyle::outlineWidth const):
+        (WebCore::RenderStyle::outlineOffset const):
+        * rendering/style/RenderStyle.h:
+        (WebCore::RenderStyle::isFloating const):
+        (WebCore::RenderStyle::position const):
+        (WebCore::RenderStyle::hasOutOfFlowPosition const):
+        (WebCore::RenderStyle::hasInFlowPosition const):
+        (WebCore::RenderStyle::hasViewportConstrainedPosition const):
+        (WebCore::RenderStyle::floating const):
+        (WebCore::RenderStyle::borderLeftStyle const):
+        (WebCore::RenderStyle::borderRightStyle const):
+        (WebCore::RenderStyle::borderTopStyle const):
+        (WebCore::RenderStyle::borderBottomStyle const):
+        (WebCore::RenderStyle::hasOutline const):
+        (WebCore::RenderStyle::outlineStyle const):
+        (WebCore::RenderStyle::overflowX const):
+        (WebCore::RenderStyle::overflowY const):
+        (WebCore::RenderStyle::overflowInlineDirection const):
+        (WebCore::RenderStyle::overflowBlockDirection const):
+        (WebCore::RenderStyle::verticalAlign const):
+        (WebCore::RenderStyle::clear const):
+        (WebCore::RenderStyle::tableLayout const):
+        (WebCore::RenderStyle::backgroundRepeatX const):
+        (WebCore::RenderStyle::backgroundRepeatY const):
+        (WebCore::RenderStyle::backgroundAttachment const):
+        (WebCore::RenderStyle::backgroundClip const):
+        (WebCore::RenderStyle::backgroundOrigin const):
+        (WebCore::RenderStyle::backgroundSizeType const):
+        (WebCore::RenderStyle::maskRepeatX const):
+        (WebCore::RenderStyle::maskRepeatY const):
+        (WebCore::RenderStyle::maskClip const):
+        (WebCore::RenderStyle::maskOrigin const):
+        (WebCore::RenderStyle::maskSizeType const):
+        (WebCore::RenderStyle::borderCollapse const):
+        (WebCore::RenderStyle::boxAlign const):
+        (WebCore::RenderStyle::boxDirection const):
+        (WebCore::RenderStyle::boxLines const):
+        (WebCore::RenderStyle::boxOrient const):
+        (WebCore::RenderStyle::boxPack const):
+        (WebCore::RenderStyle::flexDirection const):
+        (WebCore::RenderStyle::isColumnFlexDirection const):
+        (WebCore::RenderStyle::isReverseFlexDirection const):
+        (WebCore::RenderStyle::flexWrap const):
+        (WebCore::RenderStyle::boxDecorationBreak const):
+        (WebCore::RenderStyle::boxSizing const):
+        (WebCore::RenderStyle::userModify const):
+        (WebCore::RenderStyle::userDrag const):
+        (WebCore::RenderStyle::userSelect const):
+        (WebCore::RenderStyle::marginBeforeCollapse const):
+        (WebCore::RenderStyle::marginAfterCollapse const):
+        (WebCore::RenderStyle::wordBreak const):
+        (WebCore::RenderStyle::overflowWrap const):
+        (WebCore::RenderStyle::nbspMode const):
+        (WebCore::RenderStyle::resize const):
+        (WebCore::RenderStyle::columnRuleStyle const):
+        (WebCore::RenderStyle::hasTextCombine const):
+        (WebCore::RenderStyle::transformStyle3D const):
+        (WebCore::RenderStyle::preserves3D const):
+        (WebCore::RenderStyle::backfaceVisibility const):
+        (WebCore::RenderStyle::textSecurity const):
+        (WebCore::RenderStyle::imageRendering const):
+        (WebCore::RenderStyle::setIsolation):
+        (WebCore::RenderStyle::hasIsolation const):
+        (WebCore::RenderStyle::isolation const):
+        (WebCore::RenderStyle::setPosition):
+        (WebCore::RenderStyle::setFloating):
+        (WebCore::RenderStyle::setBackgroundSize):
+        (WebCore::RenderStyle::setBorderLeftStyle):
+        (WebCore::RenderStyle::setBorderRightStyle):
+        (WebCore::RenderStyle::setBorderTopStyle):
+        (WebCore::RenderStyle::setBorderBottomStyle):
+        (WebCore::RenderStyle::setOutlineStyleIsAuto):
+        (WebCore::RenderStyle::setOutlineStyle):
+        (WebCore::RenderStyle::setOverflowX):
+        (WebCore::RenderStyle::setOverflowY):
+        (WebCore::RenderStyle::setVerticalAlign):
+        (WebCore::RenderStyle::setVerticalAlignLength):
+        (WebCore::RenderStyle::setClear):
+        (WebCore::RenderStyle::setTableLayout):
+        (WebCore::RenderStyle::setImageRendering):
+        (WebCore::RenderStyle::clearBackgroundLayers):
+        (WebCore::RenderStyle::clearMaskLayers):
+        (WebCore::RenderStyle::setBorderCollapse):
+        (WebCore::RenderStyle::setAspectRatioType):
+        (WebCore::RenderStyle::setPrintColorAdjust):
+        (WebCore::RenderStyle::setBoxAlign):
+        (WebCore::RenderStyle::setBoxDirection):
+        (WebCore::RenderStyle::setBoxLines):
+        (WebCore::RenderStyle::setBoxOrient):
+        (WebCore::RenderStyle::setBoxPack):
+        (WebCore::RenderStyle::setBoxSizing):
+        (WebCore::RenderStyle::setFlexDirection):
+        (WebCore::RenderStyle::setFlexWrap):
+        (WebCore::RenderStyle::setBoxDecorationBreak):
+        (WebCore::RenderStyle::setUserModify):
+        (WebCore::RenderStyle::setUserDrag):
+        (WebCore::RenderStyle::setUserSelect):
+        (WebCore::RenderStyle::setTextOverflow):
+        (WebCore::RenderStyle::setMarginBeforeCollapse):
+        (WebCore::RenderStyle::setMarginAfterCollapse):
+        (WebCore::RenderStyle::setWordBreak):
+        (WebCore::RenderStyle::setOverflowWrap):
+        (WebCore::RenderStyle::setNBSPMode):
+        (WebCore::RenderStyle::setLineBreak):
+        (WebCore::RenderStyle::setResize):
+        (WebCore::RenderStyle::setColumnFill):
+        (WebCore::RenderStyle::setColumnRuleStyle):
+        (WebCore::RenderStyle::setColumnSpan):
+        (WebCore::RenderStyle::setTextCombine):
+        (WebCore::RenderStyle::setObjectFit):
+        (WebCore::RenderStyle::setTransformStyle3D):
+        (WebCore::RenderStyle::setBackfaceVisibility):
+        (WebCore::RenderStyle::setTextSecurity):
+        (WebCore::RenderStyle::initialOverflowX):
+        (WebCore::RenderStyle::initialOverflowY):
+        (WebCore::RenderStyle::initialClear):
+        (WebCore::RenderStyle::initialPosition):
+        (WebCore::RenderStyle::initialVerticalAlign):
+        (WebCore::RenderStyle::initialFloating):
+        (WebCore::RenderStyle::initialTableLayout):
+        (WebCore::RenderStyle::initialBorderCollapse):
+        (WebCore::RenderStyle::initialBorderStyle):
+        (WebCore::RenderStyle::initialOutlineStyleIsAuto):
+        (WebCore::RenderStyle::initialTextCombine):
+        (WebCore::RenderStyle::initialObjectFit):
+        (WebCore::RenderStyle::initialBoxAlign):
+        (WebCore::RenderStyle::initialBoxDecorationBreak):
+        (WebCore::RenderStyle::initialBoxDirection):
+        (WebCore::RenderStyle::initialBoxLines):
+        (WebCore::RenderStyle::initialBoxOrient):
+        (WebCore::RenderStyle::initialBoxPack):
+        (WebCore::RenderStyle::initialBoxSizing):
+        (WebCore::RenderStyle::initialJustifyItems):
+        (WebCore::RenderStyle::initialSelfAlignment):
+        (WebCore::RenderStyle::initialDefaultAlignment):
+        (WebCore::RenderStyle::initialContentAlignment):
+        (WebCore::RenderStyle::initialFlexDirection):
+        (WebCore::RenderStyle::initialFlexWrap):
+        (WebCore::RenderStyle::initialUserModify):
+        (WebCore::RenderStyle::initialUserDrag):
+        (WebCore::RenderStyle::initialUserSelect):
+        (WebCore::RenderStyle::initialTextOverflow):
+        (WebCore::RenderStyle::initialMarginBeforeCollapse):
+        (WebCore::RenderStyle::initialMarginAfterCollapse):
+        (WebCore::RenderStyle::initialWordBreak):
+        (WebCore::RenderStyle::initialOverflowWrap):
+        (WebCore::RenderStyle::initialNBSPMode):
+        (WebCore::RenderStyle::initialLineBreak):
+        (WebCore::RenderStyle::initialResize):
+        (WebCore::RenderStyle::initialAspectRatioType):
+        (WebCore::RenderStyle::initialColumnFill):
+        (WebCore::RenderStyle::initialColumnSpan):
+        (WebCore::RenderStyle::initialTransformStyle3D):
+        (WebCore::RenderStyle::initialBackfaceVisibility):
+        (WebCore::RenderStyle::initialImageRendering):
+        (WebCore::RenderStyle::initialPrintColorAdjust):
+        (WebCore::RenderStyle::initialTextIndentLine):
+        (WebCore::RenderStyle::initialTextIndentType):
+        (WebCore::RenderStyle::initialTextSecurity):
+        (WebCore::RenderStyle::initialIsolation):
+        (WebCore::collapsedBorderStyle):
+        (WebCore::RenderStyle::breakOnlyAfterWhiteSpace const):
+        (WebCore::RenderStyle::breakWords const):
+        (WebCore::RenderStyle::setTextOrientation):
+        * rendering/style/RenderStyleConstants.cpp:
+        (WebCore::operator<<):
+        * rendering/style/RenderStyleConstants.h:
+        (WebCore::operator|):
+        (WebCore::operator|=):
+        (WebCore::operator| ): Deleted.
+        (WebCore::operator|= ): Deleted.
+        * rendering/style/SVGRenderStyle.cpp:
+        (WebCore::SVGRenderStyle::diff const):
+        * rendering/style/StyleBackgroundData.cpp:
+        (WebCore::StyleBackgroundData::StyleBackgroundData):
+        * rendering/style/StyleBoxData.cpp:
+        (WebCore::StyleBoxData::StyleBoxData):
+        * rendering/style/StyleBoxData.h:
+        (WebCore::StyleBoxData::boxSizing const):
+        (WebCore::StyleBoxData::boxDecorationBreak const):
+        * rendering/style/StyleContentAlignmentData.h:
+        (WebCore::StyleContentAlignmentData::StyleContentAlignmentData):
+        (WebCore::StyleContentAlignmentData::setPosition):
+        (WebCore::StyleContentAlignmentData::setDistribution):
+        (WebCore::StyleContentAlignmentData::setOverflow):
+        (WebCore::StyleContentAlignmentData::distribution const):
+        * rendering/style/StyleDeprecatedFlexibleBoxData.cpp:
+        (WebCore::StyleDeprecatedFlexibleBoxData::StyleDeprecatedFlexibleBoxData):
+        * rendering/style/StyleDeprecatedFlexibleBoxData.h:
+        * rendering/style/StyleFlexibleBoxData.cpp:
+        (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
+        * rendering/style/StyleFlexibleBoxData.h:
+        * rendering/style/StyleMultiColData.cpp:
+        (WebCore::StyleMultiColData::StyleMultiColData):
+        * rendering/style/StyleMultiColData.h:
+        (WebCore::StyleMultiColData::ruleWidth const):
+        * rendering/style/StyleRareInheritedData.cpp:
+        (WebCore::StyleRareInheritedData::StyleRareInheritedData):
+        * rendering/style/StyleRareInheritedData.h:
+        * rendering/style/StyleRareNonInheritedData.cpp:
+        (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
+        * rendering/style/StyleRareNonInheritedData.h:
+        * rendering/style/StyleSelfAlignmentData.h:
+        (WebCore::StyleSelfAlignmentData::StyleSelfAlignmentData):
+        (WebCore::StyleSelfAlignmentData::setPosition):
+        (WebCore::StyleSelfAlignmentData::setPositionType):
+        (WebCore::StyleSelfAlignmentData::setOverflow):
+        * rendering/svg/RenderSVGBlock.cpp:
+        (WebCore::RenderSVGBlock::styleDidChange):
+        * rendering/svg/RenderSVGGradientStop.cpp:
+        (WebCore::RenderSVGGradientStop::styleDidChange):
+        * rendering/svg/RenderSVGInline.cpp:
+        (WebCore::RenderSVGInline::styleDidChange):
+        * rendering/svg/RenderSVGInlineText.cpp:
+        (WebCore::RenderSVGInlineText::styleDidChange):
+        * rendering/svg/RenderSVGModelObject.cpp:
+        (WebCore::RenderSVGModelObject::styleDidChange):
+        * rendering/svg/RenderSVGResourceContainer.cpp:
+        (WebCore::RenderSVGResourceContainer::registerResource):
+        * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
+        (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
+        * rendering/svg/RenderSVGRoot.cpp:
+        (WebCore::RenderSVGRoot::layout):
+        (WebCore::RenderSVGRoot::shouldApplyViewportClip const):
+        (WebCore::RenderSVGRoot::styleDidChange):
+        * rendering/svg/SVGInlineTextBox.cpp:
+        (WebCore::SVGInlineTextBox::paintText):
+        * rendering/svg/SVGRenderSupport.cpp:
+        (WebCore::SVGRenderSupport::isOverflowHidden):
+        * rendering/svg/SVGResourcesCache.cpp:
+        (WebCore::SVGResourcesCache::clientStyleChanged):
+        * rendering/updating/RenderTreeBuilder.cpp:
+        (WebCore::RenderTreeBuilder::attachToRenderElementInternal):
+        * rendering/updating/RenderTreeBuilderBlock.cpp:
+        (WebCore::RenderTreeBuilder::Block::insertChildToContinuation):
+        * rendering/updating/RenderTreeBuilderFirstLetter.cpp:
+        (WebCore::styleForFirstLetter):
+        * rendering/updating/RenderTreeBuilderMultiColumn.cpp:
+        (WebCore::isValidColumnSpanner):
+        (WebCore::RenderTreeBuilder::MultiColumn::resolveMovedChild):
+        (WebCore::RenderTreeBuilder::MultiColumn::multiColumnRelativeWillBeRemoved):
+        * rendering/updating/RenderTreeUpdater.cpp:
+        (WebCore::RenderTreeUpdater::updateElementRenderer):
+        * style/StyleResolveForDocument.cpp:
+        (WebCore::Style::resolveForDocument):
+
+2018-05-21  Alicia Boya García  <aboya@igalia.com>
+
+        [MSE][GStreamer] Stream::decodebinSinkPad is read but never assigned
+        https://bugs.webkit.org/show_bug.cgi?id=185724
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        This is a dead code removal patch; except when a Stream instance
+        happens to be instantiated in such a place that the non-initialized
+        decodeSinkPad is != 0, then it is a crash bug fix.
+
+        * platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
+        (webKitMediaSrcLinkStreamToSrcPad):
+        * platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h:
+
+2018-05-21  Alicia Boya García  <aboya@igalia.com>
+
+        [MSE][GStreamer] Force segment.start = 0 after matroskademux
+        https://bugs.webkit.org/show_bug.cgi?id=185740
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        This patch ensures that when WebM MSE media segments are appended in
+        an out of order fashion their frames are not discarded by opusparse or
+        any other potential elements downstream in the AppendPipeline that
+        perform segment clipping.
+
+        This patch fixes the following YTTV 2018 tests:
+
+        38. OpusAudioWithOverlap
+        39. OpusAudioWithSmallGap
+        40. OpusAudioWithLargeGap
+        70. VP9VideoWithOverlap
+        71. VP9VideoWithSmallGap
+
+        This patch is necessary, but not sufficient for fixing the following
+        YTTV 2018 tests:
+
+        36. AppendOpusAudioOutOfOrder
+        67. AppendVP9VideoOutOfOrder
+
+        * platform/graphics/gstreamer/mse/AppendPipeline.cpp:
+        (WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):
+        (WebCore::matroskademuxForceSegmentStartToEqualZero):
+
+2018-05-19  Eric Carlson  <eric.carlson@apple.com>
+
+        Improve NowPlaying "title"
+        https://bugs.webkit.org/show_bug.cgi?id=185680
+        <rdar://problem/40296700>
+
+        Reviewed by Dean Jackson.
+
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::mediaSessionTitle const): Use decodeHostName and 
+        topPrivatelyControlledDomain when possible to make the host name more readable.
+
+        * platform/PublicSuffix.h:
+        * platform/mac/PublicSuffixMac.mm:
+        (WebCore::decodeHostName): Expose topPrivatelyControlledDomain method to .cpp functions.
+
+2018-05-19  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r231996.
+        https://bugs.webkit.org/show_bug.cgi?id=185799
+
+         Broke the GTK build (Requested by eric_carlson on #webkit).
+
+        Reverted changeset:
+
+        "Improve NowPlaying "title""
+        https://bugs.webkit.org/show_bug.cgi?id=185680
+        https://trac.webkit.org/changeset/231996
+
+2018-05-18  Eric Carlson  <eric.carlson@apple.com>
+
+        Improve NowPlaying "title"
+        https://bugs.webkit.org/show_bug.cgi?id=185680
+        <rdar://problem/40296700>
+
+        Reviewed by Dean Jackson.
+
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::mediaSessionTitle const): Use decodeHostName and 
+        topPrivatelyControlledDomain when possible to make the host name more readable.
+
+        * platform/PublicSuffix.h:
+        * platform/mac/PublicSuffixMac.mm:
+        (WebCore::decodeHostName): Expose topPrivatelyControlledDomain method to .cpp functions.
+
+2018-05-18  Rob Buis  <rbuis@igalia.com>
+
+        Cannot unset transition with important
+        https://bugs.webkit.org/show_bug.cgi?id=177684
+
+        Reviewed by Chris Dumez.
+
+        Make removeProperty remove the property regardless
+        if it was set using !important [1].
+
+        The new behavior is consistent with Firefox, Chrome and Edge.
+
+        [1] https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-removeproperty
+
+        Test: web-platform-tests/cssom/cssom-setProperty-shorthand.html
+
+        * css/StyleProperties.cpp:
+        (WebCore::MutableStyleProperties::removePropertiesInSet):
+
+2018-05-18  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r231982.
+        https://bugs.webkit.org/show_bug.cgi?id=185793
+
+        Caused layout test failures (Requested by realdawei on
+        #webkit).
+
+        Reverted changeset:
+
+        "Complete fix for enabling modern EME by default"
+        https://bugs.webkit.org/show_bug.cgi?id=185770
+        https://trac.webkit.org/changeset/231982
+
+2018-05-18  Jer Noble  <jer.noble@apple.com>
+
+        Complete fix for enabling modern EME by default
+        https://bugs.webkit.org/show_bug.cgi?id=185770
+        <rdar://problem/40368220>
+
+        Reviewed by Eric Carlson.
+
+        * Configurations/FeatureDefines.xcconfig:
+
+2018-05-18  Brent Fulgham  <bfulgham@apple.com>
+
+        Convert ProcessPrivilege assertions to regular debug-only assertions
+        https://bugs.webkit.org/show_bug.cgi?id=185775
+        <rdar://problem/40372286>
+
+        Reviewed by Geoffrey Garen.
+
+        In Bug 184322 I added a number of RELEASE_ASSERT checks that certain
+        UI-only calls were not being made in the WebContent process.
+
+        Measurements have shown that these RELEASE_ASSERTs have regressed performance
+        by around 1% on some benchmarks, so we should convert them to normal asserts.
+
+        This patch changes the RELEASE_ASSERTs into ASSERTs.
+
+        * platform/mac/PasteboardMac.mm:
+        (WebCore::Pasteboard::setDragImage):
+        * platform/mac/PlatformScreenMac.mm:
+        (WebCore::displayID):
+        (WebCore::firstScreen):
+        (WebCore::window):
+        (WebCore::screen):
+        (WebCore::getScreenProperties):
+        (WebCore::screenIsMonochrome):
+
+2018-05-18  Eric Carlson  <eric.carlson@apple.com>
+
+        Handle failure to extend sandbox gracefully
+        https://bugs.webkit.org/show_bug.cgi?id=185779
+        <rdar://problem/40316349>
+
+        Reviewed by Brent Fulgham.
+
+        Test: TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm
+
+        * Modules/mediastream/UserMediaRequest.cpp:
+        (WebCore::UserMediaRequest::deny): Include the error string in the promise rejection.
+        * Modules/mediastream/UserMediaRequest.h:
+
+2018-05-18  Antoine Quint  <graouts@apple.com>
+
+        [Web Animations] Turn Web Animations with CSS integration on for test runners
+        https://bugs.webkit.org/show_bug.cgi?id=184819
+        <rdar://problem/39597337>
+
+        Unreviewed. Rolling out the patch for this bug, it caused some flaky timeouts for animation suspension tests.
+
+        Tests: animations/animation-internals-api-multiple-keyframes.html
+               animations/animation-internals-api.html
+               transitions/transition-drt-api-delay.html
+               transitions/transition-drt-api.html
+
+        * dom/Element.cpp:
+        (WebCore::Element::removedFromAncestor):
+        * dom/PseudoElement.cpp:
+        (WebCore::PseudoElement::clearHostElement):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::didDestroyRenderTree):
+        * page/RuntimeEnabledFeatures.h:
+        * rendering/updating/RenderTreeUpdater.cpp:
+        (WebCore::RenderTreeUpdater::tearDownRenderers):
+
+2018-05-18  Basuke Suzuki  <Basuke.Suzuki@sony.com>
+
+        [Curl] Bug fix on suspend/resume behavior.
+        https://bugs.webkit.org/show_bug.cgi?id=183089
+
+        The flag was not set correctly. Also wrong method was called.
+
+        Reviewed by Youenn Fablet.
+
+        Enable loader tests to cover this case.
+
+        * platform/network/curl/CurlRequest.cpp:
+        (WebCore::CurlRequest::cancel): Remove unnecessary cleanup. Use runXXX method.
+        (WebCore::CurlRequest::suspend): Added cancel check.
+        (WebCore::CurlRequest::resume): Ditto.
+        (WebCore::CurlRequest::callClient): Use runXXX method. Change to move semantics.
+        (WebCore::runOnMainThread): Added.
+        (WebCore::CurlRequest::runOnWorkerThreadIfRequired): Added.
+        (WebCore::CurlRequest::setupTransfer): Bug fix. Call setRequestPaused directly.
+        (WebCore::CurlRequest::didReceiveData): Add state flag update.
+        (WebCore::CurlRequest::invokeDidReceiveResponseForFile): Use runXXX to simplify.
+        (WebCore::CurlRequest::completeDidReceiveResponse): Ditto.
+        (WebCore::CurlRequest::setRequestPaused): Protect state change by mutex.
+        (WebCore::CurlRequest::setCallbackPaused): Ditto.
+        (WebCore::CurlRequest::invokeCancel): Added.
+        (WebCore::CurlRequest::pausedStatusChanged): Use runXXX to simplify.
+        (WebCore::CurlRequest::updateHandlePauseState): Accessor for m_isHandlePaused.
+        (WebCore::CurlRequest::isHandlePaused const): Ditto.
+        * platform/network/curl/CurlRequest.h: Add mutex and paused state.
+        (WebCore::CurlRequest::shouldBePaused const): Rename from isPaused.
+        (WebCore::CurlRequest::isPaused const): Deleted.
+
+2018-05-18  Chris Dumez  <cdumez@apple.com>
+
+        Avoid keeping the frame alive when ref'ing a WindowProxy
+        https://bugs.webkit.org/show_bug.cgi?id=185737
+        <rdar://problem/40004666>
+
+        Reviewed by Sam Weinig.
+
+        Avoid keeping the frame alive when ref'ing a WindowProxy by making WindowProxy
+        manage its own refcount (instead of proxying refcounting to the Frame). As a
+        result, a WindowProxy can now be detached from its Frame. When detached, it
+        return null when asked for a JSWindowProxy.
+
+        It is important to not extend the lifetime of the Frame because we want script
+        to stop running when the Page gets destroyed.
+
+        * bindings/js/JSWindowProxy.cpp:
+        (WebCore::toJS):
+        (WebCore::toJSWindowProxy):
+        * bindings/js/JSWindowProxy.h:
+        (WebCore::toJSWindowProxy):
+        * bindings/js/ScriptController.cpp:
+        (WebCore::ScriptController::evaluateInWorld):
+        (WebCore::ScriptController::loadModuleScriptInWorld):
+        (WebCore::ScriptController::linkAndEvaluateModuleScriptInWorld):
+        (WebCore::ScriptController::evaluateModule):
+        (WebCore::ScriptController::setupModuleScriptHandlers):
+        (WebCore::ScriptController::jsWindowProxy):
+        (WebCore::ScriptController::windowScriptNPObject):
+        (WebCore::ScriptController::executeIfJavaScriptURL):
+        * bindings/js/ScriptController.h:
+        (WebCore::ScriptController::globalObject):
+        * bindings/js/ScriptControllerMac.mm:
+        (WebCore::ScriptController::windowScriptObject):
+        * bindings/js/ScriptState.cpp:
+        (WebCore::mainWorldExecState):
+        * bindings/js/WindowProxy.cpp:
+        (WebCore::WindowProxy::WindowProxy):
+        (WebCore::WindowProxy::~WindowProxy):
+        (WebCore::WindowProxy::detachFromFrame):
+        (WebCore::WindowProxy::createJSWindowProxy):
+        (WebCore::WindowProxy::globalObject):
+        (WebCore::WindowProxy::createJSWindowProxyWithInitializedScript):
+        (WebCore::WindowProxy::setDOMWindow):
+        (WebCore::WindowProxy::window const):
+        (WebCore::WindowProxy::ref): Deleted.
+        (WebCore::WindowProxy::deref): Deleted.
+        * bindings/js/WindowProxy.h:
+        (WebCore::WindowProxy::create):
+        (WebCore::WindowProxy::frame const):
+        (WebCore::WindowProxy::jsWindowProxy):
+        * dom/DocumentTouch.cpp:
+        (WebCore::DocumentTouch::createTouch):
+        * page/AbstractFrame.cpp:
+        (WebCore::AbstractFrame::AbstractFrame):
+        (WebCore::AbstractFrame::~AbstractFrame):
+        * page/AbstractFrame.h:
+
+2018-05-18  Myles C. Maxfield  <mmaxfield@apple.com>
+
+        [iOS] Password fields obscure the text with rectangles instead of circles
+        https://bugs.webkit.org/show_bug.cgi?id=185760
+        <rdar://problem/38644697>
+
+        Reviewed by Zalan Bujtas.
+
+        Password fields are obscured by drawing U+25CF BLACK CIRCLE. On iOS, we have custom handling
+        for this character. However, this custom handling is unnecessary and isn't present on macOS.
+        Instead, we should simply unify the password obscuring codepath between iOS and macOS.
+
+        Test: fast/text/black-circle.html
+
+        * platform/graphics/ios/FontCacheIOS.mm:
+        (WebCore::requiresCustomFallbackFont):
+        (WebCore::FontCache::getCustomFallbackFont):
+
+2018-05-18  Chris Dumez  <cdumez@apple.com>
+
+        Unreviewed, rolling out r231935.
+
+        Caused an accessibility test to fail
+
+        Reverted changeset:
+
+        "RenderLayer::scrollRectToVisible() should not propagate a
+        subframe's scroll to its cross-origin parent"
+        https://bugs.webkit.org/show_bug.cgi?id=185664
+        https://trac.webkit.org/changeset/231935
+
+2018-05-18  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Implement height computation for non-replaced floating elements.
+        https://bugs.webkit.org/show_bug.cgi?id=185767
+
+        Reviewed by Antti Koivisto.
+
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::computeFloatingHeight const):
+        (WebCore::Layout::FormattingContext::computeFloatingNonReplacedHeight const):
+        (WebCore::Layout::FormattingContext::contentHeightForFormattingContextRoot const):
+        * layout/FormattingContext.h:
+
+2018-05-18  Dirk Schulze  <krit@webkit.org>
+
+        Make all SVG shape interfaces inherit from SVGGeometryElement
+        https://bugs.webkit.org/show_bug.cgi?id=185600
+
+        Reviewed by Antti Koivisto.
+
+        Make all SVG shape interfaces inherit from SVGGeometryElement
+        as defined by SVG2:
+
+        https://svgwg.org/svg2-draft/shapes.html#DOMInterfaces
+
+        Tests: svg/dom/SVGGeometry-circle.xhtml
+               svg/dom/SVGGeometry-ellipse.xhtml
+               svg/dom/SVGGeometry-line.xhtml
+               svg/dom/SVGGeometry-polygon.xhtml
+               svg/dom/SVGGeometry-polyline.xhtml
+               svg/dom/SVGGeometry-rect.xhtml
+
+        * rendering/svg/RenderSVGShape.cpp:
+        (WebCore::RenderSVGShape::getTotalLength const): Added shape
+                independent implementation for all methods defined
+                by SVGGeometryElement interface. Calculations are
+                based on the Path object created and referenced by
+                RenderSVGShape.
+        (WebCore::RenderSVGShape::getPointAtLength const):
+        * rendering/svg/RenderSVGShape.h:
+        * svg/SVGCircleElement.cpp:
+                Repeating pattern: Change inheritance from
+                SVGGraphicsElement to SVGGeometryElement.
+        (WebCore::SVGCircleElement::SVGCircleElement):
+        * svg/SVGCircleElement.h:
+        * svg/SVGCircleElement.idl:
+        * svg/SVGEllipseElement.cpp:
+        (WebCore::SVGEllipseElement::SVGEllipseElement):
+        * svg/SVGEllipseElement.h:
+        * svg/SVGEllipseElement.idl:
+        * svg/SVGGeometryElement.cpp:
+        (WebCore::SVGGeometryElement::getTotalLength const):
+        (WebCore::SVGGeometryElement::getPointAtLength const):
+        * svg/SVGGeometryElement.h:
+        * svg/SVGLineElement.cpp:
+        (WebCore::SVGLineElement::SVGLineElement):
+        * svg/SVGLineElement.h:
+        * svg/SVGLineElement.idl:
+        * svg/SVGPolyElement.cpp:
+        (WebCore::SVGPolyElement::SVGPolyElement):
+        * svg/SVGPolyElement.h:
+        * svg/SVGPolygonElement.idl:
+        * svg/SVGPolylineElement.idl:
+        * svg/SVGRectElement.cpp:
+        (WebCore::SVGRectElement::SVGRectElement):
+        * svg/SVGRectElement.h:
+        * svg/SVGRectElement.idl:
+
+2018-05-18  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Implement height computation for replaced elements.
+        https://bugs.webkit.org/show_bug.cgi?id=185756
+
+        Reviewed by Antti Koivisto.
+
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::computeHeight const):
+        (WebCore::Layout::FormattingContext::computeOutOfFlowWidth const):
+        (WebCore::Layout::FormattingContext::computeOutOfFlowHeight const):
+        (WebCore::Layout::FormattingContext::computeFloatingHeight const):
+        (WebCore::Layout::FormattingContext::computeReplacedHeight const):
+        (WebCore::Layout::FormattingContext::computeReplacedWidth const):
+        (WebCore::Layout::FormattingContext::computeOutOfFlowReplacedHeight const):
+        * layout/FormattingContext.h:
+
+2018-05-18  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Implement width computation for non-replaced floating elements.
+        https://bugs.webkit.org/show_bug.cgi?id=185759
+
+        Reviewed by Antti Koivisto.
+
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::computeFloatingWidth const):
+        (WebCore::Layout::FormattingContext::computeFloatingNonReplacedWidth const):
+        * layout/FormattingContext.h:
+
+2018-05-18  Antoine Quint  <graouts@apple.com>
+
+        [modern-media-controls] AirPlaySupport should be disabled by default
+        https://bugs.webkit.org/show_bug.cgi?id=185658
+        <rdar://problem/40272213>
+
+        Reviewed by Simon Fraser.
+
+        We now only enable AirplaySupport if the controls are visible to the user _and_ media has played.
+
+        Test: media/modern-media-controls/airplay-support/airplay-support-disable-event-listeners-until-play.html
+
+        * Modules/modern-media-controls/media/airplay-support.js:
+        (AirplaySupport.prototype.enable):
+        (AirplaySupport.prototype.controlsUserVisibilityDidChange):
+        (AirplaySupport.prototype._shouldBeEnabled):
+        (AirplaySupport):
+
+2018-05-18  Tim Horton  <timothy_horton@apple.com>
+
+        Stop softlinking QuickLook when loading from client-registered schemes
+        https://bugs.webkit.org/show_bug.cgi?id=185716
+        <rdar://problem/40303227>
+
+        Reviewed by Dan Bernstein.
+
+        No new tests, just a performance improvement.
+
+        * dom/Document.cpp:
+        * platform/SchemeRegistry.cpp:
+        * platform/ios/QuickLook.h:
+        * platform/ios/QuickLook.mm:
+        (WebCore::isQuickLookPreviewURL):
+        (WebCore::QLPreviewProtocol): Deleted.
+        Hard-code the QuickLook preview URL scheme, instead of loading the QuickLook
+        framework to retrieve it. It will never change, and just in case it does,
+        add an ASSERT (which does load QuickLook) so that we'll find out.
+
+2018-05-18  Antoine Quint  <graouts@apple.com>
+
+        [Web Animations] Turn Web Animations with CSS integration on for test runners
+        https://bugs.webkit.org/show_bug.cgi?id=184819
+        <rdar://problem/39597337>
+
+        Reviewed by Jon Lee.
+
+        We ensure we always call into both CSSAnimationController::cancelAnimations() and
+        AnimationTimeline::cancelDeclarativeAnimationsForElement() since we want teardown of animations
+        to be performed no matter which animation code path is used. What that in mind, we don't
+        conditionalize the CSSAnimationController-related ASSERT() in FrameView::didDestroyRenderTree().
+
+        * dom/Element.cpp:
+        (WebCore::Element::removedFromAncestor):
+        * dom/PseudoElement.cpp:
+        (WebCore::PseudoElement::clearHostElement):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::didDestroyRenderTree):
+        * page/RuntimeEnabledFeatures.h:
+        * rendering/updating/RenderTreeUpdater.cpp:
+        (WebCore::RenderTreeUpdater::tearDownRenderers):
+
+2018-05-17  David Kilzer  <ddkilzer@apple.com>
+
+        Lazily create WebCore::Timer for WebCore::Image
+        <https://webkit.org/b/185752>
+
+        Reviewed by Simon Fraser.
+
+        Not every image is an animated image, so lazily creating
+        m_animationStartTimer saves 64 bytes per instance of
+        WebCore::Image.
+
+        * platform/graphics/Image.cpp:
+        (WebCore::Image::Image): Remove default initializer for
+        m_animationStartTimer.
+        (WebCore::Image::startAnimationAsynchronously): Initialize
+        m_animationStartTimer if it's not already created.
+        * platform/graphics/Image.h:
+        (WebCore::Image::animationPending const): Update to check if
+        m_animationStartTimer has been set before dereferencing it.
+        (WebCore::Image::m_animationStartTimer): Change type to
+        std::unique_ptr<Timer>.
+
+2018-05-17  Nan Wang  <n_wang@apple.com>
+
+        AX: [macOS] Expose the primary screen height through AX API
+        https://bugs.webkit.org/show_bug.cgi?id=185742
+
+        Reviewed by Chris Fleizach.
+
+        Added a new attribute to expose the primary screen size on both
+        WebAccessibilityObjectWrapper and WKAccessibilityWebPageObject.
+
+        Test: accessibility/mac/primary-screen-height.html
+
+        * WebCore.xcodeproj/project.pbxproj:
+        * accessibility/mac/WebAccessibilityObjectWrapperMac.h:
+        * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+        (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
+        (-[WebAccessibilityObjectWrapper primaryScreenHeight]):
+        (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
+        * platform/PlatformScreen.h:
+        * platform/mac/PlatformScreenMac.mm:
+        (WebCore::screenRectForPrimaryScreen):
+
+2018-05-17  Chris Dumez  <cdumez@apple.com>
+
+        RenderLayer::scrollRectToVisible() should not propagate a subframe's scroll to its cross-origin parent
+        https://bugs.webkit.org/show_bug.cgi?id=185664
+        <rdar://problem/36185260>
+
+        Reviewed by Simon Fraser.
+
+        RenderLayer::scrollRectToVisible() should not propagate a subframe's scroll to its
+        cross-origin parent. There was logic in FrameLoader::scrollToFragmentWithParentBoundary()
+        to temporarily set the 'safeToPropagateScrollToParent' flag to false on the cross-origin
+        ancestor frame during the call to FrameView::scrollToFragment(). This would correctly
+        prevent RenderLayer::scrollRectToVisible() to propagate the scroll to the cross-origin
+        ancestor frame when scrollRectToVisible() is called synchronously. However,
+        scrollRectToVisible() can get called asynchronously in case of a dirty layout, as part
+        of the post layout tasks.
+
+        To address the issue, we get rid of the safeToPropagateScrollToParent flag on FrameView
+        and instead update FrameView::safeToPropagateScrollToParent() to do the cross-origin
+        check. FrameView::safeToPropagateScrollToParent() is called by RenderLayer::scrollRectToVisible()
+        and this is a lot more robust than relying on a flag which gets temporarily set.
+
+        Test: http/tests/navigation/fragment-navigation-cross-origin-subframe-no-scrolling-parent.html
+
+        * dom/Document.cpp:
+        * dom/Document.h:
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::scrollToFragmentWithParentBoundary):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::FrameView):
+        (WebCore::FrameView::reset):
+        (WebCore::FrameView::safeToPropagateScrollToParent const):
+        * page/FrameView.h:
+
+2018-05-17  Don Olmstead  <don.olmstead@sony.com>
+
+        [Curl] Enable HTTP/2 Multiplexing
+        https://bugs.webkit.org/show_bug.cgi?id=185746
+
+        Reviewed by Youenn Fablet.
+
+        Covered by existing tests.
+
+        * platform/network/curl/CurlContext.cpp:
+        (WebCore::CurlMultiHandle::CurlMultiHandle):
+
+2018-05-17  Jeremy Jones  <jeremyj@apple.com>
+
+        Remove unnecessary exit fullscreen call on application resume
+        https://bugs.webkit.org/show_bug.cgi?id=185747
+        rdar://problem/40345725
+
+        Reviewed by Jer Noble.
+
+        No new tests because no behavior change.
+
+        Auto-PiP doesn't automatically return to fullscreen on app resume,
+        so we don't need to keep this vestigial code for handling a corner case of that feature.
+        Also, this can cause an unnecessary exit fullscreen that could cause debug asserts.
+
+        * platform/ios/VideoFullscreenInterfaceAVKit.mm:
+        (VideoFullscreenInterfaceAVKit::applicationDidBecomeActive):
+
 2018-05-17  Jeremy Jones  <jeremyj@apple.com>
 
         Fullscreen to PiP results in exit fullscreen call failure