REGRESSION (r238078): Do not draw caps lock indicator when Strong Password button...
[WebKit-https.git] / Source / WebCore / ChangeLog
index 893e307..9917e8f 100644 (file)
+2018-11-26  Daniel Bates  <dabates@apple.com>
+
+        REGRESSION (r238078): Do not draw caps lock indicator when Strong Password button is shown
+        https://bugs.webkit.org/show_bug.cgi?id=191969
+        <rdar://problem/46247569>
+
+        Reviewed by Dean Jackson.
+
+        Following r238078 we now support drawing the caps lock indicator in password fields on iOS.
+        However it is not meaningful to show the caps lock indicator when the Strong Password button
+        is visible because the password field is not editable. We should not paint the caps lock
+        indicator when the Strong Password button is visible.
+
+        Tests: fast/forms/auto-fill-button/caps-lock-indicator-should-be-visible-when-after-hiding-auto-fill-strong-password-button.html
+               fast/forms/auto-fill-button/caps-lock-indicator-should-not-be-visible-when-auto-fill-strong-password-button-is-visible.html
+
+        * html/TextFieldInputType.cpp:
+        (WebCore::TextFieldInputType::shouldDrawCapsLockIndicator const): Do not draw the caps
+        lock indicator when the password field has the Strong Password button.
+        (WebCore::TextFieldInputType::updateAutoFillButton): Call capsLockStateMayHaveChanged() to
+        update the visibility of the caps lock indicator when the auto fill button has changed.
+
+2018-11-26  Sam Weinig  <sam@webkit.org>
+
+        Streamline ListHashSet use in floating object code
+        https://bugs.webkit.org/show_bug.cgi?id=191957
+
+        Reviewed by Alex Christensen.
+
+        Simplify use of ListHashSet by using new raw pointer overloads and
+        making use of reversed order of template arguments in the find() and
+        contains() overloads that take hash translators.  
+
+        * rendering/FloatingObjects.cpp:
+        (WebCore::FloatingObjects::remove):
+        Use raw pointer overloads of contains and remove. Remove seperate call
+        to find / check agains end() which is unnecessary as remove() already
+        does that.
+        
+        * rendering/FloatingObjects.h:
+        (WebCore::FloatingObjectHashFunctions::hash):
+        (WebCore::FloatingObjectHashFunctions::equal):
+        (WebCore::FloatingObjectHashTranslator::hash):
+        (WebCore::FloatingObjectHashTranslator::equal):
+        Add hash()/equal() overloads for the raw pointer cases. As the FIXME
+        notes, this could be simplified by changing PtrHashBase to use designated
+        bottleneck functions for hash() and equal().
+
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::containsFloat const):
+        (WebCore::RenderBlockFlow::insertFloatingObject):
+        (WebCore::RenderBlockFlow::removeFloatingObject):
+        (WebCore::RenderBlockFlow::hasOverhangingFloat):
+        (WebCore::RenderBlockFlow::addIntrudingFloats):
+        Use simplified calls.
+        
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
+        (WebCore::RenderBlockFlow::linkToEndLineIfNeeded):
+        Use simplified calls.
+
+2018-11-26  Jeremy Jones  <jeremyj@apple.com>
+
+        Use Full Screen consistently in localizable strings.
+        https://bugs.webkit.org/show_bug.cgi?id=190363
+        rdar://problem/43882333
+
+        Reviewed by Jon Lee.
+
+        No new tests because only change is to localizable strings.
+
+        Rename "Fullscreen" to "Full Screen" in localizable strings for consistency.
+
+        * English.lproj/Localizable.strings:
+        * platform/LocalizedStrings.cpp:
+        (WebCore::contextMenuItemTagEnterVideoFullscreen):
+        (WebCore::contextMenuItemTagExitVideoFullscreen):
+        (WebCore::localizedMediaControlElementHelpText):
+
+2018-11-26  Brent Fulgham  <bfulgham@apple.com>
+
+        [Win] Reduce the use of WKSI library calls: CoreAnimation
+        https://bugs.webkit.org/show_bug.cgi?id=191777
+        <rdar://problem/46140542>
+
+        Reviewed by Zalan Bujtas.
+
+        Update the Windows build of WebKit to refer to the SPI headers, rather than WebKitSystemInterface.
+        Move a small amount of glue code from WKSI to WebCore, and remove any includes or link
+        directives for WebKitSystemInterface.lib.
+        
+        No new tests. No change in behavior.
+
+        * platform/graphics/BitmapImage.cpp:
+        * platform/graphics/ca/win/CACFLayerTreeHost.h:
+        * platform/graphics/ca/win/PlatformCALayerWin.cpp:
+        (layerTreeHostForLayer):
+        * platform/graphics/cg/GraphicsContextCG.cpp:
+        * platform/graphics/cg/PathCG.cpp:
+        * platform/graphics/cg/PatternCG.cpp:
+        * platform/graphics/win/WKCAImageQueue.cpp:
+
+2018-11-25  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Use float box's margin box to adjust the line constraints.
+        https://bugs.webkit.org/show_bug.cgi?id=191961
+
+        Reviewed by Antti Koivisto.
+
+        Test: fast/inline/inline-content-with-float-and-margin.html
+
+        (WebCore::Layout::outputMismatchingComplexLineInformationIfNeeded):
+        (WebCore::Layout::LayoutState::verifyAndOutputMismatchingLayoutTree const):
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::layoutInlineContent const):
+
+2018-11-26  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [GTK] Accessing default web context before gtk_init results in drawing failure (Gtk-WARNING **: drawing failure for widget 'WebKitWebView': invalid value for an input Visual*)
+        https://bugs.webkit.org/show_bug.cgi?id=150303
+
+        Reviewed by Michael Catanzaro.
+
+        Ensure gtk has been initialized before trying to get the default display.
+
+        * platform/graphics/PlatformDisplay.cpp:
+        (WebCore::PlatformDisplay::createPlatformDisplay):
+
+2018-11-26  Javier Fernandez  <jfernandez@igalia.com>
+
+        [css-grid] absolute positioned child is sized wrongly when using auto-fit, generating spurious collapsed tracks
+        https://bugs.webkit.org/show_bug.cgi?id=191938
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        The guttersSize function has a complex logic to compute the gaps in a
+        specific GridSpan, considering different scenarios of collapsed tracks
+        for such span.
+
+        The first case is avoiding the duplicated gap because of trailing
+        collapsed tracks.
+
+        The second case considered is looking for non-empty tracks before the
+        GridSpan end, if it points to an empty track, so we must add this gap.
+
+        The last case is to consider the gap of non-empty tracks after the
+        GridSpan end line, if it points to an empty track.
+
+        There are several cases that are not considered or incorrectly computed.
+        This patch addresses those cases; basically, we should only consider gaps
+        when there are non-empty tracks before and after the collapsed tracks.
+        Additionally, we should avoid duplicating the gaps size adding both,
+        before and after non-empty track's gap.
+
+        No new tests, this change is covered by current tests and make several cases to pass now.
+
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::guttersSize const):
+
+2018-11-26  Manuel Rego Casasnovas  <rego@igalia.com>
+
+        [css-grid] Fix grid container sizing under min-content height
+        https://bugs.webkit.org/show_bug.cgi?id=191889
+
+        Reviewed by Javier Fernandez.
+
+        The spec is quite clear
+        (https://drafts.csswg.org/css-sizing/#valdef-width-min-content):
+          "min-content
+             If specified for the inline axis, use the min-content inline size;
+             otherwise behaves as the property’s initial value."
+
+        So if a grid container has "height: min-content" it should behave
+        the same than with "height: auto".
+
+        The patch removes computeIntrinsicLogicalContentHeightUsing() in
+        RenderGrid as we don't need a custom one anymore.
+        We can also get rid of m_minContentHeight and m_maxContentHeight
+        attributes that were only used for this logic.
+
+        Test: fast/css-grid-layout/grid-track-sizing-with-orthogonal-flows.html
+              fast/css-grid-layout/maximize-tracks-definite-indefinite-height.html
+              imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-sizing-constraints-001.html
+
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::layoutBlock):
+        (WebCore::RenderGrid::computeIntrinsicLogicalWidths const):
+        (WebCore::RenderGrid::computeTrackSizesForIndefiniteSize const):
+        * rendering/RenderGrid.h:
+
+2018-11-25  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Remove PointInContainingBlock and PositionInContainingBlock
+        https://bugs.webkit.org/show_bug.cgi?id=191954
+
+        Reviewed by Antti Koivisto.
+
+        Use Point and Position instead. Points and positions are by default in the containing block's coordinate system.
+
+        * layout/FormattingContextGeometry.cpp:
+        (WebCore::Layout::contentHeightForFormattingContextRoot):
+        * layout/LayoutUnits.h:
+        (WebCore::Layout::Position::operator LayoutUnit const):
+        (WebCore::Layout::operator<):
+        (WebCore::Layout::operator==):
+        * layout/floats/FloatAvoider.cpp:
+        (WebCore::Layout::FloatAvoider::FloatAvoider):
+        (WebCore::Layout::FloatAvoider::setHorizontalConstraints):
+        (WebCore::Layout::FloatAvoider::horizontalPositionCandidate):
+        (WebCore::Layout::FloatAvoider::initialHorizontalPosition const):
+        * layout/floats/FloatBox.cpp:
+        (WebCore::Layout::FloatBox::horizontalPositionCandidate):
+        (WebCore::Layout::FloatBox::verticalPositionCandidate):
+        (WebCore::Layout::FloatBox::initialVerticalPosition const):
+        * layout/floats/FloatingContext.cpp:
+        (WebCore::Layout::FloatingContext::positionForFloat const):
+        (WebCore::Layout::FloatingContext::positionForFloatAvoiding const):
+        (WebCore::Layout::FloatingContext::verticalPositionWithClearance const):
+        (WebCore::Layout::FloatingContext::floatingPosition const):
+        (WebCore::Layout::FloatingPair::horizontalConstraints const):
+        (WebCore::Layout::FloatingPair::bottom const):
+        * layout/floats/FloatingContext.h:
+        * layout/floats/FloatingState.cpp:
+        (WebCore::Layout::FloatingState::constraints const):
+        (WebCore::Layout::FloatingState::bottom const):
+        * layout/floats/FloatingState.h:
+        (WebCore::Layout::FloatingState::FloatItem::bottom const):
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::initializeNewLine const):
+
+2018-11-25  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Rename Layout::Position to Layout::Point
+        https://bugs.webkit.org/show_bug.cgi?id=191950
+
+        Reviewed by Antti Koivisto.
+
+        It actually represents a point.
+
+        * layout/FormattingContext.cpp:
+        (WebCore::Layout::FormattingContext::mapTopLeftToAncestor):
+        (WebCore::Layout::FormattingContext::mapCoordinateToAncestor):
+        * layout/FormattingContext.h:
+        * layout/LayoutUnits.h:
+        (WebCore::Layout::Point::Point):
+        (WebCore::Layout::Point::moveBy):
+        (WebCore::Layout::Position::operator LayoutPoint const): Deleted.
+        (WebCore::Layout::Position::Position): Deleted.
+        (WebCore::Layout::Position::moveBy): Deleted.
+        * layout/blockformatting/BlockFormattingContext.h:
+        * layout/blockformatting/BlockFormattingContextGeometry.cpp:
+        (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
+        * layout/floats/FloatingState.cpp:
+        (WebCore::Layout::FloatingState::constraints const):
+
+2018-11-25  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] Floating code should use typed positions (PositionInContextRoot).
+        https://bugs.webkit.org/show_bug.cgi?id=191949
+
+        Reviewed by Antti Koivisto.
+
+        Use PositionInContextRoot instead of LayoutUnit.
+
+        * layout/floats/FloatingState.cpp:
+        (WebCore::Layout::FloatingState::constraints const):
+        (WebCore::Layout::FloatingState::bottom const):
+        * layout/floats/FloatingState.h:
+        (WebCore::Layout::FloatingState::leftBottom const):
+        (WebCore::Layout::FloatingState::rightBottom const):
+        (WebCore::Layout::FloatingState::bottom const):
+
+2018-11-25  Zalan Bujtas  <zalan@apple.com>
+
+        Fix build after r238472.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::runWidth):
+        * layout/inlineformatting/InlineLineBreaker.cpp:
+        (WebCore::Layout::InlineLineBreaker::textWidth const):
+
+2018-11-25  Tim Horton  <timothy_horton@apple.com>
+
+        Make it possible to insert editable images with a gesture
+        https://bugs.webkit.org/show_bug.cgi?id=191937
+
+        Reviewed by Wenson Hsieh.
+
+        Tests:
+            editing/images/redo-insert-editable-image-maintains-strokes.html,
+            editing/images/undo-insert-editable-image.html,
+            editing/images/basic-editable-image-from-execCommand.html
+
+        * Sources.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * Source/WebCore/editing/EditorCommand.cpp:
+        * Source/WebCore/en.lproj/Localizable.strings:
+        * editing/EditAction.h:
+        * editing/Editor.cpp:
+        (WebCore::Editor::insertEditableImage):
+        * editing/Editor.h:
+        * editing/InsertEditableImageCommand.cpp: Added.
+        (WebCore::InsertEditableImageCommand::InsertEditableImageCommand):
+        (WebCore::InsertEditableImageCommand::doApply):
+        * editing/InsertEditableImageCommand.h: Added.
+        (WebCore::InsertEditableImageCommand::create):
+        * editing/VisibleSelection.cpp:
+        Add an editor command that inserts an editable image.
+        It will likely get a bit more complicated, but for now it just inserts
+        a 100% by 300px editable image.
+
+2018-11-24  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        [Cocoa] Fix a few localizable string descriptions in WebEditCommandProxy.cpp and WebEditorClient.mm
+        https://bugs.webkit.org/show_bug.cgi?id=191945
+
+        Reviewed by Anders Carlsson.
+
+        Run `update-webkit-localizable-strings`.
+
+        * en.lproj/Localizable.strings:
+
+2018-11-24  Sam Weinig  <sam@webkit.org>
+
+        Remove now unnecessary specialized ListHashSet from InlineItem.h
+        https://bugs.webkit.org/show_bug.cgi?id=191946
+
+        Reviewed by Zalan Bujtas.
+
+        Now that ListHashSet supports raw pointer overloads for smart pointers,
+        we can fix the FIXME in InlineItem.h and remove the specialized ListHashSet
+        and ListHashSet::find calls.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::runWidth):
+        * layout/inlineformatting/InlineItem.h:
+        (WebCore::Layout::InlineItemHashFunctions::hash): Deleted.
+        (WebCore::Layout::InlineItemHashFunctions::equal): Deleted.
+        (WebCore::Layout::InlineItemHashTranslator::hash): Deleted.
+        (WebCore::Layout::InlineItemHashTranslator::equal): Deleted.
+        * layout/inlineformatting/InlineLineBreaker.cpp:
+        (WebCore::Layout::InlineLineBreaker::textWidth const):
+
+2018-11-24  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        [Cocoa] Add WKWebView SPI to trigger and remove data detection
+        https://bugs.webkit.org/show_bug.cgi?id=191918
+        <rdar://problem/36185051>
+
+        Reviewed by Tim Horton.
+
+        Add a helper method on DataDetection to remove all data detected links in the given document. See WebKit changes
+        for more detail.
+
+        * editing/cocoa/DataDetection.h:
+        * editing/cocoa/DataDetection.mm:
+        (WebCore::DataDetection::removeDataDetectedLinksInDocument):
+
+2018-11-24  Andy Estes  <aestes@apple.com>
+
+        [Cocoa] SOFT_LINK_CLASS_FOR_{HEADER,SOURCE} should generate a more concise getter function
+        https://bugs.webkit.org/show_bug.cgi?id=191899
+
+        Reviewed by Dean Jackson.
+
+        * editing/cocoa/DataDetection.mm:
+        * editing/cocoa/FontAttributesCocoa.mm:
+        * editing/cocoa/FontShadowCocoa.mm:
+        * platform/cocoa/DataDetectorsCoreSoftLink.h:
+        * platform/graphics/cocoa/ColorCocoa.mm:
+        * platform/ios/PlatformScreenIOS.mm:
+
+2018-11-23  Jiewen Tan  <jiewen_tan@apple.com>
+
+        [WebAuthN] Enable Web Authentication as an experimental feature for macOS
+        https://bugs.webkit.org/show_bug.cgi?id=191932
+        rdar://problem/46225210
+
+        Reviewed by Brent Fulgham.
+
+        Add myself to the contact of Web Authentication.
+
+        * features.json:
+
+2018-11-23  Ryosuke Niwa  <rniwa@webkit.org>
+
+        REGRESSION (r236785): Nullptr crash in StyledMarkupAccumulator::traverseNodesForSerialization
+        https://bugs.webkit.org/show_bug.cgi?id=191921
+
+        Reviewed by Dean Jackson.
+
+        The bug was caused by traverseNodesForSerialization not being able to traverse past the end of shadow root
+        when skipping children of a node for which enterNode returns false because  it was using NodeTraversal's
+        nextSkippingChildren instead of a member function which supports traversing the composed tree.
+
+        Fixed the crash by using variant of nextSkippingChildren which knows how to traverse past the last node
+        in a shadow tree. Also added more assertions to help debug issues like this in the future.
+
+        Test: editing/pasteboard/copy-paste-across-shadow-boundaries-5.html
+
+        * editing/markup.cpp:
+        (WebCore::StyledMarkupAccumulator::traverseNodesForSerialization):
+
+2018-11-22  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Updating href on textPath doesn't update its rendering
+        https://bugs.webkit.org/show_bug.cgi?id=191920
+
+        Reviewed by Dean Jackson.
+
+        Fixed the bug by invalidating the RenderSVGResource in SVGTextPathElement::svgAttributeChanged
+        in addition to updating the pending resources.
+
+        Test: svg/text/textpath-reference-update.html
+
+        * svg/SVGTextPathElement.cpp:
+        (WebCore::SVGTextPathElement::svgAttributeChanged):
+
+2018-11-23  Ross Kirsling  <ross.kirsling@sony.com>
+
+        Introduce user-defined literal for LayoutUnit
+        https://bugs.webkit.org/show_bug.cgi?id=191915
+
+        Reviewed by Dean Jackson.
+
+        * platform/LayoutUnit.h:
+        Introduce a user-defined literal for LayoutUnit, _lu, replacing the existing "fromPixel" factory function.
+
+        * layout/FormattingContextGeometry.cpp:
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        * layout/inlineformatting/InlineLineBreaker.cpp:
+        * page/FrameView.cpp:
+        * page/FrameViewLayoutContext.h:
+        * page/Page.cpp:
+        * page/SpatialNavigation.h:
+        * platform/ScrollableArea.cpp:
+        * rendering/EllipsisBox.cpp:
+        * rendering/FlexibleBoxAlgorithm.cpp:
+        * rendering/FloatingObjects.cpp:
+        * rendering/GridLayoutFunctions.cpp:
+        * rendering/GridTrackSizingAlgorithm.cpp:
+        * rendering/InlineFlowBox.cpp:
+        * rendering/InlineTextBox.cpp:
+        * rendering/LayoutState.h:
+        * rendering/LogicalSelectionOffsetCaches.h:
+        * rendering/RenderBlock.cpp:
+        * rendering/RenderBlock.h:
+        * rendering/RenderBlockFlow.cpp:
+        * rendering/RenderBlockFlow.h:
+        * rendering/RenderBlockLineLayout.cpp:
+        * rendering/RenderBox.cpp:
+        * rendering/RenderBoxModelObject.cpp:
+        * rendering/RenderDeprecatedFlexibleBox.cpp:
+        * rendering/RenderDeprecatedFlexibleBox.h:
+        * rendering/RenderElement.cpp:
+        * rendering/RenderFlexibleBox.cpp:
+        * rendering/RenderFlexibleBox.h:
+        * rendering/RenderFragmentContainer.cpp:
+        * rendering/RenderFragmentedFlow.cpp:
+        * rendering/RenderGrid.cpp:
+        * rendering/RenderGrid.h:
+        * rendering/RenderImage.cpp:
+        * rendering/RenderLayer.cpp:
+        * rendering/RenderListMarker.cpp:
+        * rendering/RenderMultiColumnFlow.cpp:
+        * rendering/RenderMultiColumnSet.cpp:
+        * rendering/RenderReplaced.cpp:
+        * rendering/RenderReplaced.h:
+        * rendering/RenderRubyRun.h:
+        * rendering/RenderTable.cpp:
+        * rendering/RenderTable.h:
+        * rendering/RenderTableSection.cpp:
+        * rendering/RenderTheme.cpp:
+        * rendering/RenderTreeAsText.cpp:
+        * rendering/RenderView.cpp:
+        * rendering/RootInlineBox.h:
+        * rendering/SimpleLineLayout.cpp:
+        * rendering/SimpleLineLayoutPagination.cpp:
+        * rendering/TableLayout.h:
+        * rendering/line/BreakingContext.h:
+        * rendering/line/LineLayoutState.h:
+        * rendering/line/LineWidth.h:
+        * rendering/mathml/MathOperator.cpp:
+        * rendering/mathml/MathOperator.h:
+        * rendering/mathml/RenderMathMLBlock.h:
+        * rendering/mathml/RenderMathMLFraction.cpp:
+        * rendering/mathml/RenderMathMLFraction.h:
+        * rendering/mathml/RenderMathMLMath.cpp:
+        * rendering/mathml/RenderMathMLMath.h:
+        * rendering/mathml/RenderMathMLMenclose.h:
+        * rendering/mathml/RenderMathMLOperator.cpp:
+        * rendering/mathml/RenderMathMLOperator.h:
+        * rendering/mathml/RenderMathMLPadded.h:
+        * rendering/mathml/RenderMathMLRoot.cpp:
+        * rendering/mathml/RenderMathMLRoot.h:
+        * rendering/mathml/RenderMathMLRow.h:
+        * rendering/mathml/RenderMathMLScripts.cpp:
+        * rendering/mathml/RenderMathMLScripts.h:
+        * rendering/mathml/RenderMathMLSpace.h:
+        * rendering/mathml/RenderMathMLToken.cpp:
+        * rendering/mathml/RenderMathMLToken.h:
+        * rendering/mathml/RenderMathMLUnderOver.h:
+        * rendering/shapes/ShapeOutsideInfo.cpp:
+        * rendering/style/CollapsedBorderValue.h:
+        Update all instances of LayoutUnit(), LayoutUnit(0), LayoutUnit { 0 }, etc. and add any other
+        literal conversions that will be needed when making non-int LayoutUnit constructors explicit.
+        For good measure, also mark all default values for LayoutUnit parameters.
+
+2018-11-23  Jim Mason  <jmason@ibinx.com>
+
+        [GTK] Scrollbars not following gtk-primary-button-warps-slider setting
+        https://bugs.webkit.org/show_bug.cgi?id=191067
+
+        Updated code per the style guide, removed unreachable break (non-semantic change)
+
+        Reviewed by Michael Catanzaro.
+
+        * platform/gtk/ScrollbarThemeGtk.cpp:
+        (WebCore::ScrollbarThemeGtk::handleMousePressEvent):
+
+2018-11-23  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        Enable drag and drop support for iOSMac
+        https://bugs.webkit.org/show_bug.cgi?id=191818
+        <rdar://problem/43907454>
+
+        Reviewed by Dean Jackson.
+
+        Enables drag and drop by default on iOSMac by switching on ENABLE_DATA_INTERACTION and ENABLE_DRAG_SUPPORT. This
+        enables support for dragging links, text selections, and images, though many advanced features (e.g. custom
+        pasteboard data) will require additional support from the platform.
+
+        * Configurations/FeatureDefines.xcconfig:
+        * platform/ios/PlatformPasteboardIOS.mm:
+        (WebCore::PlatformPasteboard::informationForItemAtIndex):
+        (WebCore::registerItemToPasteboard):
+        (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
+        * platform/ios/WebItemProviderPasteboard.mm:
+        (-[WebItemProviderLoadResult canBeRepresentedAsFileUpload]):
+        (-[WebItemProviderPasteboard numberOfFiles]):
+
+        Disable codepaths which attempt to access or set `teamData` or `preferredPresentationStyle` on `NSItemProvider`
+        in iOSMac, since these are currently unimplemented.
+
+2018-11-23  Zalan Butjas  <zalan@apple.com>
+
+        [LFC][IFC] Add support for variable height runs.
+        https://bugs.webkit.org/show_bug.cgi?id=191925
+
+        Reviewed by Antti Koivisto.
+
+        https://www.w3.org/TR/CSS22/visudet.html#inline-box-height
+
+        10.8 Line height calculations: the 'line-height' and 'vertical-align' properties
+
+        The height of each inline-level box in the line box is calculated. For replaced elements, inline-block elements,
+        and inline-table elements, this is the height of their margin box; for inline boxes, this is their 'line-height'.
+
+        The line box height is the distance between the uppermost box top and the lowermost box bottom.
+
+        The minimum height consists of a minimum height above the baseline and a minimum depth below it,
+        exactly as if each line box starts with a zero-width inline box with the element's font and line height properties.
+        We call that imaginary box a "strut." (The name is inspired by TeX.).
+
+        Test: fast/inline/inline-content-with-image-simple.html
+
+        * layout/Verification.cpp:
+        (WebCore::Layout::checkForMatchingNonTextRuns):
+        (WebCore::Layout::checkForMatchingTextRuns):
+        (WebCore::Layout::outputMismatchingComplexLineInformationIfNeeded):
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::initializeNewLine const):
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        (WebCore::Layout::InlineFormattingContext::createFinalRuns const):
+        (WebCore::Layout::InlineFormattingContext::appendContentToLine const):
+        (WebCore::Layout::InlineFormattingContext::layoutInlineContent const):
+        * layout/inlineformatting/InlineFormattingContext.h:
+        (WebCore::Layout::InlineFormattingContext::Line::logicalHeight const):
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::justifyRuns):
+        * layout/inlineformatting/InlineRun.h:
+        (WebCore::Layout::InlineRun::logicalWidth const):
+        (WebCore::Layout::InlineRun::logicalHeight const):
+        (WebCore::Layout::InlineRun::setLogicalWidth):
+        (WebCore::Layout::InlineRun::width const): Deleted.
+        (WebCore::Layout::InlineRun::height const): Deleted.
+        (WebCore::Layout::InlineRun::setWidth): Deleted.
+        * layout/inlineformatting/Line.cpp:
+        (WebCore::Layout::InlineFormattingContext::Line::init):
+        (WebCore::Layout::InlineFormattingContext::Line::appendContent):
+        (WebCore::Layout::InlineFormattingContext::Line::close):
+        * layout/layouttree/LayoutTreeBuilder.cpp:
+        (WebCore::Layout::outputInlineRuns):
+
+2018-11-23  Antti Koivisto  <antti@apple.com>
+
+        UI side compositing doesn't paint on Mac
+        https://bugs.webkit.org/show_bug.cgi?id=191908
+
+        Reviewed by Tim Horton.
+
+        For clarity put RGB10 and RGB10A8 formats behind PLATFORM(IOS_FAMILY). They are not supported on Mac.
+
+        * platform/graphics/cocoa/IOSurface.h:
+        * platform/graphics/cocoa/IOSurface.mm:
+        (WebCore::IOSurface::IOSurface):
+        (WebCore::IOSurface::ensurePlatformContext):
+        (WebCore::IOSurface::format const):
+        (WebCore::operator<<):
+
+2018-11-23  Javier Fernandez  <jfernandez@igalia.com>
+
+        [css-grid] Implement Baseline Alignment for grid items
+        https://bugs.webkit.org/show_bug.cgi?id=145566
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        This patch impements the Baseline Self-Alignment feature for grid items according to
+        the CSS Box Alignment specification [1].
+
+        This new layout logic is handled by the Self-Alignment (justify-self and align-self)
+        and Default-Alignment (justify-items and align-items) CSS properties.
+
+        This feature allows users to align the grid items sharing a Baseline Alignment Context,
+        either row or column contexts, based on their respective baselines.
+
+        [1] https://drafts.csswg.org/css-align-3/#baseline-align-self
+
+        Tests: fast/css-grid-layout/grid-self-baseline-and-flex-tracks-with-indefinite-container-crash.html
+               fast/css-grid-layout/grid-self-baseline-and-flexible-tracks-should-not-crash.html
+               fast/css-grid-layout/grid-self-baseline-and-item-relayout-should-not-crash.html
+               fast/css-grid-layout/grid-self-baseline-and-relative-sized-items-crash.html
+               fast/css-grid-layout/grid-self-baseline-and-relative-sized-tracks-crash.html
+               fast/css-grid-layout/grid-self-baseline-followed-by-item-style-change-should-not-crash.html
+
+        * Sources.txt:
+        * rendering/GridBaselineAlignment.cpp: Added.
+        (WebCore::GridBaselineAlignment::marginOverForChild const):
+        (WebCore::GridBaselineAlignment::marginUnderForChild const):
+        (WebCore::GridBaselineAlignment::logicalAscentForChild const):
+        (WebCore::GridBaselineAlignment::ascentForChild const):
+        (WebCore::GridBaselineAlignment::descentForChild const):
+        (WebCore::GridBaselineAlignment::isDescentBaselineForChild const):
+        (WebCore::GridBaselineAlignment::isHorizontalBaselineAxis const):
+        (WebCore::GridBaselineAlignment::isOrthogonalChildForBaseline const):
+        (WebCore::GridBaselineAlignment::isParallelToBaselineAxisForChild const):
+        (WebCore::GridBaselineAlignment::baselineGroupForChild const):
+        (WebCore::GridBaselineAlignment::updateBaselineAlignmentContext):
+        (WebCore::GridBaselineAlignment::baselineOffsetForChild const):
+        (WebCore::GridBaselineAlignment::clear):
+        (WebCore::BaselineGroup::BaselineGroup):
+        (WebCore::BaselineGroup::update):
+        (WebCore::BaselineGroup::isOppositeBlockFlow const):
+        (WebCore::BaselineGroup::isOrthogonalBlockFlow const):
+        (WebCore::BaselineGroup::isCompatible const):
+        (WebCore::BaselineContext::BaselineContext):
+        (WebCore::BaselineContext::sharedGroup const):
+        (WebCore::BaselineContext::updateSharedGroup):
+        (WebCore::BaselineContext::findCompatibleSharedGroup):
+        * rendering/GridBaselineAlignment.h: Added.
+        (WebCore::BaselineGroup::maxAscent const):
+        (WebCore::BaselineGroup::maxDescent const):
+        (WebCore::BaselineGroup::size const):
+        (WebCore::isBaselinePosition):
+        (WebCore::GridBaselineAlignment::setBlockFlow):
+        * rendering/GridLayoutFunctions.h:
+        * rendering/GridTrackSizingAlgorithm.cpp:
+        (WebCore::gridAxisForDirection):
+        (WebCore::gridDirectionForAxis):
+        (WebCore::GridTrackSizingAlgorithm::availableSpace const):
+        (WebCore::GridTrackSizingAlgorithm::isIntrinsicSizedGridArea const):
+        (WebCore::GridTrackSizingAlgorithmStrategy::logicalHeightForChild const):
+        (WebCore::GridTrackSizingAlgorithmStrategy::minContentForChild const):
+        (WebCore::GridTrackSizingAlgorithmStrategy::maxContentForChild const):
+        (WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
+        (WebCore::GridTrackSizingAlgorithm::canParticipateInBaselineAlignment const):
+        (WebCore::GridTrackSizingAlgorithm::participateInBaselineAlignment const):
+        (WebCore::GridTrackSizingAlgorithm::updateBaselineAlignmentContext):
+        (WebCore::GridTrackSizingAlgorithm::baselineOffsetForChild const):
+        (WebCore::GridTrackSizingAlgorithm::clearBaselineItemsCache):
+        (WebCore::GridTrackSizingAlgorithm::cacheBaselineAlignedItem):
+        (WebCore::GridTrackSizingAlgorithm::copyBaselineItemsCache):
+        (WebCore::GridTrackSizingAlgorithm::setup):
+        (WebCore::GridTrackSizingAlgorithm::computeBaselineAlignmentContext):
+        * rendering/GridTrackSizingAlgorithm.h:
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::firstLineBaseline const):
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::layoutBlock):
+        (WebCore::RenderGrid::computeIntrinsicLogicalWidths const):
+        (WebCore::RenderGrid::placeItemsOnGrid const):
+        (WebCore::RenderGrid::performGridItemsPreLayout const):
+        (WebCore::synthesizedBaselineFromMarginBox):
+        (WebCore::RenderGrid::isBaselineAlignmentForChild const):
+        (WebCore::RenderGrid::baselinePosition const):
+        (WebCore::RenderGrid::firstLineBaseline const):
+        (WebCore::RenderGrid::inlineBlockBaseline const):
+        (WebCore::RenderGrid::columnAxisBaselineOffsetForChild const):
+        (WebCore::RenderGrid::rowAxisBaselineOffsetForChild const):
+        (WebCore::RenderGrid::columnAxisOffsetForChild const):
+        (WebCore::RenderGrid::rowAxisOffsetForChild const):
+        * rendering/RenderGrid.h:
+
+2018-11-22  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        Address post-review feedback after r238438
+        https://bugs.webkit.org/show_bug.cgi?id=191913
+
+        Reviewed by Ryosuke Niwa.
+
+        Replace `bool` arguments to `FrameSelection::setSelectedRange`, `Editor::replaceSelectionWithText`, and
+        `Editor::replaceSelectionWithFragment` with `enum class`es instead. In particular, introduce the following:
+
+        FrameSelection::ShouldCloseTyping { No, Yes }
+        Editor::SelectReplacement { No, Yes }
+        Editor::SmartReplace { No, Yes }
+        Editor::MatchStyle { No, Yes }
+
+        * accessibility/AccessibilityObject.cpp:
+        (WebCore::AccessibilityObject::selectText):
+        * editing/Editor.cpp:
+        (WebCore::Editor::handleTextEvent):
+        (WebCore::Editor::replaceSelectionWithFragment):
+        (WebCore::Editor::replaceSelectionWithText):
+        (WebCore::Editor::setComposition):
+        (WebCore::Editor::markMisspellingsAfterTypingToWord):
+        (WebCore::Editor::changeBackToReplacedString):
+        (WebCore::Editor::transpose):
+        (WebCore::Editor::insertAttachment):
+
+        At various call sites, replace boolean arguments with named enums.
+
+        * editing/Editor.h:
+        * editing/EditorCommand.cpp:
+        (WebCore::expandSelectionToGranularity):
+        (WebCore::executeDeleteToMark):
+        (WebCore::executeSelectToMark):
+        * editing/FrameSelection.cpp:
+        (WebCore::FrameSelection::setSelectedRange):
+        * editing/FrameSelection.h:
+        * page/Page.cpp:
+        (WebCore::replaceRanges):
+
+        Avoid a bit of ref-count churn, and adjust a few functions to take `const Vector&`s instead of `Vector&&`s.
+
+        (WebCore::Page::replaceRangesWithText):
+        (WebCore::Page::replaceSelectionWithText):
+        * page/Page.h:
+
+2018-11-21  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Modernize SVGURIReference::targetElementFromIRIString
+        https://bugs.webkit.org/show_bug.cgi?id=191898
+
+        Reviewed by Daniel Bates.
+
+        Made targetElementFromIRIString return an element and the fragment identifier,
+        and merged urlFromIRIStringWithFragmentIdentifier into it.
+
+        Also replaced the code computing the full URL using the base URL after removing
+        the fragment identifier and rejoining it later with a single call to completeURL.
+
+        No new tests since there should be no observable behavior change.
+
+        * accessibility/AccessibilitySVGElement.cpp:
+        (WebCore::AccessibilitySVGElement::targetForUseElement const):
+        * css/CSSCursorImageValue.cpp:
+        (WebCore::CSSCursorImageValue::updateCursorElement):
+        * rendering/svg/RenderSVGTextPath.cpp:
+        (WebCore::RenderSVGTextPath::layoutPath const):
+        * svg/SVGAltGlyphElement.cpp:
+        (WebCore::SVGAltGlyphElement::hasValidGlyphElements const):
+        * svg/SVGFEImageElement.cpp:
+        (WebCore::SVGFEImageElement::buildPendingResource):
+        * svg/SVGGlyphRefElement.cpp:
+        (WebCore::SVGGlyphRefElement::hasValidGlyphElement const):
+        * svg/SVGLinearGradientElement.cpp:
+        (WebCore::SVGLinearGradientElement::collectGradientAttributes):
+        * svg/SVGMPathElement.cpp:
+        (WebCore::SVGMPathElement::buildPendingResource):
+        (WebCore::SVGMPathElement::pathElement):
+        * svg/SVGRadialGradientElement.cpp:
+        (WebCore::SVGRadialGradientElement::collectGradientAttributes):
+        * svg/SVGTRefElement.cpp:
+        (WebCore::SVGTRefElement::detachTarget):
+        (WebCore::SVGTRefElement::buildPendingResource):
+        * svg/SVGTextPathElement.cpp:
+        (WebCore::SVGTextPathElement::buildPendingResource):
+        * svg/SVGURIReference.cpp:
+        (WebCore::SVGURIReference::targetElementFromIRIString):
+        (WebCore::urlFromIRIStringWithFragmentIdentifier): Deleted.
+        * svg/SVGURIReference.h:
+        * svg/SVGUseElement.cpp:
+        (WebCore::SVGUseElement::findTarget const):
+        * svg/animation/SVGSMILElement.cpp:
+        (WebCore::SVGSMILElement::buildPendingResource):
+        * svg/graphics/filters/SVGFEImage.cpp:
+        (WebCore::FEImage::referencedRenderer const):
+
+2018-11-22  Dean Jackson  <dino@apple.com>
+
+        Implement WebGPUQueue and device.getQueue()
+        https://bugs.webkit.org/show_bug.cgi?id=191911
+        <rdar://problem/46214871>
+
+        Reviewed by Antoine Quint.
+
+        Implement WebGPUDevice::getQueue(), which creates a WebGPUQueue
+        instance if necessary. Also link WebGPUQueue to the existing
+        GPUQueue object, and expose the label IDL property.
+
+        This patch is based on some work from Justin Fan.
+
+        Test: webgpu/queue-creation.html
+
+        * DerivedSources.make:
+        * Sources.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+            New files.
+
+        * Modules/webgpu/WebGPUCommandBuffer.h:
+        (WebCore::WebGPUCommandBuffer::commandBuffer const):
+            Expose a GPUCommandBuffer getter, used when submitting (even though
+            the actual GPU submission isn't implemented yet).
+
+        * Modules/webgpu/WebGPUDevice.cpp:
+        (WebCore::WebGPUDevice::getQueue):
+        * Modules/webgpu/WebGPUDevice.h:
+        * Modules/webgpu/WebGPUDevice.idl:
+            Implement getQueue().
+
+        * Modules/webgpu/WebGPUQueue.cpp:
+        (WebCore::WebGPUQueue::create):
+        (WebCore::WebGPUQueue::WebGPUQueue):
+        (WebCore::WebGPUQueue::submit):
+        * Modules/webgpu/WebGPUQueue.h:
+        (WebCore::WebGPUQueue::label const):
+        (WebCore::WebGPUQueue::setLabel):
+        * Modules/webgpu/WebGPUQueue.idl:
+            New class. Mostly sends stuff onto GPUQueue.
+
+        * bindings/js/WebCoreBuiltinNames.h:
+            Add WebGPUQueue.
+
+        * platform/graphics/gpu/GPUQueue.h:
+        * platform/graphics/gpu/cocoa/GPUQueueMetal.mm:
+        (WebCore::GPUQueue::create):
+        (WebCore::GPUQueue::submit):
+        (WebCore::GPUQueue::label const):
+        (WebCore::GPUQueue::setLabel const):
+            "label" getter/setter that uses
+            the underlying MTLCommandQueue label property, but prefixes
+            it with a WebKit identifier, so it can be correctly
+            identified in system crash logs as coming from WebGPU.
+
+2018-11-22  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Merge addNonBreakableStart/NonBreakableEnd calls.
+        https://bugs.webkit.org/show_bug.cgi?id=191903
+
+        Reviewed by Antti Koivisto.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+
+2018-11-22  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Offset formatting context root runs with horizontal margins.
+        https://bugs.webkit.org/show_bug.cgi?id=191900
+
+        Reviewed by Antti Koivisto.
+
+        Inline runs generated by formatting roots (inline-block) need to be adjusted with the horizontal margins.
+        (The test case has padding and border as well, but they are _inside_ the formatting context.)
+
+        Test: fast/inline/inline-content-and-nested-formatting-root-with-margin-left-right.html
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+
+2018-11-22  Simon Fraser  <simon.fraser@apple.com>
+
+        Extremely small monospace text size when SVG is included as an img
+        https://bugs.webkit.org/show_bug.cgi?id=191834
+
+        Reviewed by Myles C. Maxfield.
+
+        Give defaultFixedFontSize a reasonable default value in Settings, so that clients
+        who omit to set it (like SVGImages) don't get broken rendering.
+
+        Test: svg/text/monospace-text-size-in-img.html
+
+        * page/Settings.yaml:
+
+2018-11-22  Javier Fernandez  <jfernandez@igalia.com>
+
+        Tables with vertical-lr writing-mode doesn't apply correctly vertical-align: baseline
+        https://bugs.webkit.org/show_bug.cgi?id=191881
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        We should use the font's descent value when wriring-mode flips line flow (vertical-lr).
+
+        This change also fixes bug 170175, since Flexbox use the same code to determine the first
+        line baseline of a flex item.
+
+        Test: fast/writing-mode/vertical-align-table-baseline-latin.html
+
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::firstLineBaseline const):
+
+2018-11-21  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Phantom focus/blur events fire on clicking between text input fields when listening with addEventListener
+        https://bugs.webkit.org/show_bug.cgi?id=179990
+
+        Reviewed by Tim Horton.
+
+        The bug was caused by TemporarySelectionChange which is used by TextIndicator::createWithRange
+        to set and restore the selection putting the focus on the newly mouse-down'ed input element
+        and restoring the focus back to the input element which originally had the focus immediately.
+
+        Fixed the bug by avoiding to set the focus since only selection highlights need to be updated here.
+        Also made TemporarySelectionOption an enum class.
+
+        Unfortunately, no new tests since force click testing is broken :( See <rdar://problem/31301721>.
+
+        * editing/Editor.cpp:
+        (WebCore::TemporarySelectionChange::TemporarySelectionChange):
+        (WebCore::TemporarySelectionChange::~TemporarySelectionChange):
+        (WebCore::TemporarySelectionChange::setSelection): Extracted. Fixed the bug by adding
+        FrameSelection::DoNotSetFocus to the option when TemporarySelectionOption::DoNotSetFocus is set.
+        * editing/Editor.h:
+        * page/DragController.cpp:
+        (WebCore::DragController::performDragOperation):
+        * page/TextIndicator.cpp:
+        (WebCore::TextIndicator::createWithRange): Set TemporarySelectionOption::DoNotSetFocus.
+
+2018-11-21  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        [Cocoa] [WebKit2] Add support for replacing find-in-page text matches
+        https://bugs.webkit.org/show_bug.cgi?id=191786
+        <rdar://problem/45813871>
+
+        Reviewed by Ryosuke Niwa.
+
+        Add support for replacing Find-in-Page matches. See below for details. Covered by new layout tests as well as a
+        new API test.
+
+        Tests: editing/find/find-and-replace-adjacent-words.html
+               editing/find/find-and-replace-at-editing-boundary.html
+               editing/find/find-and-replace-basic.html
+               editing/find/find-and-replace-in-subframes.html
+               editing/find/find-and-replace-no-matches.html
+               editing/find/find-and-replace-noneditable-matches.html
+               editing/find/find-and-replace-replacement-text-input-events.html
+
+        API test: WebKit.FindAndReplace
+
+        * page/Page.cpp:
+        (WebCore::replaceRanges):
+        (WebCore::Page::replaceRangesWithText):
+
+        Add a helper that, given a list of Ranges, replaces each range with the given text. To do this, we first map
+        each Range to editing offsets within the topmost editable root for each Range. This results in a map of editable
+        root to list of editing offsets we need to replace. To apply the replacements, for each editable root in the
+        map, we iterate over each replacement range (i.e. an offset and length), set the current selection to contain
+        that replacement range, and use `Editor::replaceSelectionWithText`. To prevent prior text replacements from
+        clobbering the offsets of latter text replacement ranges, we also iterate backwards through text replacement
+        ranges when performing each replacement.
+
+        Likewise, we also apply text replacement to each editing container in backwards order: for nodes in the same
+        frame, we compare their position in the document, and for nodes in different frames, we instead compare their
+        frames in frame tree traversal order.
+
+        We map Ranges to editing offsets and back when performing text replacement because each text replacement may
+        split or merge text nodes, which causes adjacent Ranges to shrink or extend while replacing text. In an earlier
+        attempt to implement this, I simply iterated over each Range to replace and carried out text replacement for
+        each Range. This led to incorrect behavior in some cases, such as replacing adjacent matches. Thus, by computing
+        the set of text replacement offsets prior to replacing any text, we're able to target the correct ranges for
+        replacement.
+
+        (WebCore::Page::replaceSelectionWithText):
+
+        Add a helper method on Page to replace the current selection with some text. This simply calls out to
+        `Editor::replaceSelectionWithText`.
+
+        * page/Page.h:
+
+2018-11-21  Andy Estes  <aestes@apple.com>
+
+        [Cocoa] Create a soft-linking file for PassKit
+        https://bugs.webkit.org/show_bug.cgi?id=191875
+        <rdar://problem/46203215>
+
+        Reviewed by Myles Maxfield.
+
+        * Modules/applepay/cocoa/PaymentContactCocoa.mm: Removed SOFT_LINK macros and included PassKitSoftLink.h instead.
+        * Modules/applepay/cocoa/PaymentMerchantSessionCocoa.mm: Ditto.
+        * SourcesCocoa.txt: Removed @no-unify from PaymentMerchantSessionCocoa.mm.
+        * WebCore.xcodeproj/project.pbxproj: Removed PaymentMerchantSessionCocoa.mm from the WebCore target.
+        * rendering/RenderThemeCocoa.mm: Removed SOFT_LINK macros and included PassKitSoftLink.h instead.
+
+2018-11-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC] LayoutState should always be initialized with the initial containing block.
+        https://bugs.webkit.org/show_bug.cgi?id=191896
+
+        Reviewed by Antti Koivisto.
+
+        There should always be only one LayoutState per layout tree (it does not mean that layout always starts at the ICB).
+        The ICB is a special formatting context root because it does not have a parent formatting context. All the other formatting contexts
+        first need to be laid out (partially at least e.g margin) in their parent formatting context.
+        Having a non-null parent formatting context as root could lead to undefined behaviour.
+
+        * layout/LayoutFormattingState.cpp:
+        (WebCore::Layout::LayoutState::LayoutState):
+        (WebCore::Layout::LayoutState::initializeRoot): Deleted.
+        * layout/LayoutFormattingState.h:
+        * layout/Verification.cpp:
+        (WebCore::Layout::LayoutState::verifyAndOutputMismatchingLayoutTree const):
+        * page/FrameViewLayoutContext.cpp:
+        (WebCore::layoutUsingFormattingContext):
+
+2018-11-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Horizontal margins should be considered as non-breakable space
+        https://bugs.webkit.org/show_bug.cgi?id=191894
+
+        Reviewed by Antti Koivisto.
+
+        Like padding and border, horizontal margins also force run breaks and offset them.
+
+        Test: fast/inline/inline-content-with-margin-left-right.html
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+
+2018-11-20  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Mutation observers doesn't get notified of character data mutation made by the parser
+        https://bugs.webkit.org/show_bug.cgi?id=191874
+
+        Reviewed by Antti Koivisto.
+
+        Fixed the bug that CharacterData::parserAppendData was never notifying MutationObserver.
+
+        Test: fast/dom/MutationObserver/observe-parser-character-data-change.html
+
+        * dom/CharacterData.cpp:
+        (WebCore::CharacterData::parserAppendData):
+
+2018-11-21  Claudio Saavedra  <csaavedra@igalia.com>
+
+        [SOUP] Follow-up robustness improvements to the certificate decoder
+        https://bugs.webkit.org/show_bug.cgi?id=191892
+
+        Reviewed by Michael Catanzaro.
+
+        If at any point the certificate fails to be constructed from
+        the DER data, bail out. Likewise, if the certificate returned
+        is NULL, return false from the decoder to notify the failure
+        to decode it.
+
+        * platform/network/soup/CertificateInfo.h:
+        (WTF::Persistence::certificateFromCertificatesDataList):
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode):
+
+2018-11-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Border should be considered as non-breakable space
+        https://bugs.webkit.org/show_bug.cgi?id=191891
+
+        Reviewed by Antti Koivisto.
+
+        Like padding, border also forces run breaks and offsets them.
+
+        Test: fast/inline/inline-content-with-border-left-right.html
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+
+2018-11-21  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Use contains and containsAll in InlineFormattingContext::splitInlineRunIfNeeded consistently
+        https://bugs.webkit.org/show_bug.cgi?id=191890
+
+        Rearrange the comment numbers to match the logic below.
+
+        Reviewed by Antti Koivisto.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+
+2018-11-20  Dean Jackson  <dino@apple.com>
+
+        Move WebGPU platform code to platform/graphics/gpu
+        https://bugs.webkit.org/show_bug.cgi?id=191867
+        <rdar://problem/46190993>
+
+        Reviewed by Antoine Quint.
+
+        The underlying implementation of WebGPU doesn't need to live in
+        Modules, since it technically could be used by other parts of the system. It
+        makes more sense for it to be in platform/graphics/gpu.
+
+        Move...
+        - Modules/webgpu/GPU* -> platform/graphics/gpu
+        - Modules/webgpu/cocoa -> platform/graphics/gpu/cocoa
+        - platform/graphics/gpu/GPULegacy* -> platform/graphics/gpu/legacy/
+        - platform/graphics/gpu/cocoa/GPULegacy* -> platform/graphics/gpu/legacy/cocoa
+
+        * Sources.txt:
+        * SourcesCocoa.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * platform/graphics/gpu/GPUCommandBuffer.h: Renamed from Source/WebCore/Modules/webgpu/GPUCommandBuffer.h.
+        * platform/graphics/gpu/GPUDevice.cpp: Renamed from Source/WebCore/Modules/webgpu/GPUDevice.cpp.
+        (WebCore::GPUDevice::createShaderModule const):
+        (WebCore::GPUDevice::createRenderPipeline const):
+        (WebCore::GPUDevice::createCommandBuffer):
+        (WebCore::GPUDevice::getQueue):
+        * platform/graphics/gpu/GPUDevice.h: Renamed from Source/WebCore/Modules/webgpu/GPUDevice.h.
+        (WebCore::GPUDevice::platformDevice const):
+        * platform/graphics/gpu/GPUPipelineDescriptorBase.h: Renamed from Source/WebCore/Modules/webgpu/GPUPipelineDescriptorBase.h.
+        * platform/graphics/gpu/GPUPipelineStageDescriptor.h: Renamed from Source/WebCore/Modules/webgpu/GPUPipelineStageDescriptor.h.
+        * platform/graphics/gpu/GPUQueue.h: Renamed from Source/WebCore/Modules/webgpu/GPUQueue.h.
+        (WebCore::GPUQueue::platformQueue const):
+        * platform/graphics/gpu/GPURenderPipeline.h: Renamed from Source/WebCore/Modules/webgpu/GPURenderPipeline.h.
+        (WebCore::GPURenderPipeline::platformRenderPipeline const):
+        * platform/graphics/gpu/GPURenderPipelineDescriptor.h: Renamed from Source/WebCore/Modules/webgpu/GPURenderPipelineDescriptor.h.
+        * platform/graphics/gpu/GPUShaderModule.h: Renamed from Source/WebCore/Modules/webgpu/GPUShaderModule.h.
+        (WebCore::GPUShaderModule::platformShaderModule const):
+        * platform/graphics/gpu/GPUShaderModuleDescriptor.h: Renamed from Source/WebCore/Modules/webgpu/GPUShaderModuleDescriptor.h.
+        * platform/graphics/gpu/GPUSwapChain.h: Renamed from Source/WebCore/Modules/webgpu/GPUSwapChain.h.
+        (WebCore::GPUSwapChain::platformLayer const):
+        * platform/graphics/gpu/GPUTexture.h: Renamed from Source/WebCore/Modules/webgpu/GPUTexture.h.
+        * platform/graphics/gpu/GPUTextureFormatEnum.h: Renamed from Source/WebCore/Modules/webgpu/GPUTextureFormatEnum.h.
+        * platform/graphics/gpu/cocoa/GPUCommandBufferMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUCommandBufferMetal.mm.
+        (WebCore::GPUCommandBuffer::create):
+        (WebCore::GPUCommandBuffer::GPUCommandBuffer):
+        * platform/graphics/gpu/cocoa/GPUDeviceMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUDeviceMetal.mm.
+        (WebCore::GPUDevice::create):
+        (WebCore::GPUDevice::GPUDevice):
+        * platform/graphics/gpu/cocoa/GPUQueueMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUQueueMetal.mm.
+        (WebCore::GPUQueue::create):
+        (WebCore::GPUQueue::GPUQueue):
+        * platform/graphics/gpu/cocoa/GPURenderPipelineMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPURenderPipelineMetal.mm.
+        (WebCore::setFunctionsForPipelineDescriptor):
+        (WebCore::GPURenderPipeline::create):
+        (WebCore::GPURenderPipeline::GPURenderPipeline):
+        * platform/graphics/gpu/cocoa/GPUShaderModuleMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUShaderModuleMetal.mm.
+        (WebCore::GPUShaderModule::create):
+        (WebCore::GPUShaderModule::GPUShaderModule):
+        * platform/graphics/gpu/cocoa/GPUSwapChainMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUSwapChainMetal.mm.
+        (WebCore::GPUSwapChain::create):
+        (WebCore::GPUSwapChain::GPUSwapChain):
+        (WebCore::GPUSwapChain::setDevice):
+        (WebCore::platformTextureFormatForGPUTextureFormat):
+        (WebCore::GPUSwapChain::setFormat):
+        (WebCore::GPUSwapChain::reshape):
+        (WebCore::GPUSwapChain::getNextTexture):
+        (WebCore::GPUSwapChain::present):
+        * platform/graphics/gpu/cocoa/GPUTextureMetal.mm: Renamed from Source/WebCore/Modules/webgpu/cocoa/GPUTextureMetal.mm.
+        (WebCore::GPUTexture::create):
+        (WebCore::GPUTexture::GPUTexture):
+        (WebCore::GPUTexture::createDefaultTextureView):
+        * platform/graphics/gpu/legacy/GPULegacyBuffer.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyBuffer.cpp.
+        (WebCore::GPULegacyBuffer::~GPULegacyBuffer):
+        (WebCore::GPULegacyBuffer::length const):
+        * platform/graphics/gpu/legacy/GPULegacyBuffer.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyBuffer.h.
+        (WebCore::GPULegacyBuffer::contents const):
+        (WebCore::GPULegacyBuffer::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyCommandBuffer.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyCommandBuffer.cpp.
+        (WebCore::GPULegacyCommandBuffer::~GPULegacyCommandBuffer):
+        * platform/graphics/gpu/legacy/GPULegacyCommandBuffer.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyCommandBuffer.h.
+        (WebCore::GPULegacyCommandBuffer::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyCommandQueue.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyCommandQueue.cpp.
+        (WebCore::GPULegacyCommandQueue::~GPULegacyCommandQueue):
+        * platform/graphics/gpu/legacy/GPULegacyCommandQueue.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyCommandQueue.h.
+        (WebCore::GPULegacyCommandQueue::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyComputeCommandEncoder.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyComputeCommandEncoder.cpp.
+        (WebCore::GPULegacyComputeCommandEncoder::~GPULegacyComputeCommandEncoder):
+        * platform/graphics/gpu/legacy/GPULegacyComputeCommandEncoder.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyComputeCommandEncoder.h.
+        * platform/graphics/gpu/legacy/GPULegacyComputePipelineState.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyComputePipelineState.cpp.
+        (WebCore::GPULegacyComputePipelineState::~GPULegacyComputePipelineState):
+        * platform/graphics/gpu/legacy/GPULegacyComputePipelineState.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyComputePipelineState.h.
+        (WebCore::GPULegacyComputePipelineState::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyDepthStencilDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDepthStencilDescriptor.cpp.
+        (WebCore::GPULegacyDepthStencilDescriptor::~GPULegacyDepthStencilDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyDepthStencilDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDepthStencilDescriptor.h.
+        (WebCore::GPULegacyDepthStencilDescriptor::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyDepthStencilState.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDepthStencilState.cpp.
+        (WebCore::GPULegacyDepthStencilState::~GPULegacyDepthStencilState):
+        * platform/graphics/gpu/legacy/GPULegacyDepthStencilState.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDepthStencilState.h.
+        (WebCore::GPULegacyDepthStencilState::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyDevice.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDevice.cpp.
+        (WebCore::GPULegacyDevice::~GPULegacyDevice):
+        * platform/graphics/gpu/legacy/GPULegacyDevice.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDevice.h.
+        (WebCore::GPULegacyDevice::layer const):
+        (WebCore::GPULegacyDevice::metal const):
+        (WebCore::GPULegacyDevice::markLayerComposited const):
+        * platform/graphics/gpu/legacy/GPULegacyDrawable.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDrawable.cpp.
+        (WebCore::GPULegacyDrawable::~GPULegacyDrawable):
+        * platform/graphics/gpu/legacy/GPULegacyDrawable.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyDrawable.h.
+        * platform/graphics/gpu/legacy/GPULegacyEnums.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyEnums.h.
+        * platform/graphics/gpu/legacy/GPULegacyFunction.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyFunction.cpp.
+        (WebCore::GPULegacyFunction::~GPULegacyFunction):
+        * platform/graphics/gpu/legacy/GPULegacyFunction.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyFunction.h.
+        (WebCore::GPULegacyFunction::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyLibrary.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyLibrary.cpp.
+        (WebCore::GPULegacyLibrary::~GPULegacyLibrary):
+        * platform/graphics/gpu/legacy/GPULegacyLibrary.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyLibrary.h.
+        (WebCore::GPULegacyLibrary::metal const):
+        * platform/graphics/gpu/legacy/GPULegacyRenderCommandEncoder.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderCommandEncoder.cpp.
+        (WebCore::GPULegacyRenderCommandEncoder::~GPULegacyRenderCommandEncoder):
+        * platform/graphics/gpu/legacy/GPULegacyRenderCommandEncoder.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderCommandEncoder.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassAttachmentDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassAttachmentDescriptor.cpp.
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::~GPULegacyRenderPassAttachmentDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassAttachmentDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassAttachmentDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassColorAttachmentDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassColorAttachmentDescriptor.cpp.
+        (WebCore::GPULegacyRenderPassColorAttachmentDescriptor::~GPULegacyRenderPassColorAttachmentDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassColorAttachmentDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassColorAttachmentDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassDepthAttachmentDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassDepthAttachmentDescriptor.cpp.
+        (WebCore::GPULegacyRenderPassDepthAttachmentDescriptor::~GPULegacyRenderPassDepthAttachmentDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassDepthAttachmentDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassDepthAttachmentDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassDescriptor.cpp.
+        (WebCore::GPULegacyRenderPassDescriptor::~GPULegacyRenderPassDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPassDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPassDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineColorAttachmentDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineColorAttachmentDescriptor.cpp.
+        (WebCore::GPULegacyRenderPipelineColorAttachmentDescriptor::~GPULegacyRenderPipelineColorAttachmentDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineColorAttachmentDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineColorAttachmentDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineDescriptor.cpp.
+        (WebCore::GPULegacyRenderPipelineDescriptor::~GPULegacyRenderPipelineDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineDescriptor.h.
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineState.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineState.cpp.
+        (WebCore::GPULegacyRenderPipelineState::~GPULegacyRenderPipelineState):
+        * platform/graphics/gpu/legacy/GPULegacyRenderPipelineState.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyRenderPipelineState.h.
+        * platform/graphics/gpu/legacy/GPULegacySize.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacySize.h.
+        * platform/graphics/gpu/legacy/GPULegacyTexture.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyTexture.cpp.
+        (WebCore::GPULegacyTexture::~GPULegacyTexture):
+        * platform/graphics/gpu/legacy/GPULegacyTexture.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyTexture.h.
+        * platform/graphics/gpu/legacy/GPULegacyTextureDescriptor.cpp: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyTextureDescriptor.cpp.
+        (WebCore::GPULegacyTextureDescriptor::~GPULegacyTextureDescriptor):
+        * platform/graphics/gpu/legacy/GPULegacyTextureDescriptor.h: Renamed from Source/WebCore/platform/graphics/gpu/GPULegacyTextureDescriptor.h.
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyBufferMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyBufferMetal.mm.
+        (WebCore::GPULegacyBuffer::GPULegacyBuffer):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyCommandBufferMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyCommandBufferMetal.mm.
+        (WebCore::GPULegacyCommandBuffer::GPULegacyCommandBuffer):
+        (WebCore::GPULegacyCommandBuffer::presentDrawable const):
+        (WebCore::GPULegacyCommandBuffer::commit const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyCommandQueueMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyCommandQueueMetal.mm.
+        (WebCore::GPULegacyCommandQueue::GPULegacyCommandQueue):
+        (WebCore::GPULegacyCommandQueue::label const):
+        (WebCore::GPULegacyCommandQueue::setLabel const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyComputeCommandEncoderMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyComputeCommandEncoderMetal.mm.
+        (WebCore::MTLSizeMake):
+        (WebCore::GPULegacyComputeCommandEncoder::GPULegacyComputeCommandEncoder):
+        (WebCore::GPULegacyComputeCommandEncoder::setComputePipelineState const):
+        (WebCore::GPULegacyComputeCommandEncoder::setBuffer const):
+        (WebCore::GPULegacyComputeCommandEncoder::dispatch const):
+        (WebCore::GPULegacyComputeCommandEncoder::endEncoding const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyComputePipelineStateMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyComputePipelineStateMetal.mm.
+        (WebCore::GPULegacyComputePipelineState::GPULegacyComputePipelineState):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyDepthStencilDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyDepthStencilDescriptorMetal.mm.
+        (WebCore::GPULegacyDepthStencilDescriptor::GPULegacyDepthStencilDescriptor):
+        (WebCore::GPULegacyDepthStencilDescriptor::depthWriteEnabled const):
+        (WebCore::GPULegacyDepthStencilDescriptor::setDepthWriteEnabled const):
+        (WebCore::GPULegacyDepthStencilDescriptor::depthCompareFunction const):
+        (WebCore::GPULegacyDepthStencilDescriptor::setDepthCompareFunction const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyDepthStencilStateMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyDepthStencilStateMetal.mm.
+        (WebCore::GPULegacyDepthStencilState::GPULegacyDepthStencilState):
+        (WebCore::GPULegacyDepthStencilState::label const):
+        (WebCore::GPULegacyDepthStencilState::setLabel const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyDeviceMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyDeviceMetal.mm.
+        (WebCore::GPULegacyDevice::GPULegacyDevice):
+        (WebCore::GPULegacyDevice::disconnect):
+        (WebCore::GPULegacyDevice::reshape const):
+        (WebCore::GPULegacyDevice::platformLayer const):
+        (WebCore::GPULegacyDevice::operator! const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyDrawableMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyDrawableMetal.mm.
+        (WebCore::GPULegacyDrawable::GPULegacyDrawable):
+        (WebCore::GPULegacyDrawable::release):
+        (WebCore::GPULegacyDrawable::metal const):
+        (WebCore::GPULegacyDrawable::texture const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyFunctionMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyFunctionMetal.mm.
+        (WebCore::GPULegacyFunction::GPULegacyFunction):
+        (WebCore::GPULegacyFunction::name const):
+        (WebCore::GPULegacyFunction::operator! const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyLibraryMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyLibraryMetal.mm.
+        (WebCore::GPULegacyLibrary::GPULegacyLibrary):
+        (WebCore::GPULegacyLibrary::label const):
+        (WebCore::GPULegacyLibrary::setLabel const):
+        (WebCore::GPULegacyLibrary::functionNames const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderCommandEncoderMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderCommandEncoderMetal.mm.
+        (WebCore::GPULegacyRenderCommandEncoder::GPULegacyRenderCommandEncoder):
+        (WebCore::GPULegacyRenderCommandEncoder::setRenderPipelineState const):
+        (WebCore::GPULegacyRenderCommandEncoder::setDepthStencilState const):
+        (WebCore::GPULegacyRenderCommandEncoder::setVertexBuffer const):
+        (WebCore::GPULegacyRenderCommandEncoder::setFragmentBuffer const):
+        (WebCore::GPULegacyRenderCommandEncoder::drawPrimitives const):
+        (WebCore::GPULegacyRenderCommandEncoder::endEncoding const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPassAttachmentDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPassAttachmentDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::GPULegacyRenderPassAttachmentDescriptor):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::loadAction const):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::setLoadAction const):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::storeAction const):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::setStoreAction const):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::setTexture const):
+        (WebCore::GPULegacyRenderPassAttachmentDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPassColorAttachmentDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPassColorAttachmentDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPassColorAttachmentDescriptor::GPULegacyRenderPassColorAttachmentDescriptor):
+        (WebCore::GPULegacyRenderPassColorAttachmentDescriptor::clearColor const):
+        (WebCore::GPULegacyRenderPassColorAttachmentDescriptor::setClearColor const):
+        (WebCore::GPULegacyRenderPassColorAttachmentDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPassDepthAttachmentDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPassDepthAttachmentDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPassDepthAttachmentDescriptor::GPULegacyRenderPassDepthAttachmentDescriptor):
+        (WebCore::GPULegacyRenderPassDepthAttachmentDescriptor::clearDepth const):
+        (WebCore::GPULegacyRenderPassDepthAttachmentDescriptor::setClearDepth const):
+        (WebCore::GPULegacyRenderPassDepthAttachmentDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPassDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPassDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPassDescriptor::GPULegacyRenderPassDescriptor):
+        (WebCore::GPULegacyRenderPassDescriptor::colorAttachments const):
+        (WebCore::GPULegacyRenderPassDescriptor::depthAttachment const):
+        (WebCore::GPULegacyRenderPassDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPipelineColorAttachmentDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPipelineColorAttachmentDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPipelineColorAttachmentDescriptor::GPULegacyRenderPipelineColorAttachmentDescriptor):
+        (WebCore::GPULegacyRenderPipelineColorAttachmentDescriptor::pixelFormat const):
+        (WebCore::GPULegacyRenderPipelineColorAttachmentDescriptor::setPixelFormat const):
+        (WebCore::GPULegacyRenderPipelineColorAttachmentDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPipelineDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPipelineDescriptorMetal.mm.
+        (WebCore::GPULegacyRenderPipelineDescriptor::GPULegacyRenderPipelineDescriptor):
+        (WebCore::GPULegacyRenderPipelineDescriptor::depthAttachmentPixelFormat const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::setDepthAttachmentPixelFormat const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::setVertexFunction const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::setFragmentFunction const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::colorAttachments const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::reset const):
+        (WebCore::GPULegacyRenderPipelineDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyRenderPipelineStateMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyRenderPipelineStateMetal.mm.
+        (WebCore::GPULegacyRenderPipelineState::GPULegacyRenderPipelineState):
+        (WebCore::GPULegacyRenderPipelineState::label const):
+        (WebCore::GPULegacyRenderPipelineState::setLabel const):
+        (WebCore::GPULegacyRenderPipelineState::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyTextureDescriptorMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyTextureDescriptorMetal.mm.
+        (WebCore::GPULegacyTextureDescriptor::GPULegacyTextureDescriptor):
+        (WebCore::GPULegacyTextureDescriptor::width const):
+        (WebCore::GPULegacyTextureDescriptor::setWidth const):
+        (WebCore::GPULegacyTextureDescriptor::height const):
+        (WebCore::GPULegacyTextureDescriptor::setHeight const):
+        (WebCore::GPULegacyTextureDescriptor::sampleCount const):
+        (WebCore::GPULegacyTextureDescriptor::setSampleCount const):
+        (WebCore::GPULegacyTextureDescriptor::textureType const):
+        (WebCore::GPULegacyTextureDescriptor::setTextureType const):
+        (WebCore::GPULegacyTextureDescriptor::storageMode const):
+        (WebCore::GPULegacyTextureDescriptor::setStorageMode const):
+        (WebCore::GPULegacyTextureDescriptor::usage const):
+        (WebCore::GPULegacyTextureDescriptor::setUsage const):
+        (WebCore::GPULegacyTextureDescriptor::metal const):
+        * platform/graphics/gpu/legacy/cocoa/GPULegacyTextureMetal.mm: Renamed from Source/WebCore/platform/graphics/metal/GPULegacyTextureMetal.mm.
+        (WebCore::GPULegacyTexture::GPULegacyTexture):
+        (WebCore::GPULegacyTexture::width const):
+        (WebCore::GPULegacyTexture::height const):
+        (WebCore::GPULegacyTexture::metal const):
+
+2018-11-21  Adrian Perez de Castro  <aperez@igalia.com>
+
+        [SOUP] Certificate decoder always returns GByteArray with zero size
+        https://bugs.webkit.org/show_bug.cgi?id=191888
+
+        Reviewed by Žan Doberšek.
+
+        No new tests needed.
+
+        * platform/network/soup/CertificateInfo.h:
+        (WTF::Persistence::Coder<GRefPtr<GByteArray>>::decode): Add missing
+        call to g_byte_array_set_size() to make sure byteArray->len has the
+        correct value.
+
+2018-11-21  Zalan Butjas  <zalan@apple.com>
+
+        [LFC][IFC] Take nonBreakableStart/End into use.
+        https://bugs.webkit.org/show_bug.cgi?id=191873
+
+        Reviewed by Antti Koivisto.
+
+        Offset the final inline runs with the nonBreakableStart/End values.
+        (This patch also fixes relative positioned run verification.)
+
+        Test: fast/inline/inline-content-with-padding-left-right.html
+
+        * layout/Verification.cpp:
+        (WebCore::Layout::LayoutState::verifyAndOutputMismatchingLayoutTree const):
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+
+2018-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        REGRESSION(r237845): [cairo] Hyperlink underscore layout issue
+        https://bugs.webkit.org/show_bug.cgi?id=191630
+
+        Reviewed by Michael Catanzaro.
+
+        Only flip Y in GlyphToPathTranslator for ports using CG.
+
+        * platform/graphics/FontCascade.cpp:
+        (WebCore::GlyphToPathTranslator::GlyphToPathTranslator):
+
+2018-11-21  Alicia Boya García  <aboya@igalia.com>
+
+        [MSE][GStreamer] Refactor AppendPipeline deinitialization
+        https://bugs.webkit.org/show_bug.cgi?id=191759
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        AppendPipeline currently has a method, clearPlayerPrivate(), that the
+        client code uses to deinitialize most of the AppendPipeline... just
+        before actually destructing it in the next line of code.
+
+        Since at that point there should not be alive RefPtr's pointing to the
+        AppendPipeline there is no need for this kind of pre-deinitialization
+        in this usage pattern. Instead, we can just rely on C++ destructors,
+        cleaning the code a bit and removing the potential for the question
+        "what if `clearPlayerPrivate() has been called before?`": it has not.
+
+        Assertions have been added to ensure that there is only one alive
+        RefPtr pointing to AppendPipeline, therefore guaranteeing its immediate
+        destruction.
+
+        * platform/graphics/gstreamer/mse/AppendPipeline.cpp:
+        (WebCore::AppendPipeline::~AppendPipeline):
+        (WebCore::AppendPipeline::deinitialize):
+        (WebCore::AppendPipeline::clearPlayerPrivate): Deleted.
+        * platform/graphics/gstreamer/mse/AppendPipeline.h:
+        * platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
+        (WebCore::MediaPlayerPrivateGStreamerMSE::~MediaPlayerPrivateGStreamerMSE):
+        * platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.cpp:
+        (WebCore::MediaSourceClientGStreamerMSE::removedFromMediaSource):
+
+2018-11-20  Dean Jackson  <dino@apple.com>
+
+        Removing using namespace WebCore from WebLayer
+        https://bugs.webkit.org/show_bug.cgi?id=191870
+        <rdar://problem/46192206>
+
+        Rubber-stamped by Sam Weinig.
+
+        Remove "using namespace WebCore" from WebLayer.mm
+        because it will cause type clashes in unified source
+        builds.
+
+        * platform/graphics/mac/WebLayer.mm:
+        (-[WebLayer drawInContext:]):
+        (-[WebSimpleLayer setNeedsDisplay]):
+        (-[WebSimpleLayer setNeedsDisplayInRect:]):
+        (-[WebSimpleLayer display]):
+        (-[WebSimpleLayer drawInContext:]):
+
+2018-11-20  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Input element gains focus when a selectstart event listener on document prevents the default action
+        https://bugs.webkit.org/show_bug.cgi?id=191714
+        <rdar://problem/46174389>
+
+        Reviewed by Antti Koivisto.
+
+        The bug was caused by WebKit keep firing selectstart upon mousemove after the drag had already started
+        when preventDefault had been called in the previous firings of selectstart event. Because input element
+        has its own editable element and fires selectstart on the input element itself, which won't be prevented
+        by selectstart on docuemnt, this allowed the selection to be set inside the input element even though
+        the mouse cursor was simply passing over the input element after the drag had already started.
+
+        Fixed the bug by not firing selectstart if the default action had been prevented by the initial firing
+        of selectstart by setting m_mouseDownMayStartDrag to false. This also matches the behaviors of Chrome
+        and Firefox.
+
+        Test: fast/events/selectstart-prevent-default-should-not-focus-input.html
+
+        * page/EventHandler.cpp:
+        (WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
+        (WebCore::EventHandler::updateSelectionForMouseDrag):
+
+2018-11-20  Christopher Reid  <chris.reid@sony.com>
+
+        Remove the need for LocalizedStringsWPE.cpp
+        https://bugs.webkit.org/show_bug.cgi?id=191854
+
+        Reviewed by Michael Catanzaro.
+
+        No change in behavior.
+
+        Consolidate "Search the Web" as the default search context menu text on non-COCOA ports.
+
+        GTK, WPE, and non-CF WIN all had the same default localizedString function
+        of String::fromUTF8. Move that to LocalizedString.cpp as the default implementation
+        for all ports not using CF.
+
+        * en.lproj/Localizable.strings:
+        * platform/LocalizedStrings.cpp:
+        * platform/gtk/LocalizedStringsGtk.cpp:
+        * platform/win/LocalizedStringsWin.cpp:
+        * platform/wpe/LocalizedStringsWPE.cpp: Removed.
+
+2018-11-20  Zan Dobersek  <zdobersek@igalia.com>
+
+        Segfaults on https://terminalizer.com/
+        https://bugs.webkit.org/show_bug.cgi?id=191805
+
+        Reviewed by Michael Catanzaro.
+
+        In HarfBuzzFace, the CacheEntry's HashMap object that caches Unicode
+        codepoints and their corresponding glyph indices should allow zero
+        values as valid keys since zero is a valid Unicode codepoint.
+
+        This change enables properly caching zero codepoints, avoiding
+        repetitive additions to the HashMap cache that end up in a crash.
+
+        * platform/graphics/harfbuzz/HarfBuzzFace.h: Move the elongated
+        GlyphCache type alias to the public section of HarfBuzzFace class
+        declaration, making it reusable in the helper HarfBuzzFontData struct.
+        * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
+
+2018-11-20  Antti Koivisto  <antti@apple.com>
+
+        Update hover state in composed tree
+        https://bugs.webkit.org/show_bug.cgi?id=191860
+
+        Reviewed by Zalan Bujtas.
+
+        The code was already mostly switched over from render tree to composed tree.
+        This patch replaces the remaining common ancestor search code with a DOM based equivalent.
+
+        * dom/Document.cpp:
+        (WebCore::findNearestCommonComposedAncestor):
+        (WebCore::Document::updateHoverActiveState):
+        (WebCore::nearestCommonHoverAncestor): Deleted.
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::hoverAncestor const): Deleted.
+        * rendering/RenderBlock.h:
+        * rendering/RenderElement.cpp:
+        (WebCore::RenderElement::hoverAncestor const): Deleted.
+
+        No longer needed.
+
+        * rendering/RenderElement.h:
+
+2018-11-20  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Measure run with non-breakable start/end.
+        https://bugs.webkit.org/show_bug.cgi?id=191850
+
+        Reviewed by Antti Koivisto.
+
+        Line breaking needs to know the complete width of the run including padding etc.
+
+        * layout/Verification.cpp:
+        (WebCore::Layout::collectFlowBoxSubtree):
+        (WebCore::Layout::collectInlineBoxes):
+        (WebCore::Layout::outputMismatchingComplexLineInformationIfNeeded):
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        * layout/inlineformatting/InlineFormattingContext.h:
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::runWidth):
+        * layout/inlineformatting/InlineLineBreaker.cpp:
+        (WebCore::Layout::InlineLineBreaker::InlineLineBreaker):
+        (WebCore::Layout::InlineLineBreaker::runWidth const):
+        (WebCore::Layout::InlineLineBreaker::textWidth const):
+        * layout/inlineformatting/InlineLineBreaker.h:
+        * layout/inlineformatting/text/TextUtil.cpp:
+        (WebCore::Layout::TextUtil::hyphenPositionBefore):
+        (WebCore::Layout::TextUtil::width):
+        (WebCore::Layout::TextUtil::fixedPitchWidth):
+        (WebCore::Layout::TextUtil::TextUtil): Deleted.
+        (WebCore::Layout::TextUtil::width const): Deleted.
+        (WebCore::Layout::TextUtil::hyphenPositionBefore const): Deleted.
+        (WebCore::Layout::TextUtil::textWidth const): Deleted.
+        (WebCore::Layout::TextUtil::fixedPitchWidth const): Deleted.
+        * layout/inlineformatting/text/TextUtil.h:
+
+2018-11-20  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] InlineFormattingContext::Line should hold the list of runs for the current line.
+        https://bugs.webkit.org/show_bug.cgi?id=191845
+
+        Reviewed by Antti Koivisto.
+
+        Collect the runs in InlineFormattingContext::Line and transfer them to InlineFormattingState during line closing.
+        (In the most common cases, this is only one extra vector::append() call.)
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        (WebCore::Layout::InlineFormattingContext::createFinalRuns const):
+        (WebCore::Layout::InlineFormattingContext::postProcessInlineRuns const):
+        (WebCore::Layout::InlineFormattingContext::closeLine const):
+        (WebCore::Layout::InlineFormattingContext::appendContentToLine const):
+        (WebCore::Layout::InlineFormattingContext::layoutInlineContent const):
+        (WebCore::Layout::InlineFormattingContext::placeInFlowPositionedChildren const):
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunsIfNeeded const): Deleted.
+        * layout/inlineformatting/InlineFormattingContext.h:
+        (WebCore::Layout::InlineFormattingContext::Line::hasContent const):
+        (WebCore::Layout::InlineFormattingContext::Line::runs):
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::justifyRuns):
+        (WebCore::Layout::InlineFormattingContext::Geometry::computeExpansionOpportunities):
+        (WebCore::Layout::InlineFormattingContext::Geometry::alignRuns):
+        * layout/inlineformatting/Line.cpp:
+        (WebCore::Layout::InlineFormattingContext::Line::init):
+        (WebCore::Layout::InlineFormattingContext::Line::adjustLogicalLeft):
+        (WebCore::Layout::InlineFormattingContext::Line::contentLogicalRight const):
+        (WebCore::Layout::InlineFormattingContext::Line::appendContent):
+        (WebCore::Layout::InlineFormattingContext::Line::close):
+        (WebCore::Layout::InlineFormattingContext::Line::Line): Deleted.
+
+2018-11-20  Zalan Butjas  <zalan@apple.com>
+
+        [LFC][IFC] Introduce InlineItem::nonBreakableStart/End
+        https://bugs.webkit.org/show_bug.cgi?id=191839
+
+        Reviewed by Antti Koivisto.
+
+        Non-breakable start/end marks margin/padding/border space (even when it does not directly come from the associated layout box)
+
+        <span style="padding: 5px"><span>nested content with padding parent</span</span>
+        <nested content with padding parent> <- inline run has 5px non-breakable start/end.
+
+        <span style="border: 5px solid green"><span style="padding-right: 10px; margin-right: 1px">1</span>2</span><span>    3</span>
+        <1> <- inline run has 5px non-breakable start and 11px non-breakable end.
+        <2> <- inline run has 0px non-breakable start and 5px non-breakable end.
+        <3> <- no non-breakable values.
+
+        This is what the runs look like (input to line breaking)
+        <     1           2     >
+        < > (whitespace)
+        <3>
+        The line breaking treats the paddding/border etc space as part of the run and as non-breaking opportunity.
+        With the given runs the first position where we can break the line is at the whitespace.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+        * layout/inlineformatting/InlineItem.h:
+        (WebCore::Layout::InlineItem::nonBreakableStart const):
+        (WebCore::Layout::InlineItem::nonBreakableEnd const):
+        (WebCore::Layout::InlineItem::addNonBreakableStart):
+        (WebCore::Layout::InlineItem::addNonBreakableEnd):
+
+2018-11-20  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Move detaching rules from InlineFormattingState to InlineItem
+        https://bugs.webkit.org/show_bug.cgi?id=191838
+
+        Reviewed by Antti Koivisto.
+
+        This is in preparation for adding more context to InlineItem. In addition to
+        detaching rules it will also hold non-breakable start/end information.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::splitInlineRunIfNeeded const):
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+        * layout/inlineformatting/InlineFormattingState.cpp:
+        (WebCore::Layout::InlineFormattingState::addDetachingRule): Deleted.
+        (WebCore::Layout::InlineFormattingState::detachingRules const): Deleted.
+        * layout/inlineformatting/InlineFormattingState.h:
+        (WebCore::Layout::InlineFormattingState::setDetachingRules): Deleted.
+        * layout/inlineformatting/InlineItem.h:
+        (WebCore::Layout::InlineItem::addDetachingRule):
+        (WebCore::Layout::InlineItem::detachingRules const):
+
+2018-11-20  Zalan Bujjtas  <zalan@apple.com>
+
+        [LFC][IFC] InlineRunProvider::append() should just take const InlineItem&.
+        https://bugs.webkit.org/show_bug.cgi?id=191837
+
+        Reviewed by Antti Koivisto.
+
+        This allows us to remove the InlineFormattingState dependency as well.
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+        (WebCore::Layout::InlineFormattingContext::instrinsicWidthConstraints const):
+        * layout/inlineformatting/InlineRunProvider.cpp:
+        (WebCore::Layout::InlineRunProvider::InlineRunProvider):
+        (WebCore::Layout::InlineRunProvider::append):
+        * layout/inlineformatting/InlineRunProvider.h:
+
+2018-11-20  Thibault Saunier  <tsaunier@igalia.com>
+
+        [GStreamer] Enhance debugging by making sure to print the pipeline in MediaPlayerPrivateGStreamer
+        https://bugs.webkit.org/show_bug.cgi?id=191586
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        This is minor changes that do not require tests.
+
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+        (WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties):
+        (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
+        (WebCore::MediaPlayerPrivateGStreamer::setPlaybinURL):
+        (WebCore::MediaPlayerPrivateGStreamer::loadFull):
+        (WebCore::MediaPlayerPrivateGStreamer::commitLoad):
+        (WebCore::MediaPlayerPrivateGStreamer::readyTimerFired):
+        (WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
+        (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay):
+        (WebCore::MediaPlayerPrivateGStreamer::play):
+        (WebCore::MediaPlayerPrivateGStreamer::pause):
+        (WebCore::MediaPlayerPrivateGStreamer::durationMediaTime const):
+        (WebCore::MediaPlayerPrivateGStreamer::seek):
+        (WebCore::MediaPlayerPrivateGStreamer::updatePlaybackRate):
+        (WebCore::MediaPlayerPrivateGStreamer::paused const):
+        (WebCore::MediaPlayerPrivateGStreamer::enableTrack):
+        (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
+        (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
+        (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfText):
+        (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
+        (WebCore::MediaPlayerPrivateGStreamer::processBufferingStats):
+        (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
+        (WebCore::MediaPlayerPrivateGStreamer::maxMediaTimeSeekable const):
+        (WebCore::MediaPlayerPrivateGStreamer::totalBytes const):
+        (WebCore::MediaPlayerPrivateGStreamer::uriDecodeBinElementAddedCallback):
+        (WebCore::MediaPlayerPrivateGStreamer::downloadBufferFileCreatedCallback):
+        (WebCore::MediaPlayerPrivateGStreamer::sourceSetup):
+        (WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone):
+        (WebCore::MediaPlayerPrivateGStreamer::updateStates):
+        (WebCore::MediaPlayerPrivateGStreamer::loadNextLocation):
+        (WebCore::MediaPlayerPrivateGStreamer::didEnd):
+        (WebCore::MediaPlayerPrivateGStreamer::setDownloadBuffering):
+        (WebCore::MediaPlayerPrivateGStreamer::setPreload):
+        (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
+
+2018-11-20  Manuel Rego Casasnovas  <rego@igalia.com>
+
+        [css-grid] Consider scrollbars in populateGridPositionsForDirection()
+        https://bugs.webkit.org/show_bug.cgi?id=191656
+
+        Reviewed by Javier Fernandez.
+
+        We never care about scrollbars in RenderGrid::populateGridPositionsForDirection(),
+        that's fine if the scrollbars are at the end (e.g. on the right in horizontal writing mode and LTR direction)
+        but it causes problems when they're at the beginning (e.g. on the left in horizontal writing mode and RTL direction).
+
+        The patch modifies the method so it takes into account scrollbar size
+        in order to compute the position of the columns/rows depending on the direction and the writing mode.
+
+        Tests: imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-001.html
+               imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-lr-001.html
+               imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-scrollbar-vertical-rl-001.html
+
+        * rendering/RenderGrid.cpp:
+        (WebCore::RenderGrid::populateGridPositionsForDirection):
+
+2018-11-19  Ryosuke Niwa  <rniwa@webkit.org>
+
+        Click on node assigned to slot in button's shadow cause loss of button focus
+        https://bugs.webkit.org/show_bug.cgi?id=191694
+        <rdar://problem/46107920>
+
+        Reviewed by Wenson Hsieh.
+
+        Fixed the bug by traversing the parent in the composed tree when looking for an element to focus.
+
+        Test: fast/shadow-dom/focus-slot-parent.html
+
+        * page/EventHandler.cpp:
+        (WebCore::EventHandler::dispatchMouseEvent): Fixed the bug. Also use RefPtr instead of a raw pointer.
+
+2018-11-19  Fujii Hironori  <Hironori.Fujii@sony.com>
+
+        REGRESSION(r238350) [curl] CertificateInfo.h: error: template specialization requires 'template<>'
+        https://bugs.webkit.org/show_bug.cgi?id=191849
+
+        Unreviewed build fix for clang-cl builds.
+
+        No new tests because there's no behaviour change.
+
+        * platform/network/curl/CertificateInfo.h:
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::encode):
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode):
+
+2018-11-19  Basuke Suzuki  <basuke.suzuki@sony.com>
+
+        [Curl] Add API for CertificateInfo.
+        https://bugs.webkit.org/show_bug.cgi?id=191647
+
+        Reviewed by Alex Christensen.
+
+        Minor changes for WebKit API.
+
+        Tests: TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp
+
+        * platform/network/curl/CertificateInfo.h:
+        * platform/network/curl/CertificateInfoCurl.cpp:
+        (WebCore::CertificateInfo::CertificateInfo):
+        (WebCore::CertificateInfo::makeCertificate):
+        * platform/network/curl/CurlSSLVerifier.cpp:
+        (WebCore::BIOHolder::asCertificate):
+
+2018-11-19  Justin Fan  <justin_fan@apple.com>
+
+        [WebGPU] Begin implementing WebGPUTexture, WebGPUTextureView, and WebGPUTextureFormatEnum, and WebGPUSwapChain::configure upgrades
+        https://bugs.webkit.org/show_bug.cgi?id=191794
+
+        Reviewed by Dean Jackson.
+
+        Test: webgpu/textures-textureviews.html
+
+        Implement basic functionality for getting the next WebGPUTexture and TextureView from the WebGPURenderingContext
+        to use as a render destination for the next draw call. Also introduce WebGPUTextureFormatEnum and the ability to 
+        configure the context with a chosen texture format. 
+
+        * CMakeLists.txt:
+        * DerivedSources.make:
+        * Modules/webgpu/GPUSwapChain.h: Texture/Pixel format can now be set.
+        * Modules/webgpu/GPUTexture.h: Added. Interface to a MTLTexture.
+        * Modules/webgpu/GPUTextureFormatEnum.h: Added.
+        * Modules/webgpu/WebGPUDevice.cpp:
+        (WebCore::WebGPUDevice::createRenderPipeline const): Removed now-unnecessary enum class cast.
+        * Modules/webgpu/WebGPURenderPipelineDescriptor.h: Rather than duplicate GPURenderPipelineDescriptor::PrimitiveTopology, alias to it.
+        * Modules/webgpu/WebGPUSwapChain.cpp:
+        (WebCore::WebGPUSwapChain::configure): Can now specify a specific texture format for the underlying CAMetalLayer.
+        (WebCore::WebGPUSwapChain::getNextTexture): Added. Request the next drawable texture.
+        * Modules/webgpu/WebGPUSwapChain.h: Expose getNextTexture().
+        * Modules/webgpu/WebGPUSwapChain.idl:
+        * Modules/webgpu/WebGPUTexture.cpp: Added. 
+        (WebCore::WebGPUTexture::create):
+        (WebCore::WebGPUTexture::WebGPUTexture):
+        (WebCore::WebGPUTexture::createDefaultTextureView):
+        * Modules/webgpu/WebGPUTexture.h: Added.
+        * Modules/webgpu/WebGPUTexture.idl: Added.
+        * Modules/webgpu/WebGPUTextureFormatEnum.h: Added. Type alias for GPUTextureFormatEnum.
+        * Modules/webgpu/WebGPUTextureFormatEnum.idl: Added. Used to represent any texture format used by WebGPU.
+        * Modules/webgpu/WebGPUTextureView.cpp: Added.
+        (WebCore::WebGPUTextureView::create):
+        (WebCore::WebGPUTextureView::WebGPUTextureView):
+        * Modules/webgpu/WebGPUTextureView.h: Added.
+        * Modules/webgpu/WebGPUTextureView.idl: Added.
+        * Modules/webgpu/cocoa/GPUSwapChainMetal.mm: 
+        (WebCore::GPUSwapChain::create):
+        (WebCore::GPUSwapChain::setFormat): Called by WebGPUSwapChain::configure().
+        (WebCore::GPUSwapChain::getNextTexture):
+        * Modules/webgpu/cocoa/GPUTextureFormatEnumMetal.mm: Added.
+        (WebCore::convertAndValidate): Convert the WebGPUTextureFormatEnum to a MTLPixelFormat.
+        * Modules/webgpu/cocoa/GPUTextureMetal.mm: Added.
+        (WebCore::GPUTexture::create):
+        (WebCore::GPUTexture::GPUTexture):
+        (WebCore::GPUTexture::createDefaultTextureView): Uses the pixelFormat of the original texture.
+        * Sources.txt:
+        * SourcesCocoa.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * bindings/js/WebCoreBuiltinNames.h:
+
+2018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
+
+        Web Inspector: "Reload Web Inspector" button no longer partially works
+        https://bugs.webkit.org/show_bug.cgi?id=191773
+        <rdar://problem/46139932>
+
+        Reviewed by Devin Rousso.
+
+        * inspector/InspectorFrontendClient.h:
+        * inspector/InspectorFrontendHost.cpp:
+        (WebCore::InspectorFrontendHost::reopen):
+        * inspector/InspectorFrontendHost.h:
+        * inspector/InspectorFrontendHost.idl:
+        Provide a host call to reopen an inspector window to reload it.
+
+        * testing/Internals.cpp:
+        Stub implementation, this is not used in tests.
+
+2018-11-19  Rob Buis  <rbuis@igalia.com>
+
+        Setting document.title should have no effect for non SVG/HTML documents
+        https://bugs.webkit.org/show_bug.cgi?id=191643
+
+        Reviewed by Chris Dumez.
+
+        Setting document.title should have no effect for non SVG/HTML documents,
+        see https://html.spec.whatwg.org/multipage/dom.html#document.title.
+
+        Behavior matches Firefox and Chrome.
+
+        Test: imported/w3c/web-platform-tests/html/dom/documents/dom-tree-accessors/document.title-not-in-html-svg.html
+
+        * dom/Document.cpp:
+        (WebCore::Document::setTitle):
+
+2018-11-19  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        Dragging image with a border-image larger than the image element crashes
+        https://bugs.webkit.org/show_bug.cgi?id=191817
+        <rdar://problem/46159222>
+
+        Reviewed by Ryosuke Niwa.
+
+        When dragging an image element, if the image element has:
+
+        (1) box-sizing: border-box;
+        (2) a border-image
+        (3) a border-top-width that is at least as large as the height of the element and/or a border-left-width that is
+            at least as large as the width of the element
+
+        ...then upon drag, we will fail to create a suitable drag image using the bounding box of the image element
+        since the size is empty, thereby causing a crash. To fix this, we bail out of this bounding-rect-dependent
+        codepath for generating a drag image in the case where the bounding rect is empty, and instead fall back to an
+        icon representation for the drag image.
+
+        Test: fast/events/drag-image-with-border-image.html
+
+        * page/DragController.cpp:
+        (WebCore::DragController::doImageDrag):
+
+2018-11-18  Zan Dobersek  <zdobersek@igalia.com>
+
+        HarfBuzzFace::CacheEntry should use 32-bit values in its HashMap
+        https://bugs.webkit.org/show_bug.cgi?id=191825
+
+        Reviewed by Michael Catanzaro.
+
+        The HashMap-based glyph cache contained in HarfBuzzFace::CacheEntry
+        objects is used to map given Unicode codepoints to corresponding
+        glyph indices (which occurs in the harfBuzzGetGlyph() function that's
+        invoked by HarfBuzz).
+
+        The 16-bit unsigned integer as the map's value type is not enough here
+        when the glyph index mapping is done through Freetype -- its API returns
+        32-bit glyph indices, and Cairo assigns this value to the 64-bit
+        unsigned index variable in the cairo_glyph_t struct. The value type is
+        thus bumped to 32 bits to match the unsigned type size of the index's
+        origin.
+
+        * platform/graphics/harfbuzz/HarfBuzzFace.h:
+        * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
+
+2018-11-17  Wenson Hsieh  <wenson_hsieh@apple.com>
+
+        [iOS] Remove all usages of UIItemProvider, UIItemProviderReading, and related classes
+        https://bugs.webkit.org/show_bug.cgi?id=191819
+
+        Reviewed by Dan Bernstein.
+
+        Replace UIItemProvider (and related classes) with NSItemProvider.
+
+        * platform/ios/PlatformPasteboardIOS.mm:
+        (WebCore::registerItemToPasteboard):
+        * platform/ios/WebItemProviderPasteboard.h:
+        * platform/ios/WebItemProviderPasteboard.mm:
+        (-[WebItemProviderDataRegistrar registerItemProvider:]):
+        (-[WebItemProviderWritableObjectRegistrar initWithObject:]):
+        (-[WebItemProviderWritableObjectRegistrar representingObject]):
+        (-[WebItemProviderWritableObjectRegistrar registerItemProvider:]):
+        (-[WebItemProviderRegistrationInfoList addRepresentingObject:]):
+        (-[WebItemProviderRegistrationInfoList itemProvider]):
+        (-[WebItemProviderPasteboard pasteboardTypes]):
+        (-[WebItemProviderPasteboard _preLoadedDataConformingToType:forItemProviderAtIndex:]):
+        (-[WebItemProviderPasteboard dataForPasteboardType:inItemSet:]):
+        (allLoadableClasses):
+        (classForTypeIdentifier):
+        (-[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:]):
+        (-[WebItemProviderPasteboard numberOfFiles]):
+        (-[WebItemProviderPasteboard itemProviderAtIndex:]):
+        (-[WebItemProviderPasteboard enumerateItemProvidersWithBlock:]):
+        * platform/mac/DragDataMac.mm:
+        (WebCore::DragData::containsURL const):
+
+2018-11-17  Ross Kirsling  <ross.kirsling@sony.com>
+
+        Remove superfluous LayoutUnit initializations
+        https://bugs.webkit.org/show_bug.cgi?id=191791
+
+        Reviewed by Simon Fraser.
+
+        First step toward making LayoutUnit constructors explicit:
+        eliminate `= 0` when constructing LayoutUnit lvalues.
+
+        * editing/Editor.cpp:
+        (WebCore::Editor::firstRectForRange const):
+        * editing/FrameSelection.cpp:
+        (WebCore::FrameSelection::modify):
+        (WebCore::FrameSelection::lineDirectionPointForBlockDirectionNavigation):
+        * html/shadow/SliderThumbElement.cpp:
+        (WebCore::RenderSliderContainer::computeLogicalHeight const):
+        * layout/inlineformatting/InlineFormattingContextGeometry.cpp:
+        (WebCore::Layout::InlineFormattingContext::Geometry::justifyRuns):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::forceLayoutForPagination):
+        * page/SpatialNavigation.cpp:
+        (WebCore::scrollInDirection):
+        (WebCore::distanceDataForNode):
+        * rendering/AutoTableLayout.cpp:
+        (WebCore::AutoTableLayout::layout):
+        * rendering/GridTrackSizingAlgorithm.cpp:
+        (WebCore::marginIntrinsicLogicalWidthForChild):
+        (WebCore::GridTrackSizingAlgorithm::gridAreaBreadthForChild const):
+        * rendering/InlineFlowBox.cpp:
+        (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
+        (WebCore::InlineFlowBox::paintFillLayer):
+        (WebCore::InlineFlowBox::paintBoxDecorations):
+        (WebCore::InlineFlowBox::paintMask):
+        (WebCore::InlineFlowBox::computeOverAnnotationAdjustment const):
+        (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment const):
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::marginIntrinsicLogicalWidthForChild const):
+        (WebCore::RenderBlock::layoutPositionedObject):
+        (WebCore::RenderBlock::selectionGapRectsForRepaint):
+        (WebCore::RenderBlock::paintSelection):
+        (WebCore::RenderBlock::textIndentOffset const):
+        (WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
+        * rendering/RenderBlockFlow.cpp:
+        (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
+        (WebCore::RenderBlockFlow::layoutBlock):
+        (WebCore::RenderBlockFlow::layoutBlockChildren):
+        (WebCore::RenderBlockFlow::marginValuesForChild const):
+        (WebCore::RenderBlockFlow::estimateLogicalTopPosition):
+        (WebCore::RenderBlockFlow::applyBeforeBreak):
+        (WebCore::RenderBlockFlow::applyAfterBreak):
+        (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
+        (WebCore::RenderBlockFlow::clearFloats):
+        (WebCore::RenderBlockFlow::lowestFloatLogicalBottom const):
+        (WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom const):
+        (WebCore::RenderBlockFlow::addOverhangingFloats):
+        (WebCore::RenderBlockFlow::getClearDelta):
+        (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::setLogicalWidthForTextRun):
+        (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
+        (WebCore::RenderBlockFlow::determineStartPosition):
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::fillAvailableMeasure const):
+        (WebCore::RenderBox::computeIntrinsicLogicalWidthUsing const):
+        (WebCore::RenderBox::computeLogicalWidthInFragmentUsing const):
+        (WebCore::RenderBox::computePercentageLogicalHeight const):
+        (WebCore::RenderBox::computeReplacedLogicalWidthUsing const):
+        (WebCore::RenderBox::computePositionedLogicalWidthUsing const):
+        (WebCore::RenderBox::computePositionedLogicalHeightUsing const):
+        (WebCore::RenderBox::computePositionedLogicalWidthReplaced const):
+        (WebCore::RenderBox::computePositionedLogicalHeightReplaced const):
+        * rendering/RenderBoxModelObject.cpp:
+        (WebCore::RenderBoxModelObject::computedCSSPadding const):
+        (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry const):
+        * rendering/RenderDeprecatedFlexibleBox.cpp:
+        (WebCore::marginWidthForChild):
+        (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
+        (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
+        * rendering/RenderFileUploadControl.cpp:
+        (WebCore::RenderFileUploadControl::paintObject):
+        * rendering/RenderFragmentedFlow.cpp:
+        (WebCore::RenderFragmentedFlow::validateFragments):
+        (WebCore::RenderFragmentedFlow::adjustedPositionRelativeToOffsetParent const):
+        (WebCore::RenderFragmentedFlow::updateFragmentsFragmentedFlowPortionRect):
+        * rendering/RenderFrameSet.cpp:
+        (WebCore::RenderFrameSet::paint):
+        * rendering/RenderListItem.cpp:
+        (WebCore::RenderListItem::positionListMarker):
+        * rendering/RenderListMarker.cpp:
+        (WebCore::RenderListMarker::computePreferredLogicalWidths):
+        (WebCore::RenderListMarker::updateMargins):
+        * rendering/RenderMultiColumnSet.cpp:
+        (WebCore::RenderMultiColumnSet::initialBlockOffsetForPainting const):
+        * rendering/RenderRubyRun.cpp:
+        (WebCore::RenderRubyRun::layoutBlock):
+        * rendering/RenderTable.cpp:
+        (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
+        (WebCore::RenderTable::layout):
+        (WebCore::RenderTable::offsetWidthForColumn const):
+        (WebCore::RenderTable::offsetHeightForColumn const):
+        (WebCore::RenderTable::outerBorderBefore const):
+        (WebCore::RenderTable::outerBorderAfter const):
+        (WebCore::RenderTable::outerBorderStart const):
+        (WebCore::RenderTable::outerBorderEnd const):
+        * rendering/RenderTableCell.cpp:
+        (WebCore::RenderTableCell::logicalWidthFromColumns const):
+        (WebCore::RenderTableCell::computeIntrinsicPadding):
+        * rendering/RenderTableSection.cpp:
+        (WebCore::RenderTableSection::calcRowLogicalHeight):
+        (WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
+        (WebCore::RenderTableSection::distributeExtraLogicalHeightToAutoRows):
+        (WebCore::RenderTableSection::distributeRemainingExtraLogicalHeight):
+        (WebCore::RenderTableSection::layoutRows):
+        (WebCore::RenderTableSection::calcOuterBorderBefore const):
+        (WebCore::RenderTableSection::calcOuterBorderAfter const):
+        (WebCore::RenderTableSection::calcOuterBorderStart const):
+        (WebCore::RenderTableSection::calcOuterBorderEnd const):
+        * rendering/RootInlineBox.cpp:
+        (WebCore::RootInlineBox::alignBoxesInBlockDirection):
+        (WebCore::RootInlineBox::beforeAnnotationsAdjustment const):
+        (WebCore::RootInlineBox::lineSnapAdjustment const):
+        (WebCore::RootInlineBox::verticalPositionForBox):
+        * rendering/line/BreakingContext.h:
+        (WebCore::inlineLogicalWidth):
+        * rendering/mathml/RenderMathMLBlock.cpp:
+        (WebCore::RenderMathMLBlock::layoutItems):
+        * rendering/mathml/RenderMathMLFraction.cpp:
+        (WebCore::RenderMathMLFraction::layoutBlock):
+        * rendering/mathml/RenderMathMLOperator.cpp:
+        (WebCore::RenderMathMLOperator::computePreferredLogicalWidths):
+        * rendering/mathml/RenderMathMLRoot.cpp:
+        (WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
+        (WebCore::RenderMathMLRoot::paint):
+        * rendering/mathml/RenderMathMLRow.cpp:
+        (WebCore::RenderMathMLRow::computePreferredLogicalWidths):
+        * rendering/mathml/RenderMathMLScripts.cpp:
+        (WebCore::RenderMathMLScripts::layoutBlock):
+        * rendering/mathml/RenderMathMLUnderOver.cpp:
+        (WebCore::RenderMathMLUnderOver::stretchHorizontalOperatorsAndLayoutChildren):
+        (WebCore::RenderMathMLUnderOver::layoutBlock):
+        * rendering/style/RenderStyle.cpp:
+        (WebCore::RenderStyle::getShadowInsetExtent const):
+        * rendering/svg/RenderSVGText.cpp:
+        (WebCore::RenderSVGText::layout):
+
+2018-11-17  Simon Fraser  <simon.fraser@apple.com>
+
+        Avoid triggering compositing updates when only the root layer is composited
+        https://bugs.webkit.org/show_bug.cgi?id=191813
+
+        Reviewed by Zalan Bujtas.
+
+        If we know that the only composited layer is the root, we can avoid triggering deep
+        compositing updates sometimes, for example when layout changes size or position,
+        or when z-order lists change.
+
+        * rendering/RenderLayer.cpp:
+        (WebCore::RenderLayer::addChild):
+        (WebCore::RenderLayer::removeChild):
+        (WebCore::RenderLayer::updateLayerPosition):
+        (WebCore::RenderLayer::scrollTo):
+        (WebCore::RenderLayer::updateCompositingLayersAfterScroll):
+        (WebCore::outputPaintOrderTreeRecursive):
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::updateBackingAndHierarchy): Consult the layer.hasCompositingDescendant()
+        flag to cut off descendants traversal when possible.
+        (WebCore::RenderLayerCompositor::layerStyleChanged):
+
+2018-11-17  Simon Fraser  <simon.fraser@apple.com>
+
+        Fix an error in 238354 - !=, not ==.
+        
+        Fixes test failures.
+
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::layerBecameNonComposited):
+
+2018-11-17  Simon Fraser  <simon.fraser@apple.com>
+
+        Clarify RenderLayerCompositor::hasAnyAdditionalCompositedLayers() and related code.
+        https://bugs.webkit.org/show_bug.cgi?id=191810
+
+        Reviewed by Zalan Bujtas.
+
+        Rename m_compositedLayerCount to m_contentLayersCount and have it track layers other
+        than the RenderView's layer.
+
+        hasAnyAdditionalCompositedLayers() is really about whether we can drop out of compositing
+        because no content layer is composited, and overlays don't require compositing, so
+        rename it.
+
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::updateCompositingLayers):
+        (WebCore::RenderLayerCompositor::computeCompositingRequirements):
+        (WebCore::RenderLayerCompositor::needsCompositingForContentOrOverlays const):
+        (WebCore::RenderLayerCompositor::layerBecameComposited):
+        (WebCore::RenderLayerCompositor::layerBecameNonComposited):
+        (WebCore::RenderLayerCompositor::layerTreeAsText):
+        (WebCore::RenderLayerCompositor::hasAnyAdditionalCompositedLayers const): Deleted.
+        * rendering/RenderLayerCompositor.h:
+
+2018-11-17  Simon Fraser  <simon.fraser@apple.com>
+
+        Rename RenderLayerCompositor::inCompositingMode() to usesCompositing()
+        https://bugs.webkit.org/show_bug.cgi?id=191808
+
+        Reviewed by Zalan Bujtas.
+
+        Other code uses "usesCompositing" so standardize on that (future changes will make
+        "compositing mode" more ambiguous). Also remove a FrameView function that only
+        had one caller.
+
+        * page/FrameView.cpp:
+        (WebCore::FrameView::clearBackingStores):
+        (WebCore::FrameView::handleDeferredScrollbarsUpdateAfterDirectionChange):
+        (WebCore::FrameView::delegatesScrollingDidChange):
+        (WebCore::FrameView::hasCompositedContent const): Deleted.
+        * page/FrameView.h:
+        * rendering/RenderLayer.cpp:
+        (WebCore::RenderLayer::addChild):
+        (WebCore::RenderLayer::removeChild):
+        (WebCore::RenderLayer::rebuildZOrderLists):
+        (WebCore::RenderLayer::updateLayerPosition):
+        (WebCore::RenderLayer::scrollTo):
+        (WebCore::RenderLayer::updateCompositingLayersAfterScroll):
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::updateCompositingPolicy):
+        (WebCore::RenderLayerCompositor::computeCompositingRequirements):
+        (WebCore::RenderLayerCompositor::layerStyleChanged):
+        (WebCore::RenderLayerCompositor::updateBacking):
+        (WebCore::RenderLayerCompositor::parentFrameContentLayers):
+        (WebCore::RenderLayerCompositor::setIsInWindow):
+        (WebCore::RenderLayerCompositor::needsToBeComposited const):
+        (WebCore::RenderLayerCompositor::reasonsForCompositing const):
+        (WebCore::RenderLayerCompositor::requiresCompositingForAnimation const):
+        (WebCore::RenderLayerCompositor::rootOrBodyStyleChanged):
+        (WebCore::RenderLayerCompositor::rootBackgroundColorOrTransparencyChanged):
+        * rendering/RenderLayerCompositor.h:
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::repaintViewAndCompositedLayers):
+        (WebCore::RenderView::usesCompositing const):
+
+2018-11-17  Devin Rousso  <drousso@apple.com>
+
+        Web Inspector: Network: add button to show system certificate dialog
+        https://bugs.webkit.org/show_bug.cgi?id=191458
+        <rdar://problem/45977019>
+
+        Reviewed by Joseph Pecoraro.
+
+        Test: http/tests/inspector/network/getSerializedCertificate.html
+
+        * inspector/agents/InspectorNetworkAgent.h:
+        * inspector/agents/InspectorNetworkAgent.cpp:
+        (WebCore::InspectorNetworkAgent::getSerializedCertificate): Added.
+
+        * inspector/InspectorFrontendHost.idl:
+        * inspector/InspectorFrontendHost.h:
+        * inspector/InspectorFrontendHost.cpp:
+        (WebCore::InspectorFrontendHost::supportsShowCertificate): Added.
+        (WebCore::InspectorFrontendHost::showCertificate): Added.
+        * inspector/InspectorFrontendClient.h:
+        (InspectorFrontendClient::showCertificate): Added.
+        * testing/Internals.cpp:
+        (InspectorStubFrontend::showCertificate): Added.
+
+        * platform/network/cf/CertificateInfo.h:
+        (WTF::Persistence::encodeCFData): Added.
+        (WTF::Persistence::decodeCFData): Added.
+        (WTF::Persistence::encodeSecTrustRef): Added.
+        (WTF::Persistence::decodeSecTrustRef): Added.
+        (WTF::Persistence::encodeCertificateChain): Added.
+        (WTF::Persistence::decodeCertificateChain): Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::encode): Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode): Added.
+        * platform/network/cf/CertificateInfoCFNet.cpp:
+        * platform/network/cocoa/CertificateInfoCocoa.mm:
+
+        * platform/network/curl/CertificateInfo.h:
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::encode): Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode): Added.
+
+        * platform/network/soup/CertificateInfo.h:
+        (WTF::Persistence::Coder<GRefPtr<GByteArray>>::encode): Added.
+        (WTF::Persistence::Coder<GRefPtr<GByteArray>>::decode): Added.
+        (WTF::Persistence::certificatesDataListFromCertificateInfo): Added.
+        (WTF::Persistence::certificateFromCertificatesDataList): Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::encode): Added.
+        (WTF::Persistence::Coder<WebCore::CertificateInfo>::decode): Added.
+
+2018-11-17  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] InlineFormattingState::addDetachingRule should accumulate rules.
+        https://bugs.webkit.org/show_bug.cgi?id=191801
+
+        Reviewed by Antti Koivisto.
+
+        before<span style="position: relative">positioned</span>after
+        In the example above the <positioned> inline box has both the BreakAtStart and the BreakAtEnd rules.
+        While walking through the inline tree, we add BreakAtStart first and when we figure it's the last child too,
+        we add BreakAtEnd as well. BreakAtEnd should not clear the BreakAtStart rule.
+
+        Test: fast/inline/simple-inline-with-out-of-flow-descendant2.html
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::collectInlineContentForSubtree const):
+        * layout/inlineformatting/InlineFormattingState.cpp:
+        (WebCore::Layout::InlineFormattingState::addDetachingRule):
+        * layout/inlineformatting/InlineFormattingState.h:
+        (WebCore::Layout::InlineFormattingState::addDetachingRule): Deleted.
+
+2018-11-17  Jonathan Hammer  <jonathan@e3software.com>
+
+        Caret stops blinking after context menu shown
+        https://bugs.webkit.org/show_bug.cgi?id=191715
+
+        Reviewed by Ryosuke Niwa.
+
+        Changed EventHandler::sendContextMenuEvent to un-suspend caret blinking so that
+        the caret continues to blink even after the context menu is dismissed. The normal
+        way of un-suspendeding caret blinking (in EventHandler::handleMouseReleaseEvent) does
+        not apply in the case of context menus because handleMouseReleaseEvent is not
+        called once the context menu is up.
+
+        Test: fast/events/contextmenu-dismiss-blink-caret.html
+
+        * page/EventHandler.cpp:
+        (WebCore::EventHandler::sendContextMenuEvent):
+        * testing/Internals.cpp:
+        (WebCore::Internals::isCaretBlinkingSuspended):
+        * testing/Internals.h:
+        * testing/Internals.idl:
+
+2018-11-16  Antoine Quint  <graouts@apple.com>
+
+        [Pointer Events] event.isPrimary doesn't always represent the oldest active touch
+        https://bugs.webkit.org/show_bug.cgi?id=191752
+        <rdar://problem/46129270>
+
+        Reviewed by Dean Jackson.
+
+        Provide isPrimary to the constructor so its value can be determined at the call site.
+
+        Test: pointerevents/ios/pointer-events-is-primary.html
+
+        * dom/PointerEvent.h:
+        * dom/ios/PointerEventIOS.cpp:
+        (WebCore::PointerEvent::create):
+        (WebCore::PointerEvent::PointerEvent):
+        (WebCore::m_isPrimary):
+
+2018-11-16  Alex Christensen  <achristensen@webkit.org>
+
+        Tweak _showSafeBrowsingWarningWithTitle SPI
+        https://bugs.webkit.org/show_bug.cgi?id=191799
+
+        Reviewed by Wenson Hsieh.
+
+        It turns out I needed to expose both sentinel values used in safe browsing for my application of this SPI in Mac Safari.
+        Allowing the caller to make its own sentinel values is insufficient because the malware confirmation needs to be over the warning.
+        The completion handler parameter should just be a bool indicating whether the user has chosen to continue after all warnings.
+
+        Covered by updated API tests.
+
+        * en.lproj/Localizable.strings:
+        * platform/LocalizedStrings.cpp:
+        (WebCore::formControlCancelButtonTitle):
+        Make "Cancel"'s description a little more generic.
+
+2018-11-16  Simon Fraser  <simon.fraser@apple.com>
+
+        Optimize composited iframe layer hookup
+        https://bugs.webkit.org/show_bug.cgi?id=191778
+
+        Reviewed by Zalan Bujtas.
+
+        The change made in r238229 can be more targeted; we only need to hook up iframe content
+        layers when the layer is already composited (otherwise the updateBacking() above would have triggered
+        the work), and when it's a RenderWidget layer.
+        
+        Tested by existing tests.
+
+        * rendering/RenderLayer.cpp:
+        (WebCore::outputPaintOrderTreeRecursive):
+        * rendering/RenderLayerCompositor.cpp:
+        (WebCore::RenderLayerCompositor::layerStyleChanged):
+
+2018-11-16  Ross Kirsling  <ross.kirsling@sony.com>
+
+        Provide default implementation of Widget
+        https://bugs.webkit.org/show_bug.cgi?id=191784
+
+        Reviewed by Michael Catanzaro.
+
+        * SourcesWPE.txt:
+        * platform/Widget.cpp:
+        (WebCore::Widget::Widget):
+        (WebCore::Widget::frameRect const):
+        (WebCore::Widget::~Widget):
+        (WebCore::Widget::setFrameRect):
+        (WebCore::Widget::paint):
+        (WebCore::Widget::setFocus):
+        (WebCore::Widget::setCursor):
+        (WebCore::Widget::show):
+        (WebCore::Widget::hide):
+        (WebCore::Widget::setIsSelected):
+        * platform/gtk/WidgetGtk.cpp:
+        (WebCore::Widget::Widget): Deleted.
+        (WebCore::Widget::frameRect const): Deleted.
+        * platform/win/WidgetWin.cpp:
+        (WebCore::Widget::Widget): Deleted.
+        (WebCore::Widget::frameRect const): Deleted.
+        * platform/wpe/WidgetWPE.cpp: Removed.
+
+2018-11-16  Chris Dumez  <cdumez@apple.com>
+
+        [macOS] Label "prewarmed" WebContent processes in Activity Monitor
+        https://bugs.webkit.org/show_bug.cgi?id=191765
+        <rdar://problem/45953463>
+
+        Reviewed by Geoffrey Garen.
+
+        * en.lproj/Localizable.strings:
+
+2018-11-16  Jeremy Jones  <jeremyj@apple.com>
+
+        Enable external playback for video in element fullscreen.
+        https://bugs.webkit.org/show_bug.cgi?id=190359
+        rdar://problem/42560085
+
+        Reviewed by Jer Noble.
+
+        No new tests because we don't have a good way to test external playback.
+
+        Any video that might be auto-pipped from element fullscreen should also enable external playback for video out.
+        PiP and external playback are mutually exclusive. Instead of preventing PiP when external playback is active,
+        allow PiP, but disable external playback while PiP is active.
+
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::setVideoFullscreenStandby):
+        * html/HTMLMediaElement.h:
+        * platform/graphics/MediaPlayer.cpp:
+        (WebCore::MediaPlayer::setVideoFullscreenStandby):
+        (WebCore::MediaPlayer::videoFullscreenStandby const):
+        * platform/graphics/MediaPlayer.h:
+        (WebCore::MediaPlayerClient::mediaPlayerVideoFullscreenStandby const):
+        * platform/graphics/MediaPlayerPrivate.h:
+        (WebCore::MediaPlayerPrivateInterface::setVideoFullscreenStandby):
+        * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenStandby):
+        (WebCore::MediaPlayerPrivateAVFoundationObjC::updateDisableExternalPlayback):
+
+2018-11-16  Jer Noble  <jer.noble@apple.com>
+
+        Regression(r233865): Causes synchronous IPC in the middle of layout
+        https://bugs.webkit.org/show_bug.cgi?id=188307
+        <rdar://problem/42807306>
+
+        Reviewed by Eric Carlson.
+
+        Revert the changes added in r233865. Rather than make a syncronous call to the UIProcess to
+        query whether the view has been backgrounded while (e.g.) JS has been spinning, perform the
+        steps of the requestFullscreen() method on the next run loop, allowing messages from the
+        UIProcess about page visibilty to be delivered first.
+
+        * dom/Document.cpp:
+        (WebCore::Document::requestFullScreenForElement):
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::enterFullscreen):
+        * html/HTMLMediaElement.h:
+        * page/ChromeClient.h:
+
+2018-11-16  Ross Kirsling  <ross.kirsling@sony.com>
+
+        Provide default implementation of Cursor
+        https://bugs.webkit.org/show_bug.cgi?id=191772
+
+        Reviewed by Michael Catanzaro.
+
+        * SourcesWPE.txt:
+        * platform/Cursor.cpp:
+        (WebCore::Cursor::ensurePlatformCursor const):
+        * platform/wpe/CursorWPE.cpp: Removed.
+
+2018-11-16  Don Olmstead  <don.olmstead@sony.com>
+
+        EditorWPE should be EditorLibWPE
+        https://bugs.webkit.org/show_bug.cgi?id=191774
+
+        Reviewed by Michael Catanzaro.
+
+        The platform specific implementations of Editor are all around the
+        platform's Pasteboard. Since the Pasteboard implementation is now based
+        around USE(LIBWPE) EditorWPE should be renamed to EditorLibWPE.
+
+        * SourcesWPE.txt:
+        * editing/libwpe/EditorLibWPE.cpp: Renamed from Source/WebCore/editing/wpe/EditorWPE.cpp.
+
+2018-11-16  Jeremy Jones  <jeremyj@apple.com>
+
+        Include AirPlay destination name in AirPlay placard.
+        https://bugs.webkit.org/show_bug.cgi?id=191574
+        rdar://problem/45536144
+
+        Reviewed by Eric Carlson.
+
+        Updated existing tests.
+
+        Include the name of the AirPlay destination in the video element's AirPlay placard.
+
+        * Modules/modern-media-controls/controls/airplay-placard.js:
+        (AirplayPlacard):
+        * Modules/modern-media-controls/controls/placard.js:
+        * Modules/modern-media-controls/media/placard-support.js:
+        (PlacardSupport.prototype._updatePlacard):
+        (PlacardSupport.prototype._updateAirPlayPlacard):
+        (PlacardSupport):
+        * en.lproj/modern-media-controls-localized-strings.js:
+
+2018-11-16  Zalan Bujtas  <zalan@apple.com>
+
+        Add DidFirstMeaningfulPaint milestone.
+        https://bugs.webkit.org/show_bug.cgi?id=191754
+
+        Reviewed by Simon Fraser.
+
+        This milestone fires sone after the paint triggered by the first visually non-empty layout.
+
+        * page/FrameView.cpp:
+        (WebCore::FrameView::fireLayoutRelatedMilestonesIfNeeded):
+        (WebCore::FrameView::firePaintRelatedMilestonesIfNeeded):
+        * page/LayoutMilestone.h:
+
+2018-11-16  Don Olmstead  <don.olmstead@sony.com>
+
+        Provide default implementations of Image and Icon
+        https://bugs.webkit.org/show_bug.cgi?id=191764
+
+        Reviewed by Michael Catanzaro.
+
+        Makes IconWPE and ImageWPE implementations the default.
+
+        * Sources.txt:
+        * SourcesWPE.txt:
+        * platform/graphics/Icon.cpp: Renamed from Source/WebCore/platform/graphics/wpe/IconWPE.cpp.
+        * platform/graphics/Image.cpp:
+        (WebCore::BitmapImage::invalidatePlatformData): Placed here for consistency with implementing ports.
+        (WebCore::Image::loadPlatformResource):
+        * platform/graphics/wpe/ImageWPE.cpp: Removed.
+
+2018-11-16  Brent Fulgham  <bfulgham@apple.com>
+
+        [Win] Reduce the use of WKSI library calls: CFNetwork
+        https://bugs.webkit.org/show_bug.cgi?id=191718
+        <rdar://problem/46108732>
+
+        Reviewed by Alex Christensen.
+
+        Remove custom WKSI CFNetwork calls, since the SPI is already documented in PAL. Just
+        make the same calls on Windows, like we did for iOS and macOS back in 2017.
+
+        Stop including WebKitSystemInterface.h for files that used to rely on it
+        for font-related features.
+        
+        Tested by existing Windows regression tests. There should be no change in behavior.
+
+        * platform/graphics/win/FontCacheWin.cpp:
+        * platform/graphics/win/FontCustomPlatformData.cpp:
+        * platform/graphics/win/FontPlatformDataCGWin.cpp:
+        * platform/network/cf/CookieStorageCFNet.cpp:
+        * platform/network/cf/CredentialStorageCFNet.cpp:
+        * platform/network/cf/NetworkStorageSessionCFNet.cpp:
+        (WebCore::createPrivateStorageSession):
+        (WebCore::NetworkStorageSession::switchToNewTestingSession):
+        (WebCore::NetworkStorageSession::ensureSession):
+        * platform/network/cf/ResourceError.h:
+        * platform/network/cf/ResourceErrorCF.cpp:
+        (WebCore::getSSLPeerCertificateData):
+        (WebCore::setSSLPeerCertificateData):
+        (WebCore::ResourceError::getSSLPeerCertificateDataBytePtr):
+        (WebCore::ResourceError::platformLazyInit):
+        (WebCore::ResourceError::cfError const):
+        * platform/network/cf/ResourceHandleCFNet.cpp:
+        (WebCore::setClientCertificateInSSLProperties):
+        (WebCore::ResourceHandle::createCFURLConnection):
+        * platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
+        * platform/network/cf/ResourceRequestCFNet.cpp:
+        * platform/network/cf/SocketStreamHandleImplCFNet.cpp:
+
+2018-11-16  Timothy Hatcher  <timothy@apple.com>
+
+        Add html{color:text} to the simpleUserAgentStyleSheet on macOS.
+        https://bugs.webkit.org/show_bug.cgi?id=191760
+
+        Reviewed by Antti Koivisto.
+
+        * css/CSSDefaultStyleSheets.cpp: Added html{color:text} to simpleUserAgentStyleSheet inside
+        a PLATFORM(MAC) copy of the string.
+
+2018-11-16  Jer Noble  <jer.noble@apple.com>
+
+        An early return from updateSchedulingInfo can leave some variables uninitialized.
+        https://bugs.webkit.org/show_bug.cgi?id=191755
+        <rdar://problem/39910089>
+
+        Reviewed by Brent Fulgham.
+
+        * Modules/webaudio/AudioBufferSourceNode.cpp:
+        (WebCore::AudioBufferSourceNode::process):
+        * Modules/webaudio/AudioScheduledSourceNode.cpp:
+        (WebCore::AudioScheduledSourceNode::updateSchedulingInfo):
+        * Modules/webaudio/OscillatorNode.cpp:
+        (WebCore::OscillatorNode::process):
+
+2018-11-16  Alicia Boya García  <aboya@igalia.com>
+
+        [MSE][GStreamer] Ignore caps notifications when tearing down the pipeline
+        https://bugs.webkit.org/show_bug.cgi?id=191578
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        Changing the demuxer to READY state (which is done only in the main
+        thread) triggers the unlinking of its srcpads, which in turns emits a
+        caps change notification in the previously linked element since they
+        become unnegotiated again.
+
+        We are not interested in caps notifications in these cases, so let's
+        just ignore caps notifications emitted from the main thread.
+
+        This fixes an assertion failure in the debug builds.
+
+        * platform/graphics/gstreamer/mse/AppendPipeline.cpp:
+        (WebCore::AppendPipeline::AppendPipeline):
+
+2018-11-16  Sihui Liu  <sihui_liu@apple.com>
+
+        Storing blobs in IDB on iOS: "Error preparing blob/file"
+        https://bugs.webkit.org/show_bug.cgi?id=188438
+        <rdar://problem/43097279>
+
+        Reviewed by Alex Christensen.
+
+        Grant sandbox extension of temp folder to network process, because we suggested network process had access to 
+        the folder on iOS device but it didn't. 
+
+        This makes some existing tests about IDB blob pass on iOS device.
+
+        * Modules/indexeddb/server/IDBBackingStore.h:
+        * Modules/indexeddb/server/SQLiteIDBTransaction.cpp:
+        (WebCore::IDBServer::SQLiteIDBTransaction::moveBlobFilesIfNecessary):
+        (WebCore::IDBServer::SQLiteIDBTransaction::deleteBlobFilesIfNecessary):
+        (WebCore::IDBServer::SQLiteIDBTransaction::abort):
+        * Modules/indexeddb/shared/InProcessIDBServer.h:
+
+2018-11-16  Don Olmstead  <don.olmstead@sony.com>
+
+        Add USE(LIBWPE) to WebCore
+        https://bugs.webkit.org/show_bug.cgi?id=191401
+
+        Reviewed by Michael Catanzaro.
+
+        No new tests. No change in behavior.
+
+        Migrates all PLATFORM(WPE) code that calls into wpe_* APIs to
+        USE(LIBWPE) instead.
+
+        Renames classes and files to use the suffix LibWPE.
+
+        * PlatformWPE.cmake:
+        * SourcesWPE.txt:
+        * platform/Pasteboard.h:
+        * platform/PasteboardStrategy.h:
+        * platform/PlatformKeyboardEvent.h:
+        * platform/PlatformPasteboard.h:
+        * platform/graphics/PlatformDisplay.cpp:
+        (WebCore::PlatformDisplay::createPlatformDisplay):
+        * platform/graphics/PlatformDisplay.h:
+        * platform/graphics/egl/GLContextEGL.h:
+        * platform/graphics/egl/GLContextEGLLibWPE.cpp: Renamed from Source/WebCore/platform/graphics/egl/GLContextEGLWPE.cpp.
+        (WebCore::GLContextEGL::createWPEContext):
+        * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
+        (WebCore::MediaPlayerPrivateGStreamerBase::ensureGstGLContext):
+        * platform/graphics/libwpe/PlatformDisplayLibWPE.cpp: Renamed from Source/WebCore/platform/graphics/wpe/PlatformDisplayWPE.cpp.
+        (WebCore::PlatformDisplayLibWPE::create):
+        (WebCore::PlatformDisplayLibWPE::PlatformDisplayLibWPE):
+        (WebCore::PlatformDisplayLibWPE::~PlatformDisplayLibWPE):
+        (WebCore::PlatformDisplayLibWPE::initialize):
+        * platform/graphics/libwpe/PlatformDisplayLibWPE.h: Renamed from Source/WebCore/platform/graphics/wpe/PlatformDisplayWPE.h.
+        * platform/libwpe/PasteboardLibWPE.cpp: Renamed from Source/WebCore/platform/wpe/PasteboardWPE.cpp.
+        * platform/libwpe/PlatformKeyboardEventLibWPE.cpp: Renamed from Source/WebCore/platform/wpe/PlatformKeyboardEventWPE.cpp.
+        * platform/libwpe/PlatformPasteboardLibWPE.cpp: Renamed from Source/WebCore/platform/wpe/PlatformPasteboardWPE.cpp.
+
+2018-11-16  Zalan Bujtas  <zalan@apple.com>
+
+        [iOS] 2 subsequent taps are required to trigger certain tasks on the desktop version of YouTube.com (hover vs click).
+        https://bugs.webkit.org/show_bug.cgi?id=191712
+        <rdar://problem/45612900>
+
+        Reviewed by Simon Fraser.
+
+        In handleSyntheticClick() we use WKContentObservation to figure out whether the tap should be treated as a hover or a click.
+        In general, if the mouse-move event triggers a visible content change, we assume we hit a hover-like drop down menu (or something similar)
+        and no need to dispatch a click event.
+        The idea here is that if the new content (result of the mouse-move event) does not respond to mouse click, it is most likely
+        only for tooltip-like reasons and it's ok to proceed with the click event.
+
+        Test: fast/events/touch/ios/click-instead-of-hover-simple.html
+
+        * rendering/updating/RenderTreeUpdater.cpp:
+        (WebCore::CheckForVisibilityChange::~CheckForVisibilityChange):
+
+2018-11-16  Zalan Bujtas  <zalan@apple.com>
+
+        [LFC][IFC] Add support for out-of-flow positioned boxes
+        https://bugs.webkit.org/show_bug.cgi?id=191726
+
+        Reviewed by Antti Koivisto.
+
+        While laying out formatting context roots (inline-block, floats) in an inline formatting context, we need to make sure
+        that their out-of-flow descendants get laid out as well.
+
+        Test: fast/inline/simple-inline-with-out-of-flow-descendant.html
+
+        * layout/inlineformatting/InlineFormattingContext.cpp:
+        (WebCore::Layout::InlineFormattingContext::layoutFormattingContextRoot const):
+        * layout/layouttree/LayoutTreeBuilder.cpp: This was returning the wrong context root when the container was also a context root.
+        (WebCore::Layout::TreeBuilder::createSubTree):
+
+2018-11-16  Thibault Saunier  <tsaunier@igalia.com>
+
+        [GStreamer][WebRTC] Add API to enable/disable device mocks
+        https://bugs.webkit.org/show_bug.cgi?id=191699
+
+        This basically us to test MediaStream/WebRTC support without
+        requiring cameras or microphones and is quite useful.
+
+        Also fix the GStreamerAudioMock by:
+          - Stop setting `leaky-upstream` on the GStreamerCapturer queue,
+            this was usefull when we were trying to bring the MediaStream
+            sources inside the main pipeline, it is not the case anymore
+            (and not doable with latest version of LibWebRTC).
+          - Use a 'ticks' wave on the gstreamer audiotestsrc so the test
+            stream is similar to what Apple port does.
+
+        Reviewed by Xabier Rodriguez-Calvar.
+
+        The mocks are already tested and the API is really simple.
+
+        * platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp:
+        (WebCore::GStreamerAudioCapturer::createSource):
+        * platform/mediastream/gstreamer/GStreamerAudioCapturer.h:
+        * platform/mediastream/gstreamer/GStreamerCapturer.cpp:
+        (WebCore::GStreamerCapturer::addSink):
+        * platform/mediastream/gstreamer/GStreamerCapturer.h:
+
 2018-11-16  Thibault Saunier  <tsaunier@igalia.com>
 
         [GStreamer][MediaStream] Handle track addition and removal