Timeline



Aug 22, 2016:

11:59 PM Changeset in webkit [204768] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.12/Source/WebCore

Merge r201985 - Cleanup RenderBlock::removePositionedObjects
https://bugs.webkit.org/show_bug.cgi?id=158670

Reviewed by Simon Fraser.

No change in functionality.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):
(WebCore::RenderBlock::removePositionedObject):
(WebCore::RenderBlock::removePositionedObjects):

  • rendering/RenderBlock.h:
11:52 PM Changeset in webkit [204767] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.12

Merge r201984 - Remove positioned descendants when RenderBlock is no longer a containing block.
https://bugs.webkit.org/show_bug.cgi?id=158655
<rdar://problem/26510032>

Reviewed by Simon Fraser.

Normally the RenderView is the containing block for fixed positioned renderers.
However when a renderer acquires some transform related properties, it becomes the containing
block for all the fixed positioned renderers in its descendant tree.
When the last transform related property is removed, the renderer is no longer a containing block
and we need to remove all these positioned renderers from the descendant tracker map (gPositionedDescendantsMap).
They will be inserted back into the tracker map during the next layout (either under the RenderView or
under the next transformed renderer in the ancestor chain).

Source/WebCore:

Test: fast/block/fixed-position-reparent-when-transition-is-removed.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::removePositionedObjectsIfNeeded):

LayoutTests:

  • fast/block/fixed-position-reparent-when-transition-is-removed-expected.txt: Added.
  • fast/block/fixed-position-reparent-when-transition-is-removed.html: Added.
11:51 PM Changeset in webkit [204766] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.12

Merge r201666 - Incorrect rendering on boostmobile FAQ page
https://bugs.webkit.org/show_bug.cgi?id=158303
<rdar://problem/26603462>

Reviewed by Chris Dumez.

Initial value for background-color is 'transparent'. see https://drafts.csswg.org/css-backgrounds-3/#background-color

Source/WebCore:

Test: fast/selectors/non-visited-link-backround-color.html

  • css/CSSPropertyNames.in:

LayoutTests:

  • fast/selectors/non-visited-link-backround-color-expected.html: Added.
  • fast/selectors/non-visited-link-backround-color.html: Added.
11:44 PM Changeset in webkit [204765] by Chris Dumez
  • 50 edits in trunk

Drop TextTrackCue's constructor as per the latest specification
https://bugs.webkit.org/show_bug.cgi?id=161061

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/semantics/embedded-content/media-elements/historical-expected.txt:

Source/WebCore:

Drop TextTrackCue's constructor as per the latest specification:

Firefox and Chrome do not have this constructor. Web Authors
are supposed to use the VTTCue constructor instead.

No new tests, rebaselined existing tests.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::TextTrackCue): Deleted.

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::cueShadowPseudoId): Deleted.

  • html/track/TextTrackCue.idl:

LayoutTests:

Update existing tests to use VTTCue's constructor instead of
TextTrackCue's.

  • js/dom/constructor-length.html:
  • media/track/getCueAsHTMLCrash.html:
  • media/track/opera/interfaces/TextTrack/activeCues.html:
  • media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html:
  • media/track/opera/interfaces/TextTrackCue/line.html:
  • media/track/opera/interfaces/TextTrackCue/onenter.html:
  • media/track/opera/interfaces/TextTrackCue/onexit.html:
  • media/track/opera/interfaces/TextTrackCue/snapToLines.html:
  • media/track/opera/interfaces/TextTrackCue/text.html:
  • media/track/opera/interfaces/TextTrackCue/vertical.html:
  • media/track/opera/interfaces/TextTrackCueList/getter.html:
  • media/track/opera/track/track-element/src-clear-cues.html:
  • media/track/opera/track/webvtt/rendering/reftest/repaint.html:
  • media/track/regions-webvtt/text-track-cue-region-attribute.html:
  • media/track/track-add-remove-cue-expected.txt:
  • media/track/track-add-remove-cue.html:
  • media/track/track-cue-empty-cue-text.html:
  • media/track/track-cue-empty-text-crash.html:
  • media/track/track-cue-inline-assertion-crash.html:
  • media/track/track-cue-negative-timestamp-expected.txt:
  • media/track/track-cue-negative-timestamp.html:
  • media/track/track-cue-rendering-empty-cue-crash.html:
  • media/track/track-cue-rendering-mode-changed.html:
  • media/track/track-disabled-addcue.html:
  • media/track/track-remove-active-cue-crash.html:
  • media/track/w3c/interfaces/TextTrack/addCue.html:
  • media/track/w3c/interfaces/TextTrack/cues.html:
  • media/track/w3c/interfaces/TextTrack/removeCue.html:
  • media/track/w3c/interfaces/TextTrackCue/align.html:
  • media/track/w3c/interfaces/TextTrackCue/endTime.html:
  • media/track/w3c/interfaces/TextTrackCue/id.html:
  • media/track/w3c/interfaces/TextTrackCue/pauseOnExit.html:
  • media/track/w3c/interfaces/TextTrackCue/startTime.html:
  • media/track/w3c/interfaces/TextTrackCue/track.html:
  • media/track/w3c/interfaces/TextTrackCueList/getCueById.html:
  • media/track/w3c/interfaces/TextTrackCueList/length.html:
  • media/video-controls-captions.html:
  • platform/mac/js/dom/constructor-length-expected.txt:
11:35 PM Changeset in webkit [204764] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.12

Merge r201407 - Setting overflow:hidden does not always repaint clipped content.
https://bugs.webkit.org/show_bug.cgi?id=116994
rdar://problem/26476697

Issue repaint for both layout and visual overflow rects when the container starts
clipping overflow content.

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/repaint/overflow-hidden-repaint.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::updateFromStyle):

LayoutTests:

  • fast/repaint/overflow-hidden-repaint-expected.html: Added.
  • fast/repaint/overflow-hidden-repaint.html: Added.
11:34 PM Changeset in webkit [204763] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.12/Source/WebCore

Merge r201384 - Addressing post-review comments on r200971.

Reviewed by Darin Adler.

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint):

11:24 PM Changeset in webkit [204762] by Carlos Garcia Campos
  • 8 edits in releases/WebKitGTK/webkit-2.12

Merge r201346 - fast/table/neighboring-cells-when-collapsed-border-changes.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=158009

Reviewed by David Hyatt.

RenderTable::invalidateCollapsedBorders() early returns on m_collapsedEmptyBorderIsPresent
which prevents us from marking neighboring cells dirty when style changes.
Decouple the "invalidate the collapsed borders" and the "mark the neighboring cells dirty" logic.

Source/WebCore:

Covered by existing tests. (and now we agree with FF on cached-change-cell-border-width.html)

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::invalidateCollapsedBorders):
(WebCore::markCellDirtyWhenCollapsedBorderChanges): Deleted.

  • rendering/RenderTableCell.cpp:

(WebCore::markCellDirtyWhenCollapsedBorderChanges):
(WebCore::RenderTableCell::styleDidChange):

LayoutTests:

  • fast/table/border-collapsing/cached-change-cell-border-width-expected.txt: Progression. FF agrees.
  • fast/table/neighboring-cells-when-collapsed-border-changes.html:
  • platform/ios-simulator-wk1/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt:
  • platform/mac-wk1/TestExpectations:
  • platform/mac/fast/table/border-collapsing/cached-change-cell-border-width-expected.txt:
11:22 PM Changeset in webkit [204761] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.12

Merge r201296 - Changing border color and size simultaneously fails to repaint.
https://bugs.webkit.org/show_bug.cgi?id=157967
<rdar://problem/26423918>

Reviewed by David Hyatt.

This patch ensures that the neighboring tables cells are dirtied when collapsed border change requires layout.

Source/WebCore:

Test: fast/table/neighboring-cells-when-collapsed-border-changes.html

  • rendering/RenderTable.cpp:

(WebCore::markCellDirtyWhenCollapsedBorderChanges):
(WebCore::RenderTable::invalidateCollapsedBorders):

LayoutTests:

  • fast/table/neighboring-cells-when-collapsed-border-changes-expected.html: Added.
  • fast/table/neighboring-cells-when-collapsed-border-changes.html: Added.
11:19 PM Changeset in webkit [204760] by Carlos Garcia Campos
  • 10 edits
    4 adds in releases/WebKitGTK/webkit-2.12

Merge r201234 - width: 1% on nested table cell causes its table to hog horizontal space
https://bugs.webkit.org/show_bug.cgi?id=144696
<rdar://problem/20839572>

Reviewed by David Hyatt and Tim Horton.

This patch is based on https://chromium.googlesource.com/chromium/src/+/9428cfb16993a2329e87c65da096ca295132ef0f

Source/WebCore:

Tests: fast/table/inner-percent-width-affects-outer-floated-div.html

fast/table/inner-percent-width-doesnt-affect-ancestor-columns.html

  • rendering/AutoTableLayout.cpp:

(WebCore::shouldScaleColumnsForParent):
(WebCore::shouldScaleColumnsForSelf):
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::shouldScaleColumns): Deleted.

  • rendering/AutoTableLayout.h:
  • rendering/RenderTable.cpp:

(WebCore::RenderTable::updateLogicalWidth):

  • rendering/TableLayout.h:

(WebCore::TableLayout::scaledWidthFromPercentColumns):

LayoutTests:

  • fast/table/inner-percent-width-affects-outer-floated-div-expected.html: Added.
  • fast/table/inner-percent-width-affects-outer-floated-div.html: Added.
  • fast/table/inner-percent-width-doesnt-affect-ancestor-columns-expected.html: Added.
  • fast/table/inner-percent-width-doesnt-affect-ancestor-columns.html: Added.
  • platform/mac/fast/table/border-collapsing/cached-change-row-border-width-expected.txt:
  • platform/mac/fast/table/border-collapsing/cached-change-tbody-border-width-expected.txt:
  • platform/mac/fast/table/max-width-integer-overflow-expected.txt:
11:09 PM Changeset in webkit [204759] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Styles -> Computed -> Box Model shows NaN x NaN for invisible elements
https://bugs.webkit.org/show_bug.cgi?id=161038

Patch by Devin Rousso <Devin Rousso> on 2016-08-22
Reviewed by Joseph Pecoraro.

  • UserInterface/Base/Utilities.js:

Add figureDash variable.

  • UserInterface/Views/BoxModelDetailsSectionRow.js:

(WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createElement):
(WebInspector.BoxModelDetailsSectionRow.prototype._updateMetrics.createBoxPartElement):
Moved isNaN check of value to common createElement.

10:56 PM Changeset in webkit [204758] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebInspectorUI

Web Inspector: Visual styles sidebar should do something sane for SVG elements
https://bugs.webkit.org/show_bug.cgi?id=148269

Patch by Devin Rousso <Devin Rousso> on 2016-08-22
Reviewed by Joseph Pecoraro.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Models/DOMNode.js:

(WebInspector.DOMNode.prototype.get ownerSVGElement):
(WebInspector.DOMNode.prototype.isSVGElement):
Climbs ancestor tree to determine if node is an SVG node.

  • UserInterface/Views/VisualStyleDetailsPanel.js:

(WebInspector.VisualStyleDetailsPanel.prototype.initialLayout):
(WebInspector.VisualStyleDetailsPanel.prototype._updateSections):
(WebInspector.VisualStyleDetailsPanel.prototype._populatePositionSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateDimensionsSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateContentSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateFillSection):
(WebInspector.VisualStyleDetailsPanel.prototype._populateStrokeSection):

  • UserInterface/Views/VisualStylePropertyEditor.css:

(.visual-style-property-container.inactive):
(.visual-style-property-container > *:first-child:matches(.visual-style-property-value-container)):

  • UserInterface/Views/VisualStyleRelativeNumberSlider.css:

(.visual-style-property-container.number-input-box.relative-number-slider > .relative-slider):

  • UserInterface/Views/VisualStyleUnitSlider.css:

(.visual-style-property-container.unit-slider > .visual-style-property-value-container > .slider):
(.visual-style-property-container.unit-slider.opacity > .visual-style-property-value-container > .slider): Deleted.

10:34 PM Changeset in webkit [204757] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Visual Styles: "Text -> Content" section should only be visible for pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=158272

Patch by Devin Rousso <Devin Rousso> on 2016-08-22
Reviewed by Joseph Pecoraro.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/VisualStyleDetailsPanel.css:

(.sidebar > .panel.details.css-style .visual > .details-section :matches(.details-section, .group).inactive):
(.sidebar > .panel.details.css-style .visual > .details-section :matches(.details-section, .group).inactive > *):
(.visual-style-property-container.transition): Deleted.
(.visual-style-property-container.animation): Deleted.

  • UserInterface/Views/VisualStyleDetailsPanel.js:

(WebInspector.VisualStyleDetailsPanel.prototype.initialLayout):
(WebInspector.VisualStyleDetailsPanel.prototype._updateSections):
(WebInspector.VisualStyleDetailsPanel.prototype._populateContentSection):

10:12 PM Changeset in webkit [204756] by Dewei Zhu
  • 3 edits in trunk/Tools

Stop python icon bouncing in the dock while running browser benchmarks.
https://bugs.webkit.org/show_bug.cgi?id=161066

Reviewed by Ryosuke Niwa.

Bouncing python icon may impact browser benchmark results.

  • Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:

(OSXBrowserDriver.prepare_env):
(OSXBrowserDriver.restore_env):

10:12 PM Changeset in webkit [204755] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Entering ":n" in Open Resource Dialog, where n > number of lines, should jump to the last line
https://bugs.webkit.org/show_bug.cgi?id=160840

Patch by Devin Rousso <Devin Rousso> on 2016-08-22
Reviewed by Joseph Pecoraro.

  • UserInterface/Views/TextEditor.js:

(TextEditor.prototype.revealPosition):
Limit the given line and column to the maximum number of lines and the column count on the
resulting line.

9:47 PM Changeset in webkit [204754] by commit-queue@webkit.org
  • 7 edits
    4 adds in trunk/Source/WebInspectorUI

Web Inspector: Add indicator to matched selector being a pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=160893

Patch by Devin Rousso <Devin Rousso> on 2016-08-22
Reviewed by Joseph Pecoraro.

Instead of using "{}" icons for CSS rules, use a "P" icon with the same coloring to identify
that the rule contains a pseudo-selector that is currently being applied to the selected element.

  • UserInterface/Base/Utilities.js:

(Array.prototype.toggleIncludes):
Toggles whether or not to include the given value in the array based on its existence or a
"force" flag parameter.

  • UserInterface/Images/StyleRuleAuthorPseudo.svg:
  • UserInterface/Images/StyleRuleInspectorPseudo.svg:
  • UserInterface/Images/StyleRuleUserAgentPseudo.svg:
  • UserInterface/Images/StyleRuleUserPseudo.svg:
  • UserInterface/Models/CSSRule.js:

(WebInspector.CSSRule.prototype.hasMatchedPseudoElementSelector):

  • UserInterface/Models/CSSSelector.js:

(WebInspector.CSSSelector.prototype.isPseudoElementSelector):

  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection.prototype.refresh):

  • UserInterface/Views/StyleRuleIcons.css:

(.author-style-rule-icon.pseudo-element-selector .icon):
(.user-style-rule-icon.pseudo-element-selector .icon):
(.user-agent-style-rule-icon.pseudo-element-selector .icon):
(.inspector-style-rule-icon.pseudo-element-selector .icon):

  • UserInterface/Views/VisualStyleSelectorTreeItem.js:

(WebInspector.VisualStyleSelectorTreeItem):
(WebInspector.VisualStyleSelectorTreeItem.prototype.get iconClassName):
(WebInspector.VisualStyleSelectorTreeItem.prototype._updateSelectorIcon):

6:49 PM Changeset in webkit [204753] by jiewen_tan@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, update failure list of iOS simulator WK1 compositing test.

  • platform/ios-simulator-wk1/TestExpectations:
6:32 PM Changeset in webkit [204752] by jiewen_tan@apple.com
  • 4 edits in trunk/LayoutTests

Unreviewed, iOS simulator WK1 tests gardening.

Move the following tests from failure to pass:
compositing/iframes/become-composited-nested-iframes.html,
compositing/images/clip-on-directly-composited-image.html,
compositing/overflow/dynamic-composited-scrolling-status.html.

  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-simulator/TestExpectations:
6:04 PM Changeset in webkit [204751] by jiewen_tan@apple.com
  • 2 edits
    30 deletes in trunk/LayoutTests

Unreviewed, iOS simulator WK1 tests rebasing.

  • platform/ios-simulator-wk1/compositing/absolute-inside-out-of-view-fixed-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/backface-visibility-in-3dtransformed-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/border-radius-no-backing-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/filter-no-backing-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/masked-child-no-backing-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/no-backing-for-opacity-0-child-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/replaced-child-no-backing-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/backing/toggle-opacity-0-child-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/bounds-in-flipped-writing-mode-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/clip-child-by-non-stacking-ancestor-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/clipping/border-radius-overflow-hidden-stacking-context-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/columns/ancestor-clipped-in-paginated-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/columns/clipped-in-paginated-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/columns/composited-columns-vertical-rl-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/columns/composited-nested-columns-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/background-clip-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/background-color-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/body-background-painted-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/body-background-skipped-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/filter-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/hidden-with-visible-child-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/hidden-with-visible-text-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/layer-opacity-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/layer-transform-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/opaque-with-scrolled-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/table-parts-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/contents-opaque/visibility-hidden-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/bounds-clipped-composited-child-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/bounds-ignores-hidden-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/clip-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/clip-inside-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/fixed-transformed-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/flipped-writing-mode-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/foreground-layer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/limit-layer-bounds-positioned-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/limit-layer-bounds-transformed-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/iframes/become-overlapped-iframe-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/iframes/overlapped-iframe-iframe-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/iframes/resizer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/mismatched-rotated-transform-animation-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/multiple-keyframes-animation-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-animation-clipping-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-animation-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-child-layer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-clipping-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-transformed-3d-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-transformed-layer-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/overlap-transforms-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/rotate3d-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/scale-rotation-animation-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/scroll-partial-update-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/stacking-context-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/subpixel-adjacent-layers-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/translate-animation-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/translate-scale-animation-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/translatez-overlap-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/layer-creation/will-change-change-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/masks/clip-path-composited-descendent-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/masks/mask-layer-size-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/media-controls-bar-appearance-big-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/media-controls-bar-appearance-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/overflow-trumps-transform-style-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/overflow/content-loses-scrollbars-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/overflow/resize-painting-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-from-outflow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/regions/fixed-transformed-in-named-flow-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/repaint/positioned-movement-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/repaint/repaint-on-layer-grouping-change-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/rtl/rtl-relative-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/rtl/rtl-scrolling-with-transformed-descendants-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/tiling/huge-layer-add-remove-child-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/video/video-object-position-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/visibility/layer-visible-content-expected.txt: Removed.
  • platform/ios-simulator-wk1/compositing/visible-rect/backing-change-height-from-zero-expected.txt: Removed.
  • platform/ios-simulator-wk2/compositing/layer-creation/overlap-animation-container-expected.txt: Removed.
  • platform/ios-simulator/compositing/layer-creation/overlap-animation-container-expected.txt:
5:48 PM Changeset in webkit [204750] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.50.0.6

New tag.

5:43 PM Changeset in webkit [204749] by Yusuke Suzuki
  • 2 edits in trunk/Source/bmalloc

Unreviewed, build fix on GCC environment
https://bugs.webkit.org/show_bug.cgi?id=161058

std::forward is declared in <utility> header.

  • bmalloc/ScopeExit.h:
5:03 PM Changeset in webkit [204748] by Chris Dumez
  • 17 edits
    1 copy
    1 move in trunk

Unreviewed, rolling out r204745.

Broke the Windows build

Reverted changeset:

"CanvasRenderingContext2D should not have a
CanvasRenderingContext parent interface"
https://bugs.webkit.org/show_bug.cgi?id=161054
http://trac.webkit.org/changeset/204745

4:30 PM Changeset in webkit [204747] by bshafiei@apple.com
  • 6 edits
    3 adds in branches/safari-602.1.50.0-branch

Merge r204521. rdar://problem/27075526

4:23 PM Changeset in webkit [204746] by bshafiei@apple.com
  • 5 edits in branches/safari-602.1.50.0-branch/Source

Versioning.

4:23 PM Changeset in webkit [204745] by Chris Dumez
  • 17 edits
    1 move
    1 delete in trunk

CanvasRenderingContext2D should not have a CanvasRenderingContext parent interface
https://bugs.webkit.org/show_bug.cgi?id=161054

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:

CanvasRenderingContext2D should not have a CanvasRenderingContext parent interface
as per:

Firefox and Chrome agree with the specification.

No new tests, rebaselined existing test.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCanvasRenderingContext.h: Renamed from Source/WebCore/bindings/js/JSCanvasRenderingContextCustom.cpp.

(WebCore::toJS):

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:

(WebCore::JSCanvasRenderingContext2DOwner::isReachableFromOpaqueRoots):
(WebCore::JSCanvasRenderingContext2D::visitAdditionalChildren):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::JSDocument::getCSSCanvasContext):
(WebCore::JSDocument::createTouchList): Deleted.

  • bindings/js/JSHTMLCanvasElementCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • dom/Document.idl:
  • html/canvas/CanvasRenderingContext.idl: Removed.
  • html/canvas/CanvasRenderingContext2D.idl:
  • html/canvas/WebGL2RenderingContext.idl:
  • html/canvas/WebGLRenderingContext.idl:
  • html/canvas/WebGLRenderingContextBase.idl:
4:18 PM Changeset in webkit [204744] by ggaren@apple.com
  • 4 edits
    2 adds in trunk/Source/bmalloc

bmalloc: speed up the lock slow path
https://bugs.webkit.org/show_bug.cgi?id=161058

Reviewed by Filip Pizlo.

It is generally accepted practice that a lock should yield instead of
spinning when a lock acquisition fails, to avoid wasting CPU and power.

There are two problems with this generally accepted practice:

(1) It's a fallacy that yielding is free. In reality, yielding itself
consumes CPU and power -- by performing a syscall, running the OS
scheduler, and possibly performing a context switch. (Instruments
traces of MallocBench show the cost of yielding.) Therefore, spinning a
little to avoid yielding can actually *save* CPU and power.

(2) std::this_thread_yield() on Darwin is way too aggressive: It not only
yields but also depresses your priority to absolute zero for 10ms. A
recent PLT trace showed a few spots where the main thread just gave up
on loading and rendering a page for 10ms so an unimportant background
task could run.

To correct these problems, this patch adds a little bit of spinning to
the bmalloc lock slow path.

Below are performance results on various CPUs.

Mac Pro (12 hyperthreaded cores = 24 threads):

Baseline Patch Δ

Execution Time:

message_one 173ms 173ms
message_many 953ms 927ms 1.03x faster
churn --parallel 60ms 41ms
1.46x faster
list_allocate --parallel 224ms 143ms 1.57x faster
tree_allocate --parallel 1,190ms 758ms
1.57x faster
tree_churn --parallel 1,517ms 906ms 1.67x faster
facebook --parallel 6,519ms 4,580ms
1.42x faster
reddit --parallel 5,097ms 3,411ms 1.49x faster
flickr --parallel 4,903ms 3,501ms
1.4x faster
theverge --parallel 6,641ms 4,505ms 1.47x faster

<geometric mean> 1,158ms 832ms 1.39x faster
<arithmetic mean> 2,728ms 1,895ms
1.44x faster
<harmonic mean> 332ms 240ms 1.38x faster

MacBook Air (2 hyperthreaded cores = 4 threads):

Baseline Patch Δ

Execution Time:

message_one 911ms 907ms 1.0x faster
message_many 515ms 513ms
1.0x faster
churn --parallel 132ms 134ms ! 1.02x slower
list_allocate --parallel 104ms 102ms 1.02x faster
tree_allocate --parallel 117ms 111ms
1.05x faster
tree_churn --parallel 154ms 151ms 1.02x faster
facebook --parallel 719ms 687ms
1.05x faster
reddit --parallel 382ms 341ms 1.12x faster
flickr --parallel 372ms 345ms
1.08x faster
theverge --parallel 489ms 444ms 1.1x faster

<geometric mean> 299ms 287ms 1.04x faster
<arithmetic mean> 390ms 374ms
1.04x faster
<harmonic mean> 227ms 220ms 1.03x faster

iPad (2 cores = 2 threads):

[ Doesn't run Ruby, so no pretty subtest output. ]

Baseline Patch Δ

Execution Time: 174.14ms 171.5ms 1.02x faster

  • bmalloc.xcodeproj/project.pbxproj:
  • bmalloc/ScopeExit.h: Added. A barebones very wimpy version of

WTF::ScopeExit.
(bmalloc::ScopeExit::ScopeExit):
(bmalloc::ScopeExit::~ScopeExit):
(bmalloc::makeScopeExit):

  • bmalloc/StaticMutex.cpp:

(bmalloc::StaticMutex::lockSlowCase): Spin before yielding -- that's the
speedup. Don't spin if another CPU is already spinning. In theory, more
than one spinner accomplishes nothing, and I found that there's a cutoff
around 8 or 16 spinners that becomes performance negative on Mac Pro.

(Note: Another way to accomplish a similar result, if you don't want to
use a bit of state in the lock, is to spin for a random duration between
0 and aLot. I tested a version of WTF::WeakRandom with unsynchronized
static state and it worked great. But I ultimately opted for the explicit
bit because I thought it was clearer.)

  • bmalloc/StaticMutex.h:

(bmalloc::StaticMutex::init): Initialize our new bit.

  • bmalloc/ThreadSwitch.h: Added.

(bmalloc::threadSwitch): Don't call yield() on Darwin because it's too
aggressive. swtch() does what we want: Go run something else, without
any other side-effects.

3:44 PM Changeset in webkit [204743] by andersca@apple.com
  • 19 edits
    1 delete in trunk/Source/WebKit2

Remove Arguments.h
https://bugs.webkit.org/show_bug.cgi?id=161060

Reviewed by Tim Horton.

  • Platform/IPC/Arguments.h: Removed.

(IPC::Arguments::Arguments): Deleted.
(IPC::Arguments::encode): Deleted.
(IPC::Arguments::decode): Deleted.

  • Platform/IPC/Connection.h:
  • Platform/IPC/HandleMessage.h:
  • Shared/AssistedNodeInformation.cpp:
  • Shared/Cocoa/DataDetectionResult.mm:
  • Shared/EditorState.cpp:
  • Shared/WebContextMenuItemData.cpp:
  • Shared/WebMouseEvent.cpp:
  • Shared/WebPlatformTouchPoint.cpp:
  • Shared/WebPopupItem.cpp:
  • Shared/WebTouchEvent.cpp:
  • Shared/WebWheelEvent.cpp:
  • Shared/ios/InteractionInformationAtPosition.mm:
  • Shared/ios/WebPlatformTouchPointIOS.cpp:
  • Shared/ios/WebTouchEventIOS.cpp:
  • Shared/mac/WebGestureEvent.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:
  • WebProcess/WebPage/WebPage.cpp:
3:10 PM Changeset in webkit [204742] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Move tuple coding to ArgumentCoders.h
https://bugs.webkit.org/show_bug.cgi?id=161059

Reviewed by Tim Horton.

  • Platform/IPC/ArgumentCoders.h:

(IPC::TupleCoder::encode):
(IPC::TupleCoder::decode):

  • Platform/IPC/Arguments.h:

(IPC::TupleCoder::encode): Deleted.
(IPC::TupleCoder::decode): Deleted.

  • Scripts/webkit/messages.py:

(forward_declarations_and_headers):

2:59 PM Changeset in webkit [204741] by bshafiei@apple.com
  • 5 edits in branches/safari-602-branch/Source

Versioning.

2:38 PM Changeset in webkit [204740] by keith_miller@apple.com
  • 4 edits in trunk/Source

Actually enable the WASM build.
https://bugs.webkit.org/show_bug.cgi?id=160933

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Fix bug where we assumed that every frame would have a CodeBlock.

  • inspector/ScriptCallStackFactory.cpp:

(Inspector::CreateScriptCallStackFunctor::operator()):

Source/WTF:

  • wtf/FeatureDefines.h:
2:31 PM Changeset in webkit [204739] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Simplify the generated message structs
https://bugs.webkit.org/show_bug.cgi?id=161057

Reviewed by Geoffrey Garen.

Use a class template to transform the Reply and Argument tuple types for encoding/decoding
instead of generating them for each message.

  • Platform/IPC/HandleMessage.h:

(IPC::handleMessage):
(IPC::handleMessageDelayed):

  • Scripts/webkit/messages.py:

(reply_type):
(message_to_struct_declaration):
(decode_type): Deleted.

2:21 PM Changeset in webkit [204738] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

Skip the test in http/tests/navigation/ping-attribute in iOS WebKit 2

Touch events are not supported in WebKit for iOS Simulator built with the public iOS SDK.
The tests simulate mouse events when run in DumpRenderTree. And simulating mouse events
is supported in WebKit for iOS Simulator built with the public iOS SDK.

  • platform/ios-simulator-wk2/TestExpectations:
2:11 PM Changeset in webkit [204737] by andersca@apple.com
  • 7 edits
    3 deletes in trunk/Source/WebKit2

Remove MessageRecorder
https://bugs.webkit.org/show_bug.cgi?id=161022

Reviewed by Tim Horton.

  • Platform/IPC/ArgumentCoders.cpp:

(IPC::ArgumentCoder<uuid_t>::encode): Deleted.
(IPC::ArgumentCoder<uuid_t>::decode): Deleted.

  • Platform/IPC/ArgumentCoders.h:
  • Platform/IPC/Connection.cpp:

(IPC::Connection::sendMessage):
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::dispatchSyncMessage): Deleted.
(IPC::Connection::dispatchMessage): Deleted.

  • Platform/IPC/Connection.h:
  • Platform/IPC/Encoder.cpp:

(IPC::Encoder::encodeHeader): Deleted.

  • Platform/IPC/MessageRecorder.cpp: Removed.

(IPC::MessageRecorder::isEnabled): Deleted.
(IPC::MessageRecorder::recordOutgoingMessage): Deleted.
(IPC::MessageRecorder::recordIncomingMessage): Deleted.
(IPC::MessageRecorder::MessageProcessingToken::MessageProcessingToken): Deleted.
(IPC::MessageRecorder::MessageProcessingToken::~MessageProcessingToken): Deleted.

  • Platform/IPC/MessageRecorder.h: Removed.

(IPC::MessageRecorder::MessageRecorder): Deleted.

  • Platform/IPC/MessageRecorderProbes.d: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
1:28 PM Changeset in webkit [204736] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk

Make NetworkLoadTiming use double for higher precision in Resource Timing
https://bugs.webkit.org/show_bug.cgi?id=161051

Patch by Johan K. Jensen <johan_jensen@apple.com> on 2016-08-22
Reviewed by Alex Christensen.

Source/WebCore:

Test: http/tests/misc/resource-timing-resolution.html

  • page/Performance.h:
  • page/Performance.cpp:

(WebCore::Performance::now):
(WebCore::Performance::reduceTimeResolution):
Add new function to reduce time resolution.

  • page/PerformanceResourceTiming.cpp:

(WebCore::monotonicTimeToDocumentMilliseconds):
(WebCore::PerformanceResourceTiming::resourceTimeToDocumentMilliseconds):
Only use the reduced timing resolution for full timestamps and deltas.

(WebCore::PerformanceResourceTiming::connectStart): Use doubles.

  • page/PerformanceResourceTiming.h: Use doubles.
  • page/PerformanceTiming.cpp: Use doubles.

(WebCore::toIntegerMilliseconds): Use doubles.
(WebCore::PerformanceTiming::connectStart): Use doubles.
(WebCore::PerformanceTiming::resourceLoadTimeRelativeToFetchStart): Use doubles.

  • page/PerformanceTiming.h: Use doubles.
  • platform/network/NetworkLoadTiming.h: Use doubles.
  • platform/network/curl/ResourceHandleManager.cpp: Use doubles.

(WebCore::milisecondsSinceRequest): Use doubles.
(WebCore::calculateWebTimingInformations): Use doubles.

  • platform/network/soup/ResourceHandleSoup.cpp: Use doubles.

(WebCore::milisecondsSinceRequest): Use doubles.
(WebCore::networkEventCallback): Use doubles.

LayoutTests:

Test that resources timing information are close deltas to a multiple of expected resolution.

  • http/tests/misc/resource-timing-resolution-expected.txt: Added.
  • http/tests/misc/resource-timing-resolution.html: Added.
1:13 PM Changeset in webkit [204735] by achristensen@apple.com
  • 6 edits in trunk/Source

Fix Mac CMake build after r204717.

  • PlatformMac.cmake:
1:11 PM Changeset in webkit [204734] by jfernandez@igalia.com
  • 4 edits
    2 adds in trunk

[css-grid] Stretch alignment doesn't work for orthogonal flows
https://bugs.webkit.org/show_bug.cgi?id=160076

Reviewed by Darin Adler.

Source/WebCore:

After implementing orthogonal flow support for track sizing and basic
alignment logic, we can now implement stretching logic in orthogonal
scenarios, which was not allowed so far.

Thanks to the recent changes which made the grid layout code more
independent to the grid container's and its children's flow, the
implementation of the stretching logic can be done in a clearer way.

This patch implements the missing logic and performs some refactoring
so it became flow direction independent.

Test: fast/css-grid-layout/grid-align-justify-stretch-with-orthogonal-flows.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::applyStretchAlignmentToChildIfNeeded):

LayoutTests:

Additional layout tests to verify the stretching logic works as
expected in orthogonal flow scenarios.

  • fast/css-grid-layout/grid-align-justify-stretch-with-orthogonal-flows-expected.txt: Added.
  • fast/css-grid-layout/grid-align-justify-stretch-with-orthogonal-flows.html: Added.
12:48 PM Changeset in webkit [204733] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Invalid resource load statistics iterator when redirecting
https://bugs.webkit.org/show_bug.cgi?id=161021
<rdar://problem/27856875>

Reviewed by Dean Jackson.

If a load is the result of a redirect, an additional entry is added to the HashSet
containing the visited domains. This invalidates any existing iterators, so we
need to get a new iterator for further updates.

No change in functionality.

  • loader/ResourceLoadObserver.cpp:

(WebCore::ResourceLoadObserver::logSubresourceLoading):

12:45 PM Changeset in webkit [204732] by rniwa@webkit.org
  • 22 edits
    6 adds
    6 deletes in trunk

Rename CustomElementsRegistry to CustomElementRegistry
https://bugs.webkit.org/show_bug.cgi?id=161028

Reviewed by Darin Adler.

Source/JavaScriptCore:

Added customElements and CustomElementRegistry to the common identifiers list as they're used on JSDOMWindow
to hide window.customElements and CustomElementRegistry interface behind a runtime flag.

  • runtime/CommonIdentifiers.h:

Source/WebCore:

Renamed CustomElementsRegistry to CustomElementRegistry per https://github.com/w3c/webcomponents/issues/548.

Also hide window.customElements and CustomElementRegistry interface behind a runtime enabled.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCustomElementRegistryCustom.cpp: Renamed from JSCustomElementsRegistryCustom.cpp.

(WebCore::getCustomElementCallback):
(WebCore::JSCustomElementRegistry::define):

  • bindings/js/JSHTMLElementCustom.cpp:

(WebCore::constructJSHTMLElement):

  • dom/CustomElementReactionQueue.cpp:

(WebCore::findInterfaceForCustomElement):

  • dom/CustomElementRegistry.cpp: Renamed from CustomElementsRegistry.cpp.

(WebCore::CustomElementRegistry::create):
(WebCore::CustomElementRegistry::CustomElementRegistry):
(WebCore::CustomElementRegistry::~CustomElementRegistry):
(WebCore::CustomElementRegistry::addElementDefinition):
(WebCore::CustomElementRegistry::addUpgradeCandidate):
(WebCore::CustomElementRegistry::findInterface):
(WebCore::CustomElementRegistry::containsConstructor):

  • dom/CustomElementRegistry.h: Renamed from CustomElementsRegistry.h.
  • dom/CustomElementRegistry.idl: Renamed from CustomElementsRegistry.idl.
  • dom/Document.cpp:

(WebCore::createUpgradeCandidateElement):
(WebCore::createHTMLElementWithNameValidation):
(WebCore::createFallbackHTMLElement):

  • dom/Element.cpp:
  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::createHTMLElementOrFindCustomElementInterface):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::ensureCustomElementRegistry):

  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

Updated the tests and expected results after the rename.

  • fast/custom-elements/CustomElementRegistry-expected.txt: Renamed from LayoutTests/fast/custom-elements/CustomElementsRegistry-expected.txt.
  • fast/custom-elements/CustomElementRegistry.html: Renamed from LayoutTests/fast/custom-elements/CustomElementsRegistry.html.
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
12:12 PM Changeset in webkit [204731] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

Attempt to fix the iOS 9 Simulator test bots after <https://trac.webkit.org/changeset/204720>
(https://bugs.webkit.org/show_bug.cgi?id=156857)

Fix JavaScript TypeErrors, "undefined is not an object". Both uiController.singleTapAtPoint() and
testRunner.runUIScript() expect to be passed a callback function.

Additionally, explicitly check that window.testRunner is non-null before checking whether
testRunner.runUIScript is non-null to avoid a JavaScript TypeError in desktop Safari.

  • http/tests/navigation/ping-attribute/resources/utilities.js:

(clickElement):

12:03 PM Changeset in webkit [204730] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove dead code.
https://bugs.webkit.org/show_bug.cgi?id=161049

Reviewed by Michael Saboff.

  • runtime/VM.h:
  • Deleted unused friend class ClearExceptionScope.
12:00 PM Changeset in webkit [204729] by Chris Dumez
  • 6 edits
    2 adds in trunk

Add support for GlobalEventHandlers.oncuechange attribute
https://bugs.webkit.org/show_bug.cgi?id=161046

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:

Add support for GlobalEventHandlers.oncuechange attribute:

Test: fast/media/window-oncuechange.html

  • dom/GlobalEventHandlers.idl:

LayoutTests:

Add layout test coverage.

  • fast/media/window-oncuechange-expected.txt: Added.
  • fast/media/window-oncuechange.html: Added.
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
11:02 AM Changeset in webkit [204728] by Simon Fraser
  • 14 edits
    2 adds in trunk

<select> menu on iPad causes shifting of hit-testing areas
https://bugs.webkit.org/show_bug.cgi?id=150079

Reviewed by Tim Horton.

Source/WebKit2:

-isAssistingNode (aka the poorly named isEditable) is input into WebPageProxy::computeCustomFixedPositionRect(),
so when it changes we have to update visible rects. We were doing this on focus, but failing
to do it on blur.

Added the ability to test by:

  1. Making it possible to initiate an animated scroll in the UI process
  2. Adding callbacks for starting and ending interaction with a form control. Sadly

the "ending interaction" for <select> popovers on iPad isn't late enough, since we
have no way currently to know when the dimming view behind the popover animates out,
so for now the test keeps trying to tap a button.

Test: fast/forms/ios/ipad/unfocus-inside-fixed-hittest.html

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _zoomToPoint:atScale:animated:]):
(-[WKWebView _scrollToRect:origin:minimumScrollDistance:]):
(-[WKWebView _scrollByContentOffset:]):
(-[WKWebView _zoomToFocusRect:selectionRect:fontSize:minimumScale:maximumScale:allowScaling:forceScroll:]):
(-[WKWebView didStartFormControlInteraction]):
(-[WKWebView didEndFormControlInteraction]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/ios/WKContentView.mm:

(-[WKContentView didUpdateVisibleRect:unobscuredRect:unobscuredRectInScrollViewCoordinates:obscuredInset:scale:minimumScale:inStableState:isChangingObscuredInsetsInteractively:enclosedInScrollableAncestorView:]):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setIsEditable:]):
(-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
(-[WKContentView _stopAssistingNode]):

Tools:

-isAssistingNode (aka the poorly named isEditable) is input into WebPageProxy::computeCustomFixedPositionRect(),
so when it changes we have to update visible rects. We were doing this on focus, but failing
to do it on blur.

Added the ability to test by:

  1. Making it possible to initiate an animated scroll in the UI process
  2. Adding callbacks for starting and ending interaction with a form control. Sadly

the "ending interaction" for <select> popovers on iPad isn't late enough, since we
have no way currently to know when the dimming view behind the popover animates out,
so for now the test keeps trying to tap a button.

  • WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl:
  • WebKitTestRunner/UIScriptContext/UIScriptContext.h:
  • WebKitTestRunner/UIScriptContext/UIScriptController.cpp:

(WTR::UIScriptController::setDidStartFormControlInteractionCallback):
(WTR::UIScriptController::didStartFormControlInteractionCallback):
(WTR::UIScriptController::setDidEndFormControlInteractionCallback):
(WTR::UIScriptController::didEndFormControlInteractionCallback):
(WTR::UIScriptController::scrollToOffset):
(WTR::UIScriptController::platformSetDidStartFormControlInteractionCallback):
(WTR::UIScriptController::platformSetDidEndFormControlInteractionCallback):

  • WebKitTestRunner/UIScriptContext/UIScriptController.h:
  • WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
  • WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:

(-[TestRunnerWKWebView dealloc]):
(-[TestRunnerWKWebView didStartFormControlInteraction]):
(-[TestRunnerWKWebView didEndFormControlInteraction]):

  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::contentOffsetBoundedInValidRange):
(WTR::UIScriptController::scrollToOffset):
(WTR::UIScriptController::platformSetDidStartFormControlInteractionCallback):
(WTR::UIScriptController::platformSetDidEndFormControlInteractionCallback):

LayoutTests:

This test:

  1. Scrolls in the ui process, so that position:fixed kicks in
  2. Taps on a <select>, which disabled position:fixed behavior
  3. Chooses a <select> option, dismissing the <select>, which restores position:fixed behavior
  4. Tries to tap a button inside position:fixed.
  • fast/forms/ios/ipad/unfocus-inside-fixed-hittest-expected.txt: Added.
  • fast/forms/ios/ipad/unfocus-inside-fixed-hittest.html: Added.
10:26 AM Changeset in webkit [204727] by clopez@igalia.com
  • 5 edits
    1 delete in trunk/Tools

[EFL][GTK] Script process-linux-coredump is not needed, switch back to use the kernel core dumper instead.
https://bugs.webkit.org/show_bug.cgi?id=160927

Reviewed by Daniel Bates.

  • Scripts/process-linux-coredump: Removed.
  • Scripts/webkitpy/port/efl.py:

(EflPort._get_crash_log):

  • Scripts/webkitpy/port/gtk.py:

(GtkPort._get_crash_log):

  • Scripts/webkitpy/port/linux_get_crash_log.py:

(GDBCrashLogGenerator.init):
(GDBCrashLogGenerator.generate_crash_log):

  • Scripts/webkitpy/port/linux_get_crash_log_unittest.py:

(GDBCrashLogGeneratorTest.test_generate_crash_log):

10:23 AM Changeset in webkit [204726] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix bindings tests after r204717.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
There was an extra space.

10:20 AM Changeset in webkit [204725] by achristensen@apple.com
  • 4 edits in trunk/Source

Mostly fix Mac CMake build after r204717.

  • PlatformMac.cmake:
10:19 AM Changeset in webkit [204724] by Antti Koivisto
  • 4 edits
    2 adds in trunk

Can't style descendants in shadow tree using the :host pseudo class
https://bugs.webkit.org/show_bug.cgi?id=160754

Reviewed by Darin Adler.

Source/WebCore:

"The :host pseudo-class, when evaluated in the context of a shadow tree, matches the shadow tree’s shadow host."

Currently :host() works for styling the host element itself (:host(.foo) { ... }). It should also be usable
for styling elements in the shadow tree:

:host(.foo) div { ... }

Test: fast/shadow-dom/css-scoping-host-descendant.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matchHostPseudoClass):
(WebCore::localContextForParent):

Move to shadow host if we are matching :host and are at the root of the shadow tree.
Set didMoveToShadowHost bit in the context.

(WebCore::SelectorChecker::matchRecursively):
(WebCore::SelectorChecker::checkOne):

Call the existing matchHostPseudoClass to do :host matching if didMoveToShadowHost bit has been set.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::addPseudoClassType):

Disallow :host in the compiler (cases where it would match didn't reach the compiler before).

LayoutTests:

  • fast/shadow-dom/css-scoping-host-descendant-expected.html: Added.
  • fast/shadow-dom/css-scoping-host-descendant.html: Added.
9:40 AM Changeset in webkit [204723] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

check-webkit-style does not work with Lambda functions in C++
https://bugs.webkit.org/show_bug.cgi?id=160910

Patch by Jonathan Bedard <Jonathan Bedard> on 2016-08-22
Reviewed by Darin Adler.

This change eliminates false positives on correctly styled lambda functions and includes a few basic checks on capture list.

  • Scripts/webkitpy/style/checkers/cpp.py:

(regex_for_lambda_functions): Added function which checks if a string is the start of a lambda function.
(check_for_non_standard_constructs): Added lambda function check.
(check_spacing_for_function_call): Added lambda function check.
(check_braces): Added lambda function check.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(CppStyleTest.test_lambda_functions): Added test function for lambda function style checks.

9:28 AM WebKitGTK/2.12.x edited by Michael Catanzaro
Propose r204250 (diff)
9:19 AM Changeset in webkit [204722] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.12/Source/WebCore

Merge r202177 - Potential null dereferencing on a detached positioned renderer.
https://bugs.webkit.org/show_bug.cgi?id=158879

Reviewed by Simon Fraser.

This patch fixes the case when the while loop to search for the absolute positioned ancestor
returns null (it happens when positioned renderer has been detached from the render tree).

Speculative fix.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):

  • rendering/RenderBlock.h:
9:18 AM Changeset in webkit [204721] by fred.wang@free.fr
  • 3 edits in trunk/Source/WebCore

Use memoize pattern for the menclose notation attribute
https://bugs.webkit.org/show_bug.cgi?id=160461

Patch by Frederic Wang <fwang@igalia.com> on 2016-08-22
Reviewed by Darin Adler.

Currently, MathMLMencloseElement::parseAttribute parse the "notation" attribute each time it
is changed. We change this to use the memoize pattern as done for other MathML attributes:
We store m_notationFlags in an Optional<uint16_t> where Optnull means that the
attribute is dirty and must be parsed again.

No new tests, already covered by existing tests.

  • mathml/MathMLMencloseElement.cpp:

(WebCore::MathMLMencloseElement::parseNotationAttribute): Move parsing of the "notation"
attribute from parseAttribute into this separate helper function.
(WebCore::MathMLMencloseElement::hasNotation): This now check whether the attribute and
dirty and parse it if necessary.
(WebCore::MathMLMencloseElement::parseAttribute): Just make the attribute dirty rather than
parsing it immediately.

  • mathml/MathMLMencloseElement.h: hasNotation is no longer const as it may update the

m_notationsFlags. We declare parseNotationAttribute(). Finally, we wrap m_notationFlags
in an Optional<uint16_t> and make addNotation extract the value.

9:13 AM Changeset in webkit [204720] by dbates@webkit.org
  • 11 edits
    4 deletes in trunk

[iOS] <a ping> and <area ping> tests time out
https://bugs.webkit.org/show_bug.cgi?id=156857

Reviewed by Simon Fraser.

Source/WebCore:

Export HTMLAreaElement::imageElement() so that we can make use of it in WebKit2.

  • html/HTMLAreaElement.h:

Source/WebKit2:

Support single tapping on an HTML area element in WebKit2 just as we do in Legacy WebKit.

WebKit2 commits to clicking a "clickable" DOM node on a single tap only if it has a
renderer. An HTML area element represents a hyperlink in an image map and does not have
a renderer.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::sendTapHighlightForNodeIfNecessary): Compute the tap highlight with respect
to the renderer for the image map associated with the tapped HTML area element (if it has one).
(WebKit::WebPage::commitPotentialTap): Allow committing a potential tap on an HTML area element.

LayoutTests:

Update test to use work in WebKitTestRunner and unskip the tests.

Also remove some unused files.

  • http/tests/navigation/ping-attribute/anchor-cross-origin-from-https.html: Include external JavaScript

script resources/utilities.js and write code in terms of clickElement(). Additionally, add HTML5 doctype
tag and put <head> on its own line so as to be consistent with the placement of </head> on its own line.

  • http/tests/navigation/ping-attribute/anchor-cross-origin.html: Ditto.
  • http/tests/navigation/ping-attribute/anchor-same-origin.html: Ditto.
  • http/tests/navigation/ping-attribute/resources/check-ping.php: Removed.
  • http/tests/navigation/ping-attribute/resources/delete-ping.php: Removed.
  • http/tests/navigation/ping-attribute/resources/ping-file-path.php: Removed.
  • http/tests/navigation/ping-attribute/resources/save-Ping.php: Removed.
  • http/tests/navigation/ping-attribute/resources/utilities.js:

(clearLastPingResultAndRunTest):
(clickElement): Make use of UIScriptController to click the element via a tap on platforms that
support touch events and implement UIScriptController (window.uiController).

  • platform/ios-simulator-wk2/TestExpectations: Unskip ping-attribute tests.
  • platform/ios-simulator/TestExpectations: Ditto.
9:05 AM Changeset in webkit [204719] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.12/Source/WebCore

Merge r202482 - [GStreamer] top/bottom black bars added needlessly in fullscreen
https://bugs.webkit.org/show_bug.cgi?id=158980

Patch by Philippe Normand <philn@igalia.com> on 2016-06-27
Reviewed by Carlos Garcia Campos.

The natural video size calculation depends on the validity of the
current sample, so whenever the first sample reached the sink it's a
good idea to reflect this on the player which will update its natural
size accordingly.

Fixes an issue where black borders were added on top and bottom of
fullscreen video.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):

9:01 AM Changeset in webkit [204718] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.12/Source/WebCore

Merge r202615 - [GStreamer] Adaptive streaming issues
https://bugs.webkit.org/show_bug.cgi?id=144040

Reviewed by Philippe Normand.

There are multiple deadlocks in the web process when HLS content is loaded by GStreamer. It happens because gst
is using several threads to download manifest, fragments, monitor the downloads, etc. To download the fragments
and manifest it always creates the source element in a separate thread, something that is not actually expected
to happen in WebKit source element. Our source element is always scheduling tasks (start, stop, need-data,
enough-data and seek) to the main thread, and those downloads that use the ResourceHandleStreamingClient
(there's no player associated) also happen in the main thread, because libsoup calls all its async callbacks in
the main thread. So, the result is that it can happen that we end up blocking the main thread in a lock until
the download finishes, but the download never finishes because tasks are scheduled in the main thread that is
blocked in a lock. This can be prevented by always using a secondary thread for downloads made by
ResourceHandleStreamingClient, using its own run loop with a different GMainContext so that libsoup sends
callbacks to the right thread. We also had to refactor the tasks a bit, leaving the thread safe parts to be run
in the calling thread always, and only scheduling to the main thread in case of not using
ResourceHandleStreamingClient and only for the non thread safe parts.
This patch also includes r200455 that was rolled out, but it was a perfectly valid workaround for GST bug.

  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::ensureGRef): Consume the floating ref if needed.

  • platform/graphics/gstreamer/GRefPtrGStreamer.h:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webkit_web_src_init): Check if object is being created in the main thread.
(webKitWebSrcStop): Stop the media resource loader in the main thread and the resource handle streaming in the
current thread.
(webKitWebSrcStart): Start the media resource loader in the main thread and the resource handle streaming in
the current thread.
(webKitWebSrcChangeState): Call webKitWebSrcStart and webKitWebSrcStop in the current thread.
(webKitWebSrcNeedData): Update status in the current thread and notify the media resource loader in the main thread.
(webKitWebSrcEnoughData): Ditto.
(webKitWebSrcSeek): Ditto.
(webKitWebSrcSetMediaPlayer): Add an assert to ensure that source elements used by WebKit are always created in
the main thread.
(ResourceHandleStreamingClient::ResourceHandleStreamingClient): Use a secondary thread to do the download.
(ResourceHandleStreamingClient::~ResourceHandleStreamingClient): Stop the secondary thread.
(ResourceHandleStreamingClient::setDefersLoading): Notify the secondary thread.

8:51 AM Changeset in webkit [204717] by achristensen@apple.com
  • 158 edits
    342 adds
    1 delete in trunk/Source

Source/WebCore:
[Cocoa] Move Objective-C DOM bindings from WebCore to legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=160654

Patch by Darin Adler <Darin Adler> on 2016-08-22
Reviewed by Alex Christensen.

  • DerivedSources.cpp: Removed ExceptionCodeDescription.h from the list here.

It will be included by the .cpp files as appropriate and should not be included
without including config.h first.

  • WebCore.xcodeproj/project.pbxproj: Removed the Objective-C DOM source files.

Added private exports of various headers that are now used directly or indirectly
by legacy WebKit to implement the bindings. Moved WebScriptObject.* files from
bindings/objc to bridge/objc. Moved WebKitAvailability.h into platform/cocoa; it
can be moved to WebKit of we move the Objective-C bridge there too. Also ran
sort-Xcode-project-file.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::valueToUSVString): Fixed a comment typo.

  • bindings/js/JSDOMWindowShell.cpp:

(WebCore::JSDOMWindowShell::toWrapped): Added.

  • bindings/js/JSDOMWindowShell.h: Added a toWrapped function for use by the

Objective-C bindings.

  • bindings/js/JSMainThreadExecState.h: Exported symbols needed by the Objective-C bindings.
  • bindings/js/JSNamedNodeMapCustom.cpp: Updated includes since NamedNodeMap.h no longer

includes Attr.h.

  • bindings/js/ScriptController.h: Exported symbols needed by the Objective-C bindings.
  • bindings/js/ScriptControllerMac.mm:

(WebCore::ScriptController::windowScriptObject): Removed code that asserted the type of the
object; this assertion can't be done in WebCore any more and is not critical to keep.
(WebCore::ScriptController::disconnectPlatformScriptObjects): Use the new
disconnectWindowWrapper function to call up to the Objective-C bindings code in WebKit.

  • bindings/objc/*: Moved all these files to WebKit/mac/DOM, except for a few that were moved

to bridge/objc.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader): Added support for the new ExportToWrappedFunction attribute so
classes that need to can export what is needed by WebKit.

  • bindings/scripts/IDLAttributes.txt: Added ExportToWrappedFunction.
  • bridge/objc/WebScriptObject.h: Moved from bindings/objc.
  • bridge/objc/WebScriptObject.mm: Moved from bindings/objc.

(WebCore::initializeDOMWrapperHooks): Added. Used by WebKit to add the hooks needed so that
WebScriptObject can integrate with the DOM bindings.
(WebCore::disconnectWindowWrapper): Added.
(+[WebScriptObject scriptObjectForJSObject:originRootObject:rootObject:]): Added code that
uses createDOMWrapperFunction to set up wrappers that are found or created by WebKit.

  • bridge/objc/WebScriptObjectPrivate.h: Moved from bindings/objc.
  • css/CSSFontFaceRule.h: Exported symbols needed by the Objective-C bindings.
  • css/CSSGroupingRule.h: Ditto.
  • css/CSSImportRule.h: Ditto.
  • css/CSSMediaRule.h: Ditto.
  • css/CSSPageRule.h: Ditto.
  • css/CSSPrimitiveValue.h: Ditto.
  • css/CSSRule.h: Ditto.
  • css/CSSRule.idl: Ditto.
  • css/CSSRuleList.idl: Ditto.
  • css/CSSStyleRule.h: Ditto.
  • css/CSSStyleSheet.h: Ditto.
  • css/CSSValue.h: Ditto.
  • css/CSSValue.idl: Ditto.
  • css/Counter.idl: Ditto.
  • css/MediaList.h: Ditto.
  • css/MediaList.idl: Ditto.
  • css/MediaQueryEvaluator.h: Ditto.
  • css/RGBColor.h: Ditto.
  • css/RGBColor.idl: Ditto.
  • css/Rect.idl: Ditto.
  • css/StyleSheet.idl: Ditto.
  • css/StyleSheetList.h: Ditto.
  • css/StyleSheetList.idl: Ditto.
  • dom/Attr.h: Ditto.
  • dom/CharacterData.h: Ditto.
  • dom/CollectionIndexCache.h: Ditto.
  • dom/ContainerNode.h: Ditto.
  • dom/DOMImplementation.cpp: Ditto.
  • dom/DOMImplementation.h: Ditto.
  • dom/DOMImplementation.idl: Ditto.
  • dom/Document.h: Ditto.
  • dom/DocumentFragment.h: Ditto.
  • dom/Element.h: Ditto.
  • dom/Event.h: Ditto.
  • dom/Event.idl: Ditto.
  • dom/EventTarget.h: Ditto.
  • dom/KeyboardEvent.h: Ditto.
  • dom/LifecycleCallbackQueue.h: Ditto.
  • dom/MouseEvent.h: Ditto.
  • dom/MouseRelatedEvent.h: Ditto.
  • dom/MutationEvent.h: Ditto.
  • dom/NamedNodeMap.h: Ditto.
  • dom/NamedNodeMap.idl: Ditto.
  • dom/NativeNodeFilter.h: Ditto.
  • dom/Node.h: Ditto.
  • dom/NodeIterator.h: Ditto.
  • dom/NodeIterator.idl: Ditto.
  • dom/NodeList.idl: Ditto.
  • dom/NodeTraversal.h: Ditto.
  • dom/OverflowEvent.h: Ditto.
  • dom/QualifiedName.h: Ditto.
  • dom/Range.h: Ditto.
  • dom/ScriptElement.h: Ditto.
  • dom/Text.h: Ditto.
  • dom/TextEvent.h: Ditto.
  • dom/TreeScope.h: Ditto.
  • dom/TreeWalker.h: Ditto.
  • dom/TreeWalker.idl: Ditto.
  • dom/UIEvent.h: Ditto.
  • dom/WheelEvent.h: Ditto.
  • dom/make_dom_exceptions.pl: Ditto.
  • editing/EditingStyle.h: Ditto.
  • editing/FrameSelection.h: Ditto.
  • editing/ios/EditorIOS.mm: Removed unneeded include of Objective-C DOM header.
  • editing/mac/EditorMac.mm: Ditto.
  • fileapi/Blob.h: Exported symbols needed by the Objective-C bindings.
  • fileapi/File.h: Ditto.
  • fileapi/FileList.h: Ditto.
  • html/DOMTokenList.h: Ditto.
  • html/HTMLAnchorElement.h: Ditto.
  • html/HTMLAreaElement.h: Ditto.
  • html/HTMLBaseElement.h: Ditto.
  • html/HTMLButtonElement.h: Ditto.
  • html/HTMLCanvasElement.h: Ditto.
  • html/HTMLCollection.h: Ditto.
  • html/HTMLCollection.idl: Ditto.
  • html/HTMLDocument.h: Ditto.
  • html/HTMLElement.h: Ditto.
  • html/HTMLFormControlElement.h: Ditto.
  • html/HTMLFormElement.h: Ditto.
  • html/HTMLFrameElementBase.h: Ditto.
  • html/HTMLFrameOwnerElement.h: Ditto.
  • html/HTMLImageElement.h: Ditto.
  • html/HTMLInputElement.h: Ditto.
  • html/HTMLLabelElement.cpp:

(WebCore::HTMLLabelElement::setActive): Tweaked types a bit.
(WebCore::HTMLLabelElement::setHovered): Ditto.
(WebCore::HTMLLabelElement::defaultEventHandler): Ditto.
(WebCore::HTMLLabelElement::willRespondToMouseClickEvents): Ditto.
(WebCore::HTMLLabelElement::focus): Ditto.
(WebCore::HTMLLabelElement::accessKeyAction): Ditto.

  • html/HTMLLabelElement.h: Exported symbols needed by the Objective-C bindings.
  • html/HTMLLinkElement.h: Ditto.
  • html/HTMLMapElement.h: Ditto.
  • html/HTMLMarqueeElement.h: Ditto.
  • html/HTMLMediaElement.h: Ditto.
  • html/HTMLOListElement.h: Ditto.
  • html/HTMLOptionElement.h: Ditto.
  • html/HTMLOptionsCollection.h: Ditto.
  • html/HTMLOptionsCollection.idl: Ditto.
  • html/HTMLScriptElement.h: Ditto.
  • html/HTMLSelectElement.h: Ditto.
  • html/HTMLStyleElement.h: Ditto.
  • html/HTMLTableCellElement.h: Ditto.
  • html/HTMLTableColElement.h: Ditto.
  • html/HTMLTableElement.h: Ditto.
  • html/HTMLTableRowElement.h: Ditto.
  • html/HTMLTableSectionElement.h: Ditto.
  • html/HTMLTextAreaElement.h: Ditto.
  • html/HTMLTextFormControlElement.h: Ditto.
  • html/HTMLTitleElement.h: Ditto.
  • html/HTMLVideoElement.h: Ditto.
  • html/LabelableElement.h: Ditto.
  • loader/EmptyClients.h: Updated documentFragmentFromDelegate, which was

returning a newly created document fragment with a raw pointer. This works
because the implementation internally uses Objective-C and autorelease, but
is too fragile to rely on for the future.

  • page/DOMWindow.h: Exported symbols needed by the Objective-C bindings.
  • page/EditorClient.h: Updated document fragment functions.
  • page/Frame.h: Removed indexCountOfWordPrecedingSelection, already unused.

Removed innerLineHeight and styleAtSelectionStart, formerly used by legacy WebKit,
which used Objective-C DOM objects in their interfaces.

  • page/ios/FrameIOS.mm:

(WebCore::Frame::indexCountOfWordPrecedingSelection): Deleted.
(WebCore::Frame::innerLineHeight): Deleted.
(WebCore::Frame::styleAtSelectionStart): Deleted.

  • platform/DragImage.h: Exported symbols needed by the Objective-C bindings.
  • platform/ScrollView.h: Ditto.
  • platform/URL.h: Ditto.
  • platform/cocoa/WebKitAvailability.h: Moved from bindings/objc.
  • platform/cocoa/WebPlaybackSessionModelMediaElement.mm: Removed unneeded includes

of Objective-C DOM headers.

  • platform/cocoa/WebVideoFullscreenModelVideoElement.mm: Ditto.
  • platform/ios/PasteboardIOS.mm: Ditto.
  • platform/ios/wak/WebCoreThread.mm:

(StartWebThread): Took out the call to WebCoreObjCDeallocOnWebThread for DOMObject.
This class is now defined in legacy WebKit, so we do the code there there along
with the other WebKit classes.

  • platform/ios/wak/WebCoreThreadSafe.h: Removed the unwise additional definition of

WebScriptObject and DOMObject in this file. Really this entire file needs to go.

  • platform/text/TextEncoding.h: Exported symbols needed by the Objective-C bindings.
  • rendering/HitTestResult.h: Ditto.
  • rendering/RenderLayer.h: Ditto.
  • rendering/RenderObject.h: Ditto.
  • rendering/RenderThemeGtk.cpp: Rewrote code that was unnecessarily using

NamedNodeMap and Attr nodes just to get the value of an attribute.

  • rendering/style/RenderStyle.h: Exported symbols needed by the Objective-C bindings.
  • xml/XMLHttpRequest.cpp: Added include needed now that XMLDocument.h is not

included by DOMImplementation.h.

  • xml/XPathExpression.h: Exported symbols needed by the Objective-C bindings.
  • xml/XPathExpression.idl: Ditto.
  • xml/XPathNSResolver.h: Ditto.
  • xml/XPathResult.cpp:

(WebCore::XPathResult::snapshotLength): Use unsigned instead of unsigned long.
(WebCore::XPathResult::snapshotItem): Ditto.

  • xml/XPathResult.h: Exported symbols needed by the Objective-C bindings. Also

updated types as above.

  • xml/XPathResult.idl: Ditto.

Source/WebKit:
Move Objective-C DOM bindings from WebCore to legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=160654

Patch by Darin Adler <Darin Adler> on 2016-08-22
Reviewed by Alex Christensen.

  • WebKit.xcodeproj/project.pbxproj: Added the new source files to the project.

For now they all have project visibility, since MigrateHeaders.make takes care
of exporting them as public and private. Later, we can likely use the built-in
Xcode feature instead of that script. Also pass DOM as an acceptable prefix
when calling check-for-inappropriate-objc-class-names. Also sorted this file
with the sort-Xcode-project-file script.

Source/WebKit/mac:
Move Objective-C DOM bindings from WebCore to legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=160654

Patch by Darin Adler <Darin Adler> on 2016-08-22
Reviewed by Alex Christensen.

  • DOM: Added lots of files to the directory.

The files are just as they were in bindings/objc except that the paths of includes
have been updated as needed, and the code no longer is defined inside the WebCore
namespace, requring changes to various functions and their call sites. Also removed
all the WEBCORE_EXPORT since we export differently here in legacy WebKit.

  • DOM/DOMInternal.h: Moved. Replaced createDOMWrapper with initializeDOMWrapperHooks.
  • DOM/DOMUtility.mm: Moved.

(createDOMWrapper): Simplified to use toWrapped and not do unneeded namespace tricks.
(disconnectWindowWrapper): Added.
(initializeDOMWrapperHooks): Added.

  • MigrateHeaders.make: Removed all the internal headers since they are now just

normal project headers. Added the "DOM" directory to the VPATH. Some of the headers
from WebCore are still being migrated, so we can't remove WebCorePrivateHeaders yet.

  • WebCoreSupport/WebEditorClient.h: Updated to return RefPtr<DocumentFragment>.
  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::documentFragmentFromDelegate): Use RefPtr.

  • WebKit.exp: Added exports for all the classes that used to use WEBCORE_EXPORT to

be exported from WebCore.

  • WebView/WebFrame.mm:

(-[WebFrame innerLineHeight:]): Moved code from WebCore::Frame::innerLineHeight here.
No longer depend on whether this node happens to be in this frame. Also removed
unneeded null check since a node's document can't be null.

  • WebView/WebHTMLView.mm: Removed uneeded include of ExceptionHandlers.h, which

is now here in WebKitLegacy instead of WebCore. But no need to include it at all.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]): Call
initializeDOMWrapperHooks so WebScriptObject can create DOM binding wrappers when
making a script object for a DOM object, rather than just a generic script object.
(+[WebView enableWebThread]): Added a call to WebCoreObjCDeallocOnWebThread here for
DOMObject along with the other classes. This was done in WebCore before, but DOMObject is now
defined here in legacy WebKit.
(-[WebView styleAtSelectionStart]): Moved code from WebCore::Frame::styleAtSelectionStart here.
Replaced incorrect code that called "new PropertySetCSSStyleDeclaration" with a misleading comment
about reference counting; that code was leaking all the style declarations. Instead use
MutableStyleProperties::ensureCSSStyleDeclaration, which is designed for this purpose.

Source/WebKit2:
Move Objective-C DOM bindings from WebCore to legacy WebKit
https://bugs.webkit.org/show_bug.cgi?id=160654

Patch by Darin Adler <Darin Adler> on 2016-08-22
Reviewed by Alex Christensen.

  • WebProcess/WebCoreSupport/WebEditorClient.h: Updated to use RefPtr.
  • WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:

(WebKit::WebEditorClient::documentFragmentFromDelegate): Ditto.

  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: Removed unneeded includes

of Objective-C DOM headers that are now part of legacy WebKit, not WebCore.
But this file doesn't need to depend on those headers at all.

8:39 AM Changeset in webkit [204716] by Chris Dumez
  • 3 edits in trunk/Source/WebKit2

[iOS] Wait a few seconds before release network activity assertion after a load
https://bugs.webkit.org/show_bug.cgi?id=160975
<rdar://problem/27910964>

Reviewed by Darin Adler.

Some apps do several loads one after the other in a non-visible view.
This causes us to release the background assertion every time a load
completes and then take one again less than a second after. Every
time we release the assertion, we send a PrepareToSuspend IPC to the
WebContent process, which does all the clean up to get ready to
suspend, only to get a CancelPrepareReadyToSuspend later on because
the next load has started. To work around this problem, we now wait
a few seconds before releasing the background activity after a load.

  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::NavigationState):
(WebKit::NavigationState::releaseNetworkActivityToken):
(WebKit::NavigationState::didChangeIsLoading):

8:32 AM WebKitGTK/2.12.x edited by Carlos Garcia Campos
(diff)
8:18 AM Changeset in webkit [204715] by fred.wang@free.fr
  • 9 edits
    2 moves in trunk/Source/WebCore

Rename MathMLTextElement to MathMLTokenElement
https://bugs.webkit.org/show_bug.cgi?id=160542

Patch by Frederic Wang <fwang@igalia.com> on 2016-08-22
Reviewed by Darin Adler.

No new tests, behavior is unchanged.

  • CMakeLists.txt: Rename MathMLTextElement to MathMLTokenElement.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • mathml/MathMLAllInOne.cpp: Ditto.
  • mathml/MathMLOperatorElement.cpp: Ditto.
  • mathml/MathMLOperatorElement.h: Ditto.
  • mathml/MathMLTokenElement.cpp: Ditto. Also remove dead code in childShouldCreateRenderer

to handle the case of mspace since that element uses its own class and forbids child creation
in RenderMathMLSpace::isChildAllowed.

  • mathml/MathMLTokenElement.h: Rename MathMLTextElement to MathMLTokenElement.
  • mathml/mathtags.in: Ditto.
  • rendering/mathml/RenderMathMLToken.cpp: Move inclusion of MathMLTokenElement.h and

implementation of element() here.

  • rendering/mathml/RenderMathMLToken.h: Do not implement element() in the header so that

we only need need to predeclare MathMLTokenElement instead of including its header.

7:12 AM Changeset in webkit [204714] by Yusuke Suzuki
  • 24 edits
    1 add in trunk

[ES6] Module should not allow HTML comments
https://bugs.webkit.org/show_bug.cgi?id=161041

Reviewed by Saam Barati.

JSTests:

  • modules/html-comments.js: Added.

(shouldThrow):

  • test262.yaml:

Source/JavaScriptCore:

ES6 Modules intentionally disable HTML comments[1].

[1]: https://tc39.github.io/ecma262/#sec-html-like-comments

  • API/JSScriptRef.cpp:

(parseScript):

  • builtins/BuiltinExecutables.cpp:

(JSC::BuiltinExecutables::createExecutable):

  • bytecode/EvalCodeCache.h:

(JSC::EvalCodeCache::CacheKey::CacheKey):

  • bytecode/ExecutableInfo.h:

(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::commentMode):
(JSC::ExecutableInfo::superBinding): Deleted.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::commentMode):
(JSC::UnlinkedCodeBlock::superBinding): Deleted.

  • bytecode/UnlinkedFunctionExecutable.cpp:

(JSC::generateUnlinkedFunctionCodeBlock):
(JSC::UnlinkedFunctionExecutable::UnlinkedFunctionExecutable):

  • bytecode/UnlinkedFunctionExecutable.h:
  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::commentMode):
(JSC::BytecodeGenerator::makeFunction):
(JSC::BytecodeGenerator::superBinding): Deleted.

  • parser/Lexer.cpp:

(JSC::Lexer<T>::Lexer):
(JSC::Lexer<T>::lex):

  • parser/Lexer.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser):

  • parser/Parser.h:

(JSC::parse):

  • parser/ParserModes.h:
  • parser/SourceCodeKey.h:

(JSC::SourceCodeFlags::SourceCodeFlags):
(JSC::SourceCodeKey::SourceCodeKey):

  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getProgramCodeBlock):
(JSC::CodeCache::getEvalCodeBlock):
(JSC::CodeCache::getModuleProgramCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CodeCache.h:
  • runtime/Completion.cpp:

(JSC::checkSyntax):
(JSC::checkModuleSyntax):

  • runtime/Executable.cpp:

(JSC::ProgramExecutable::checkSyntax):

  • runtime/Executable.h:
  • runtime/ModuleLoaderPrototype.cpp:

(JSC::moduleLoaderPrototypeParseModule):

6:51 AM Changeset in webkit [204713] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.12/Source/bmalloc

Merge r204091 - [bmalloc] Merging of XLargeRanges can leak the upper range
https://bugs.webkit.org/show_bug.cgi?id=160403

Reviewed by Michael Saboff.

  • bmalloc/Heap.cpp:

(bmalloc::Heap::scavengeLargeObjects): Don't use removePhysical().
Recorded physical size is a performance optimization. It is not the
truth. So it might be zero even if a range contains physical pages.

Instead, iterate each range in the map unconditionally.

The map can shrink when we release the lock, so we must clamp our
iterator each time through the loop.

The map can grow when we release the lock, but we don't care because
growth restarts the scavenger from the beginning.

  • bmalloc/XLargeMap.cpp:

(bmalloc::XLargeMap::removePhysical): Deleted. Not used anymore.

  • bmalloc/XLargeMap.h:

(bmalloc::XLargeMap::ranges): Added direct access for the sake of
scavengeLargeObjects. (This violates our naming conventions -- I'll do
a rename in a follow-up patch.)

6:51 AM Changeset in webkit [204712] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.12/Source/bmalloc

Merge r203100 - Crash due to abort() calling libc++.1.dylib: std::1::thread::detach()
https://bugs.webkit.org/show_bug.cgi?id=159655

Reviewed by Sam Weinig.

It's not entirely clear what was happening in these crashes, but our
use of detach() was 100% forward-looking, so we can just remove it for
now.

This patch removes the ability for the scavenger owner to die before
the scavenger thread dies (which was unused) and also removes the
ability for the scavenger thread to exit (which was used, but we
messed up and did thread joining lazily, so we never got any benefit
from thread exit.)

We can add these features back when we need them, and make them work then.

  • bmalloc/AsyncTask.h:

(bmalloc::Function>::AsyncTask): We start out in the running state now
because we know that starting our thread will run it.

(bmalloc::Function>::~AsyncTask): We don't support destruction anymore.

(bmalloc::Function>::runSlowCase): I removed the Exited state.

(bmalloc::Function>::threadRunLoop): I removed the Exited and
ExitRequested states.

  • bmalloc/Heap.h:
  • bmalloc/VMHeap.h:
6:51 AM Changeset in webkit [204711] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.12/Source/bmalloc

Merge r201983 - Crash in com.apple.WebKit.WebContent at std::1::call_once_proxy<std::__1::tuple<CrashReporterSupportLibrary()::$_0&&> >
<https://webkit.org/b/158660>
<rdar://problem/25652686>

Reviewed by Darin Adler.

  • bmalloc/Logging.cpp: Switch to use

BSOFT_LINK_PRIVATE_FRAMEWORK() to link
CrashReporterSupport.framework.

  • bmalloc/darwin/BSoftLinking.h:

(BSOFT_LINK_PRIVATE_FRAMEWORK): Rename from BSOFT_LINK_FRAMEWORK.
Switch to use /System/Library/PrivateFrameworks/.

6:51 AM Changeset in webkit [204710] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.12/Source/bmalloc

Merge r201969 - Implement logging for RELEASE_BASSERT_WITH_MESSAGE() in BAssert.h
<http://webkit.org/b/155992>

Reviewed by Geoff Garen.

  • bmalloc/BAssert.h:

(BLOG_ERROR): Add method to always log error messages.
(RELEASE_BASSERT_WITH_MESSAGE): Use BLOG_ERROR() to implement
logging in Debug builds.

  • bmalloc/BPlatform.h:

(BPLATFORM_MAC): Add.
(BUSE): Add BUSE() macro.
(BATTRIBUTE_PRINTF): Add.
(BUSE_OS_LOG): Add.

  • bmalloc/Logging.cpp:

(bmalloc::reportAssertionFailureWithMessage): Add. Logs to
stderr.

  • bmalloc/Logging.h:

(bmalloc::reportAssertionFailureWithMessage): Add declaration.

6:51 AM Changeset in webkit [204709] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.12/Source/bmalloc

Merge r201772 - Prevents integer overflow in Vector.h
https://bugs.webkit.org/show_bug.cgi?id=158455
<rdar://problem/20235469>

Patch by Pranjal Jumde <pjumde@apple.com> on 2016-06-07
Reviewed by Mark Lam.

  • bmalloc/Vector.h:

(bmalloc::Vector<T>::reallocateBuffer):

6:33 AM Changeset in webkit [204708] by Carlos Garcia Campos
  • 16 edits in releases/WebKitGTK/webkit-2.12

Merge r201087 - [GTK] accessibility/meter-element.html is failing
https://bugs.webkit.org/show_bug.cgi?id=115633

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2016-05-25

Source/WebCore:

The meter's value description should be exposed in the same fashion
as (we should have been exposing) aria-valuetext, namely through the
"valuetext" AtkObject attribute. This exposure is now in place. Also
implement AccessibilityProgressIndicator::valueDescription() so that
the ports do not have to special-case meter in the platform wrappers.
Map the meter element to the correct role (ATK_ROLE_LEVEL_BAR), and
ignore a previously-included accessible object resulting from the
use of the title attribute on a meter. Finally, do not expose the
meter's title as the accessible name because the HTML spec suggests
authors can supply the numeric unit as the value of title.

No new test file as the failure was identified by meter-element.html.
Seven new test cases were added for additional coverage. Also updated
the ATK expectations for spinbutton-value.html to reflect that we are now
exposing the value of aria-valuetext.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForChildren):
(WebCore::AccessibilityNodeObject::visibleText):

  • accessibility/AccessibilityNodeObject.h:
  • accessibility/AccessibilityProgressIndicator.cpp:

(WebCore::AccessibilityProgressIndicator::valueDescription):

  • accessibility/AccessibilityProgressIndicator.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetAttributes):
(atkRole):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Tools:

Implement AccessibilityUIElement::valueDescription() and add mapping
from ATK_ROLE_LEVEL_BAR to AXProgressIndicator.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::valueDescription):

LayoutTests:

Seven new test cases were added to meter-element.html for additional
coverage. Also updated the ATK expectations for spinbutton-value.html
to reflect that we are now exposing the value of aria-valuetext.

  • accessibility/meter-element.html: New test cases added.
  • platform/gtk/TestExpectations: Unskip the previously-failing test.
  • platform/gtk/accessibility/meter-element-expected.txt: Updated.
  • platform/gtk/accessibility/spinbutton-value-expected.txt: Updated.
  • platform/mac/accessibility/meter-element-expected.txt: Updated.
6:04 AM Changeset in webkit [204707] by Carlos Garcia Campos
  • 82 edits
    3 copies
    2 moves
    7 adds
    2 deletes in releases/WebKitGTK/webkit-2.12

Merge r201072, r201216 - AX: [ATK] Use WebCore Accessibility's AccessibilityText for AtkObject name and description
https://bugs.webkit.org/show_bug.cgi?id=157822

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2016-05-25
Reviewed by Chris Fleizach.

Remove the old code which was overriding WebCore Accessibility and always use
AccessibilityText.

If the AccessibilityText's textSource is HelpText or SummaryText, it should be exposed
as the AtkObject description. If the textSource is TitleTagText and there is no other
text alternative, the value should also be exposed in this fashion. Note that AtkObject's
description property is equivalent to AXAPI's AXHelp property.

If the AccessibilityText's textSource is anything other than the above, the first
non-empty value should be exposed as the AtkObject name. Depending on the source of
the name content, AtkObject's name property can be the equivalent of AXAPI's AXTitle.
However, most of the time, AtkObject's name property is equivalent to AXAPI's
AXDescription property.

By making these changes, what WebKit exposes for ATK is now extremely similar to what
WebKit exposes on the Mac (modulo the property names) and also with what is defined in
the HTML Accessibility and Accessible Name and Description Computation API mappings specs.

Now that the exposure is correct, the Layout Tests needed to be adjusted accordingly because
asking for the "AXDescription" gives you the AXDescription on the Mac and the AtkObject
description in GNU/Linux. But as indicated above, what ATK calls a "description" is what
the Mac calls "help."

Ultimately our Layout Tests and/or our platform TestRunner API should be modified to deal
with these differences more gracefully. (Bug https://bugs.webkit.org/show_bug.cgi?id=157187
has been opened for that task.) In the meantime, the existing tests have been given platform
checks to ask for the right property on each platform. This was done in such a way as to not
require other (non-ATK) platforms change their current expectations files.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetName):
(webkitAccessibleGetDescription):

Tools:
AX: [ATK] Use WebCore Accessibility's AccessibilityText for AtkObject name and description
https://bugs.webkit.org/show_bug.cgi?id=157822

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2016-05-25
Reviewed by Chris Fleizach.

Fix AccessibilityUIElement::helpText() so that it returns an empty string rather than
nullptr upon failure.

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::helpText):

LayoutTests:
AX: Layout tests related to text alternative computation need to be done differently
https://bugs.webkit.org/show_bug.cgi?id=157187

Create several utility methods to facilitate retrieval of platform-independent
attribute values from platform-specific attributes:

  • platformValueForW3CName() and platformValueForW3CDescription() to retrieve a specific piece of text alternative information, stripping off the platform attribute name by default. These methods should make it possible to share tests and expectations files because the text alternative calculation defined by the W3C accessibility specifications should be the same for all platforms. (The differences are the result of the unique platform mappings.)
  • platformTextAlternatives() to dump out all the text alternative attributes and values, preserving the platform-specific attribute name. This, along with the use of the platformValue* methods with attribute name enabled, should make it possible to have shared tests with platform-specific expectations without the need to check the platform in the test itself.
  • platformRoleForComboBox() and platformRoleForStaticText() to eliminate the need for platform-specific expectations files simply because such an element happens to be included in the test file and verifying that element's role is desired.

Begin using these methods in the tests related to text alternative computation
which had platform-specific checks and update the expectations files.

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2016-05-25
Reviewed by Chris Fleizach.

  • accessibility/alt-tag-on-image-with-nonimage-role-expected.txt: Updated.
  • accessibility/alt-tag-on-image-with-nonimage-role.html: Updated.
  • accessibility/aria-help-expected.txt: Added.
  • accessibility/aria-help.html: Updated.
  • accessibility/aria-label-expected.txt: Updated.
  • accessibility/aria-label.html: Updated.
  • accessibility/aria-labeled-with-hidden-node-expected.txt: Updated.
  • accessibility/aria-labeled-with-hidden-node.html: Updated.
  • accessibility/aria-labelledby-on-input-expected.txt: Updated.
  • accessibility/aria-labelledby-on-input.html: Updated.
  • accessibility/aria-labelledby-overrides-aria-labeledby-expected.txt: Updated.
  • accessibility/aria-labelledby-overrides-aria-labeledby.html: Updated.
  • accessibility/aria-labelledby-overrides-label-expected.txt: Updated.
  • accessibility/aria-labelledby-overrides-label.html: Updated.
  • accessibility/aria-labelledby-stay-within-expected.txt: Updated.
  • accessibility/aria-labelledby-stay-within.html: Updated.
  • accessibility/aria-labelledby-with-descendants-expected.txt: Updated.
  • accessibility/aria-labelledby-with-descendants.html: Updated.
  • accessibility/aria-namefrom-author-expected.txt: Updated.
  • accessibility/aria-namefrom-author.html: Updated.
  • accessibility/aria-text-role-expected.txt: Updated.
  • accessibility/aria-text-role.html: Updated.
  • accessibility/canvas-description-and-role-expected.txt: Updated.
  • accessibility/canvas-description-and-role.html: Updated.
  • accessibility/canvas-fallback-content.html: Updated.
  • accessibility/empty-image-with-title-expected.txt: Updated.
  • accessibility/empty-image-with-title.html: Updated.
  • accessibility/fieldset-element-expected.txt: Updated.
  • accessibility/fieldset-element.html: Updated.
  • accessibility/focusable-div-expected.txt: Updated.
  • accessibility/focusable-div.html: Updated.
  • accessibility/help-text.html: Updated.
  • accessibility/img-alt-tag-only-whitespace-expected.txt: Updated.
  • accessibility/img-alt-tag-only-whitespace.html: Updated.
  • accessibility/img-aria-button-alt-tag-expected.txt: Updated.
  • accessibility/img-aria-button-alt-tag.html: Updated.
  • accessibility/img-fallsback-to-title.html: Updated.
  • accessibility/input-image-alt-expected.txt: Updated.
  • accessibility/input-image-alt.html: Updated.
  • accessibility/loading-iframe-sends-notification.html: Updated.
  • accessibility/self-referencing-aria-labelledby-expected.txt: Updated.
  • accessibility/self-referencing-aria-labelledby.html: Updated.
  • accessibility/svg-bounds.html: Updated.
  • accessibility/svg-group-element-with-title-expected.txt: Updated.
  • accessibility/svg-group-element-with-title.html: Updated.
  • accessibility/svg-image-expected.txt: Updated.
  • accessibility/svg-image.html: Updated.
  • accessibility/svg-labelledby-expected.txt: Updated.
  • accessibility/svg-labelledby.html: Updated.
  • accessibility/svg-remote-element.html: Updated.
  • accessibility/w3c-svg-description-calculation.html: Updated.
  • accessibility/w3c-svg-name-calculation.html: Updated.
  • platform/gtk/TestExpectations: Updated.
  • platform/gtk/accessibility/aria-hidden-negates-no-visibility-expected.txt: Added.
  • platform/gtk/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Added.
  • platform/gtk/accessibility/aria-labelledby-overrides-label-expected.txt: Added.
  • platform/gtk/accessibility/aria-option-role-expected.txt: Added.
  • platform/gtk/accessibility/aria-switch-text-expected.txt: Updated.
  • platform/gtk/accessibility/aria-text-role-expected.txt: Added.
  • platform/gtk/accessibility/canvas-description-and-role-expected.txt: Added.
  • platform/gtk/accessibility/empty-image-with-title-expected.txt: Added.
  • platform/gtk/accessibility/help-text-expected.txt: Added.
  • platform/gtk/accessibility/image-link-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/image-map1-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/image-map2-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/image-with-alt-and-map-expected.txt: Updated.
  • platform/gtk/accessibility/img-fallsback-to-title-expected.txt: Updated.
  • platform/gtk/accessibility/math-multiscript-attributes-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/media-element-expected.txt: Updated.
  • platform/gtk/accessibility/radio-button-title-label-expected.txt: Updated.
  • platform/gtk/accessibility/svg-bounds-expected.txt: Added.
  • platform/gtk/accessibility/svg-remote-element-expected.txt: Added.
  • platform/gtk/accessibility/table-attributes-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/table-cell-spans-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/table-cells-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/table-detection-expected.txt: Updated (Gardening).
  • platform/gtk/accessibility/table-sections-expected.txt: Updated (Gardening).
  • platform/mac/accessibility/aria-help-expected.txt: Removed.
  • platform/mac/accessibility/canvas-description-and-role-expected.txt: Updated.
  • platform/mac/accessibility/fieldset-element-expected.txt: Removed.
  • platform/mac/accessibility/img-fallsback-to-title-expected.txt: Updated.
  • platform/win/accessibility/canvas-description-and-role-expected.txt: Updated.
  • resources/accessibility-helper.js:

(platformValueForW3CName): Added.
(platformValueForW3CDescription): Added.
(platformTextAlternatives): Added.
(platformRoleForComboBox): Added.
(platformRoleForStaticText): Added.

5:23 AM Changeset in webkit [204706] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.12/Source/JavaScriptCore

Merge r196886 - Remove arrowfunction test cases that rely on arguments variable in jsc
https://bugs.webkit.org/show_bug.cgi?id=154517

Patch by Skachkov Oleksandr <gskachkov@gmail.com> on 2016-02-21
Reviewed by Yusuke Suzuki.

Allow to jsc has the same behavior in javascript as browser has

  • tests/stress/arrowfunction-lexical-bind-arguments-non-strict-1.js:
  • tests/stress/arrowfunction-lexical-bind-arguments-strict.js:
2:53 AM Changeset in webkit [204705] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[Fetch API] Activate fetch api runtime flag by default
https://bugs.webkit.org/show_bug.cgi?id=160452

Patch by Youenn Fablet <youenn@apple.com> on 2016-08-22
Reviewed by Alex Christensen.

Source/WebKit/mac:

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):

Source/WebKit2:

  • Shared/WebPreferencesDefinitions.h:
12:09 AM Changeset in webkit [204704] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

LayoutTest http/tests/fetch/fetch-in-worker-crash.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=160510

Patch by Youenn Fablet <youenn@apple.com> on 2016-08-22
Reviewed by Darin Adler.

  • http/tests/fetch/fetch-in-worker.js:

(stream.new.ReadableStream): Enqueuing a Uint8Array not a string, so that the fetch promise is not rejected. This should take care of Fail flakiness.
Crash flakiness in Debug mode may still happen due to promise use in Worker.

12:02 AM Changeset in webkit [204703] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[SOUP] Change MessageDecoder with Decoder
https://bugs.webkit.org/show_bug.cgi?id=161040

Patch by Gyuyoung Kim <gyuyoung.kim@navercorp.com> on 2016-08-22
Reviewed by Darin Adler.

Clean up MessageDecoder in files of Soup.

  • Scripts/webkit/MessageReceiverSuperclass-expected.cpp:

(WebKit::WebPage::didReceiveMessage):

  • UIProcess/soup/WebSoupRequestManagerProxy.h:
  • WebProcess/soup/WebSoupRequestManager.h:

Aug 21, 2016:

11:02 PM Changeset in webkit [204702] by commit-queue@webkit.org
  • 17 edits in trunk/Source

Use Document& instead of Document* when getting cookies
https://bugs.webkit.org/show_bug.cgi?id=161011

Patch by Alex Christensen <achristensen@webkit.org> on 2016-08-21
Reviewed by Darin Adler.

Source/WebCore:

No change in behavior.

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::processBuffer):

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

  • dom/Document.cpp:

(WebCore::Document::cookie):
(WebCore::Document::setCookie):
(WebCore::Document::referrer):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::getCookies):
(WebCore::InspectorPageAgent::deleteCookie):
(WebCore::InspectorPageAgent::getResourceTree):

  • loader/CookieJar.cpp:

(WebCore::networkingContext):
(WebCore::storageSession):
(WebCore::cookies):
(WebCore::setCookies):
(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::addCookie):

  • loader/CookieJar.h:
  • page/Navigator.cpp:

(WebCore::Navigator::cookieEnabled):
(WebCore::Navigator::javaEnabled):

Source/WebKit/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::getCookies):
(WebKit::NetscapePluginInstanceProxy::setCookies):

  • Plugins/WebNetscapePluginView.mm:

(-[WebNetscapePluginView getVariable:forURL:value:length:]):
(-[WebNetscapePluginView setVariable:forURL:value:length:]):

Source/WebKit/win:

  • Plugins/PluginView.cpp:

(WebCore::PluginView::getValueForURL):

Source/WebKit2:

  • WebProcess/Automation/WebAutomationSessionProxy.cpp:

(WebKit::WebAutomationSessionProxy::getCookiesForFrame):
(WebKit::WebAutomationSessionProxy::deleteCookie):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::cookiesForURL):
(WebKit::PluginView::setCookiesForURL):
(WebKit::PluginView::getAuthenticationInfo):

10:42 PM Changeset in webkit [204701] by commit-queue@webkit.org
  • 4 edits in trunk

URLParser should parse IPv4 addresses
https://bugs.webkit.org/show_bug.cgi?id=161023

Patch by Alex Christensen <achristensen@webkit.org> on 2016-08-21
Reviewed by Darin Adler.

Source/WebCore:

Covered by new API tests because URLParser isn't used anywhere in WebCore yet.

  • platform/URLParser.cpp:

(WebCore::URLParser::authorityEndReached):
(WebCore::serializeIPv4):
(WebCore::parseIPv4Number):
(WebCore::pow256):
(WebCore::parseIPv4Host):
(WebCore::parseIPv6Host):
(WebCore::URLParser::hostEndReached):

Tools:

  • TestWebKitAPI/Tests/WebCore/URLParser.cpp:

(TestWebKitAPI::TEST_F):
(TestWebKitAPI::checkURLDifferences):
We are already getting differences between the old URL::parse and the new URLParser.
(TestWebKitAPI::shouldFail):

9:04 PM Changeset in webkit [204700] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Remove a few custom bindings
https://bugs.webkit.org/show_bug.cgi?id=161039

Patch by Sam Weinig <sam@webkit.org> on 2016-08-21
Reviewed by Darin Adler.

Remove custom bindings for CanvasRenderingContext2D's webkitLineDash attribute and commit function.

  • WebCore.xcodeproj/project.pbxproj:

Sort files.

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:

(WebCore::JSCanvasRenderingContext2D::commit): Deleted.
(WebCore::JSCanvasRenderingContext2D::webkitLineDash): Deleted.
(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash): Deleted.

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::webkitLineDashOffset): Deleted.
(WebCore::CanvasRenderingContext2D::setWebkitLineDashOffset): Deleted.

  • html/canvas/CanvasRenderingContext2D.h:
  • html/canvas/CanvasRenderingContext2D.idl:
8:47 PM Changeset in webkit [204699] by Yusuke Suzuki
  • 3 edits
    1 add in trunk

[DFG] Should not fixup AnyIntUse in 32_64
https://bugs.webkit.org/show_bug.cgi?id=161029

Reviewed by Saam Barati.

JSTests:

  • typeProfiler/int52-dfg.js: Added.

(test):

Source/JavaScriptCore:

DFG fixup phase uses AnyIntUse even in 32bit DFG. This patch removes this incorrect filtering.
If the 32bit DFG see the TypeAnyInt, it should fallback to the NumberUse case.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

1:36 PM Changeset in webkit [204698] by Yusuke Suzuki
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r204697
https://bugs.webkit.org/show_bug.cgi?id=161029

JSTests:

  • typeProfiler/int52-dfg.js: Removed.

(test): Deleted.

  • typeProfiler/number-filter-dfg.js: Removed.

(test): Deleted.

Source/JavaScriptCore:

32bit is OK. DFGSpeculativeJIT64.cpp shortcut also need some cares.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

12:45 PM Changeset in webkit [204697] by Yusuke Suzuki
  • 3 edits
    2 adds in trunk

[DFG] Should not fixup AnyIntUse in 32_64
https://bugs.webkit.org/show_bug.cgi?id=161029

Reviewed by Saam Barati.

JSTests:

  • typeProfiler/int52-dfg.js: Added.

(test):

  • typeProfiler/number-filter-dfg.js: Added.

(test):

Source/JavaScriptCore:

DFG fixup phase uses AnyIntUse even in 32bit DFG. This patch removes this incorrect filtering.
If the 32bit DFG see the TypeAnyInt, it should fallback to the NumberUse case.

And this patch also fixes the case that the type set only contains TypeNumber. Previously,
we used NumberUse edge filtering. But it misses AnyInt logging: While the NumberUse filter
passes both TypeAnyInt and TypeNumber, the type set only logged TypeNumber.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

11:13 AM Changeset in webkit [204696] by dbates@webkit.org
  • 1 edit in trunk/Tools/ChangeLog

Fix up title in ChangeLog entry for r204695.

11:08 AM Changeset in webkit [204695] by dbates@webkit.org
  • 3 edits
    1 add in trunk/Tools

prepare-ChangeLog lists modified methods as having been deleted
https://bugs.webkit.org/show_bug.cgi?id=148437

Reviewed by Dan Bernstein.

  • Scripts/prepare-ChangeLog:

(diffCommand): When using a Subversion checkout, generate a unified diff without any context lines.
This matches our behavior when using a Git checkout. The function overlap logic in generateFunctionListsByRanges()
assumes that its line ranges were from a unified diff without any context lines.
(extractLineRangeAfterChange): A deleted line should be represented with a ("begin line number", "end line number") = ("new starting line number", "new starting line number").
(extractLineRangeBeforeChange): An added line should be represented with a ("begin line number", "end line number") = ("original starting line number", "original starting line number").

  • Scripts/webkitperl/prepare-ChangeLog_unittest/extractLineRangeBeforeAndAfterChange.pl: Update expected results

based on changes to extractLineRangeAfterChange() and extractLineRangeBeforeChange().

  • Scripts/webkitperl/prepare-ChangeLog_unittest/generateFunctionLists.pl: Added.

(discardOutput): Convenience function invokes the specified function redirecting standard output and standard error
to /dev/null for the duration of the function call.

8:41 AM Changeset in webkit [204694] by commit-queue@webkit.org
  • 2 edits
    11 adds in trunk/LayoutTests

[Mac] Rebase some failing XMLHttpRequest tests
https://bugs.webkit.org/show_bug.cgi?id=161036

Unreviewed.

Patch by Youenn Fablet <youenn@apple.com> on 2016-08-21

  • TestExpectations: Unmarking rebased tests as failing.
  • platform/ios-simulator/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt.
  • platform/ios-simulator/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt.
  • platform/ios-simulator/imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt.
  • platform/mac/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt.
  • platform/mac/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt.
  • platform/mac/imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt.
6:36 AM Changeset in webkit [204693] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

cross-origin requests redirected fail or drop author requested headers
https://bugs.webkit.org/show_bug.cgi?id=112471

Patch by Youenn Fablet <youenn@apple.com> on 2016-08-21
Reviewed by Alex Christensen.

Source/WebCore:

Test: http/tests/xmlhttprequest/redirections-and-user-headers.html

Storing original headers in DocumentThreadableLoader.
In case of cross-origin redirection in CORS mode, set the new request headers to the original headers.
Add a special handling to Authorization header that should not be used when it is already removed by the network layer.

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::redirectReceived):
(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/DocumentThreadableLoader.h:

LayoutTests:

  • http/tests/xmlhttprequest/redirections-and-user-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/redirections-and-user-headers.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-preflight-redirect.php: Added.
5:18 AM Changeset in webkit [204692] by commit-queue@webkit.org
  • 10 edits
    1 copy
    1 add in trunk/Source/WebCore

Introduce a MathMLAnnotationElement class for the annotation/annotation-xml elements
https://bugs.webkit.org/show_bug.cgi?id=160540

Patch by Frederic Wang <fwang@igalia.com> on 2016-08-21
Reviewed by Darin Adler.

The <annotation> element can only contain text whereas the <annotation-xml> element can
contain some elements as described in the HTML5 RelaxNG schema. For this reason, they have
been implemented in the separate MathMLTextElement and MathMLInlineContainerElement
respectively. However, they are actually closer to each other than to token elements or
presentation containers. In particular they support very different attributes and are
considered by the <semantics> tag. Hence we move their implementations in a new
MathMLAnnotation class.

No new tests, already covered by existing tests.

  • CMakeLists.txt: Add MathMLAnnotationElement.
  • mathml/MathMLAllInOne.cpp: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • mathml/MathMLAnnotationElement.cpp: Added.

(WebCore::MathMLAnnotationElement::MathMLAnnotationElement): ASSERT that this class is only
for annotation and annotation-xml.
(WebCore::MathMLAnnotationElement::create):
(WebCore::MathMLAnnotationElement::createElementRenderer): Move implementation from
MathMLTextElement and MathMLInlineContainerElement.
(WebCore::MathMLAnnotationElement::childShouldCreateRenderer): Move implementation from
MathMLTextElement and MathMLElement.
(WebCore::MathMLAnnotationElement::attributeChanged): Move implementation from MathMLElement.

  • mathml/MathMLAnnotationElement.h: Override isSemanticAnnotation and isPresentationMathML

to return true.

  • mathml/MathMLElement.cpp:

(WebCore::MathMLElement::childShouldCreateRenderer): Move the annotation-xml case into
MathMLAnnotationElement.
(WebCore::MathMLElement::attributeChanged): Deleted. This was only used for semantic
annotations and so the code is moved into MathMLAnnotationElement.

  • mathml/MathMLElement.h:

(WebCore::MathMLElement::isMathMLToken): Return false and let derived class override this.
(WebCore::MathMLElement::isSemanticAnnotation): Ditto.
(WebCore::MathMLElement::updateSelectedChild): Make this public so that is can be used
by MathMLAnnotationElement::attributeChanged.

  • mathml/MathMLInlineContainerElement.cpp:

(WebCore::MathMLInlineContainerElement::createElementRenderer): The annotation-xml case is
now handled in MathMLAnnotationElement.

  • mathml/MathMLTextElement.cpp:

(WebCore::MathMLTextElement::createElementRenderer): The annotation case is handled is now
handled in MathMLAnnotationElement.
(WebCore::MathMLTextElement::childShouldCreateRenderer): Ditto.

  • mathml/MathMLTextElement.h: Override isToken to return true.
  • mathml/mathtags.in: Map annotation and annotation-xml to MathMLAnnotationElement.
3:55 AM Changeset in webkit [204691] by Michael Catanzaro
  • 2 edits
    1 delete in trunk/Source/WebCore

[GTK] Clean up CursorGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=157794

Reviewed by Darin Adler.

We use GdkCursorType extensively in CursorGtk.cpp, but GTK+ does not support this anymore
and they're only sure to work under X11. Instead, use supported CSS cursor names. This
follows the grand tradition of replacing constants with hardcoded string values, but such
is the new best practice in GTK+ world.

Also, we have a bunch of custom cursors copied from Firefox. Each of these cursors is
nowadays guaranteed to be provided by GTK+, so we don't need any of these anymore.

  • platform/gtk/CursorGtk.cpp:

(WebCore::createNamedCursor):
(WebCore::Cursor::ensurePlatformCursor):

  • platform/gtk/CursorGtk.h: Removed.

Aug 20, 2016:

10:21 PM Changeset in webkit [204690] by Gyuyoung Kim
  • 8 edits in trunk/Source/WebKit2

Unreviewed EFL build fix since r204668

r204668 changed MessageDecoder with Decoder though, MessageDecoder remained
in EFL specific files.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
  • UIProcess/WebVibrationProxy.h:
  • WebProcess/Battery/WebBatteryManager.h:
  • WebProcess/WebPage/AcceleratedDrawingArea.cpp:

(WebKit::AcceleratedDrawingArea::didReceiveCoordinatedLayerTreeHostMessage):

  • WebProcess/WebPage/AcceleratedDrawingArea.h:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
  • WebProcess/WebPage/LayerTreeHost.h:
8:26 PM Changeset in webkit [204689] by commit-queue@webkit.org
  • 1 edit
    1 delete in trunk/Tools

[EFL] Remove unnecessary a patch to mute ecore warnings
https://bugs.webkit.org/show_bug.cgi?id=160997

Patch by Gyuyoung Kim <gyuyoung.kim@navercorp.com> on 2016-08-20
Reviewed by Darin Adler.

There is no warning messages during the layout test and perf test
after bumping efl version from 1.17 to 1.18. Remove it.

  • efl/patches/ecore_remove_warnings.patch: Removed.
8:06 PM Changeset in webkit [204688] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the build.

  • dom/UIEvent.h:
7:21 PM Changeset in webkit [204687] by Darin Adler
  • 74 edits in trunk/Source/WebCore

Removed Objective-C specific attributes from IDL, made conditionals more consistent
https://bugs.webkit.org/show_bug.cgi?id=160900

Reviewed by Sam Weinig.

Removed all Objective-C-specific attributes from all the various IDL files where
they were used. Except, oops, Sam already did that, and so everything just merged!
Now that Objective-C is gone, made all the conditionals be based on LANGUAGE_GOBJECT
specifically. Later we should cut these down because many were not actually needed
for the GObject bindings, actually only for Objective-C. Also made the style of
conditional consistent. Also re-sorted attributes in alphabetical order in many cases
and made formatting more consistent without fancy indentation. Also removed old comments
that tried to document where various operations and attributes were defined; it's not
helpful to track "this was part of DOM level 2" at this point. Also fixed a variety of
types to explicitly state the values are nullable in cases where the generated code
is currently not affected by that; mostly read-only attribute types.

  • Modules/mediasession/HTMLMediaElementMediaSession.idl:
  • Modules/mediastream/HTMLMediaElementMediaStream.idl:
  • animation/AnimationTimeline.idl:
  • animation/DocumentAnimation.idl:
  • bindings/scripts/IDLAttributes.txt:
  • css/CSSMediaRule.idl:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSStyleSheet.idl:
  • css/CSSValue.idl:
  • css/RGBColor.idl:
  • css/StyleSheet.idl:
  • dom/CharacterData.idl:
  • dom/DOMCoreException.idl:
  • dom/DOMImplementation.idl:
  • dom/Document.idl:
  • dom/DocumentType.idl:
  • dom/Element.idl:
  • dom/Event.idl:
  • dom/EventListener.idl:
  • dom/EventTarget.idl:
  • dom/KeyboardEvent.idl:
  • dom/MessageEvent.idl:
  • dom/MessagePort.idl:
  • dom/MouseEvent.idl:
  • dom/MutationEvent.idl:
  • dom/NamedNodeMap.idl:
  • dom/Node.idl:
  • dom/NodeFilter.idl:
  • dom/NonElementParentNode.idl:
  • dom/Range.idl:
  • dom/Slotable.idl:
  • dom/UIEvent.idl:
  • dom/WheelEvent.idl:
  • fileapi/FileException.idl:
  • html/DOMTokenList.idl:
  • html/HTMLAnchorElement.idl:
  • html/HTMLAppletElement.idl:
  • html/HTMLCollection.idl:
  • html/HTMLDocument.idl:
  • html/HTMLElement.idl:
  • html/HTMLEmbedElement.idl:
  • html/HTMLFormElement.idl:
  • html/HTMLInputElement.idl:
  • html/HTMLMediaElement.idl:
  • html/HTMLOptionElement.idl:
  • html/HTMLOptionsCollection.idl:
  • html/HTMLSelectElement.idl:
  • html/HTMLTableColElement.idl:
  • html/HTMLVideoElement.idl:
  • html/ImageData.idl:
  • html/URLUtils.idl:
  • html/track/TextTrack.idl:
  • page/AbstractView.idl:
  • page/DOMSelection.idl:
  • page/DOMWindow.idl:
  • page/Location.idl:
  • svg/SVGDocument.idl:
  • svg/SVGElement.idl:
  • svg/SVGException.idl:
  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.idl:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGPathSeg.idl:
  • svg/SVGTests.idl:
  • svg/SVGURIReference.idl:
  • svg/SVGZoomAndPan.idl:
  • workers/DedicatedWorkerGlobalScope.idl:
  • workers/Worker.idl:
  • workers/WorkerGlobalScope.idl:
  • xml/XPathException.idl:
  • xml/XPathExpression.idl:
  • xml/XPathNSResolver.idl:

See above for summary of changes.

6:43 PM Changeset in webkit [204686] by BJ Burg
  • 2 edits in trunk/Source/JavaScriptCore

Remote Inspector: some methods don't need to be marked virtual anymore
https://bugs.webkit.org/show_bug.cgi?id=161033

Reviewed by Darin Adler.

This probably happened when this code was last refactored and moved around.

  • inspector/remote/RemoteConnectionToTarget.h:
6:09 PM Changeset in webkit [204685] by weinig@apple.com
  • 35 edits in trunk/Source/WebCore

Remove Objective-C specific extended attributes from the bindings
https://bugs.webkit.org/show_bug.cgi?id=161034

Reviewed by Dan Bernstein.

  • Removes ObjCPolymorphic, ObjCProtocol, ObjCLegacyUnnamedParameters and ObjCExplicitAtomicString extended attributes.
  • animation/AnimationTimeline.idl:
  • css/CSSMediaRule.idl:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSStyleSheet.idl:
  • css/CSSValue.idl:
  • css/StyleSheet.idl:
  • dom/CharacterData.idl:
  • dom/DOMImplementation.idl:
  • dom/Document.idl:
  • dom/Element.idl:
  • dom/Event.idl:
  • dom/EventListener.idl:
  • dom/EventTarget.idl:
  • dom/MouseEvent.idl:
  • dom/MutationEvent.idl:
  • dom/NamedNodeMap.idl:
  • dom/Node.idl:
  • dom/NodeFilter.idl:
  • dom/NonElementParentNode.idl:
  • dom/Range.idl:
  • dom/UIEvent.idl:
  • html/HTMLCollection.idl:
  • html/HTMLSelectElement.idl:
  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.idl:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGPathSeg.idl:
  • svg/SVGTests.idl:
  • svg/SVGURIReference.idl:
  • svg/SVGZoomAndPan.idl:
  • xml/XPathExpression.idl:
  • xml/XPathNSResolver.idl:
5:54 PM Changeset in webkit [204684] by weinig@apple.com
  • 37 edits in trunk/Source/WebCore

Roll out r204683.

4:43 PM Changeset in webkit [204683] by weinig@apple.com
  • 37 edits in trunk/Source/WebCore

Remove Objective-C specific extended attributes / features from the bindings
https://bugs.webkit.org/show_bug.cgi?id=161034

Reviewed by Dan Bernstein.

  • Removes ObjCPolymorphic, ObjCProtocol, ObjCLegacyUnnamedParameters and ObjCExplicitAtomicString extended attributes.
  • Remove support for multiple inheritance from the IDLParser.
  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/IDLParser.pm:
  • animation/AnimationTimeline.idl:
  • css/CSSMediaRule.idl:
  • css/CSSPrimitiveValue.idl:
  • css/CSSRule.idl:
  • css/CSSStyleDeclaration.idl:
  • css/CSSStyleSheet.idl:
  • css/CSSValue.idl:
  • css/StyleSheet.idl:
  • dom/CharacterData.idl:
  • dom/DOMImplementation.idl:
  • dom/Document.idl:
  • dom/Element.idl:
  • dom/Event.idl:
  • dom/EventListener.idl:
  • dom/EventTarget.idl:
  • dom/MouseEvent.idl:
  • dom/MutationEvent.idl:
  • dom/NamedNodeMap.idl:
  • dom/Node.idl:
  • dom/NodeFilter.idl:
  • dom/NonElementParentNode.idl:
  • dom/Range.idl:
  • dom/UIEvent.idl:
  • html/HTMLCollection.idl:
  • html/HTMLSelectElement.idl:
  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFilterPrimitiveStandardAttributes.idl:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGPathSeg.idl:
  • svg/SVGTests.idl:
  • svg/SVGURIReference.idl:
  • svg/SVGZoomAndPan.idl:
  • xml/XPathExpression.idl:
  • xml/XPathNSResolver.idl:
3:00 PM Changeset in webkit [204682] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Web Content service with a restricted entitlement may load arbitrary dylibs
https://bugs.webkit.org/show_bug.cgi?id=156668
<rdar://problem/25429784>

Reviewed by Sam Weinig.

  • Configurations/WebContentService.xcconfig: Enable library validation when the Web Content service is given the XPC domain extension entitlement.
2:40 PM Changeset in webkit [204681] by weinig@apple.com
  • 28 edits
    1 delete in trunk/Source/WebCore

Stop pretending that AbstractView is a thing, it's not
https://bugs.webkit.org/show_bug.cgi?id=161032

Reviewed by Dan Bernstein.

Remove AbstractView.idl, the AbstractView typedef of DOMWindow, and
all special casing of the name AbstractView in the JS code generator.

No change in behavior.

  • DerivedSources.make:
  • Modules/indieui/UIRequestEvent.cpp:

(WebCore::UIRequestEvent::createForBindings):
(WebCore::UIRequestEvent::create):
(WebCore::UIRequestEvent::UIRequestEvent):

  • Modules/indieui/UIRequestEvent.h:

(WebCore::UIRequestEvent::receiver):

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorGObject.pm:
  • bindings/scripts/CodeGeneratorJS.pm:

(ShouldGenerateToJSDeclaration):
(GetImplClassName):

  • dom/CompositionEvent.cpp:

(WebCore::CompositionEvent::CompositionEvent):
(WebCore::CompositionEvent::~CompositionEvent):
(WebCore::CompositionEvent::initCompositionEvent):

  • dom/CompositionEvent.h:
  • dom/FocusEvent.cpp:

(WebCore::FocusEvent::isFocusEvent):
(WebCore::FocusEvent::FocusEvent):

  • dom/FocusEvent.h:
  • dom/KeyboardEvent.cpp:

(WebCore::KeyboardEvent::KeyboardEvent):
(WebCore::KeyboardEvent::~KeyboardEvent):
(WebCore::KeyboardEvent::initKeyboardEvent):

  • dom/KeyboardEvent.h:
  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::createForBindings):
(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
(WebCore::MouseEvent::~MouseEvent):
(WebCore::MouseEvent::initMouseEvent):

  • dom/MouseEvent.h:
  • dom/MouseRelatedEvent.cpp:

(WebCore::MouseRelatedEvent::MouseRelatedEvent):
(WebCore::contentsScrollOffset):

  • dom/MouseRelatedEvent.h:
  • dom/SimulatedClick.cpp:
  • dom/TextEvent.cpp:

(WebCore::TextEvent::createForBindings):
(WebCore::TextEvent::create):
(WebCore::TextEvent::createForPlainTextPaste):
(WebCore::TextEvent::createForFragmentPaste):
(WebCore::TextEvent::createForDrop):
(WebCore::TextEvent::createForDictation):
(WebCore::TextEvent::TextEvent):
(WebCore::TextEvent::~TextEvent):
(WebCore::TextEvent::initTextEvent):

  • dom/TextEvent.h:
  • dom/TouchEvent.h:
  • dom/UIEvent.cpp:

(WebCore::UIEvent::UIEvent):
(WebCore::UIEvent::~UIEvent):
(WebCore::UIEvent::initUIEvent):

  • dom/UIEvent.h:

(WebCore::UIEvent::create):
(WebCore::UIEvent::createForBindings):
(WebCore::UIEvent::view):
(WebCore::UIEvent::detail):

  • dom/UIEventWithKeyState.h:

(WebCore::UIEventWithKeyState::UIEventWithKeyState):

  • dom/WheelEvent.cpp:

(WebCore::WheelEvent::WheelEvent):
(WebCore::WheelEvent::initWheelEvent):
(WebCore::WheelEvent::initWebKitWheelEvent):

  • dom/WheelEvent.h:
  • page/AbstractView.idl: Removed.
10:29 AM Changeset in webkit [204680] by Simon Fraser
  • 7 edits in trunk/Tools

REGRESSION (r204477): Running LayoutTests on ios-simulator became ~15 minutes slower
https://bugs.webkit.org/show_bug.cgi?id=160985

Re-land r204672, but don't check the result of 'xcrun simctl shutdown', because
device shutdown seems to happen as result of killing Simulator.apps, and we're racing
with that.

  • Scripts/webkitpy/layout_tests/views/printing.py:

(Printer.print_config):

  • Scripts/webkitpy/port/base.py:

(Port.driver_cmd_line_for_logging):
(Port.driver_cmd_line): Deleted.

  • Scripts/webkitpy/port/driver.py:

(IOSSimulatorDriver.cmd_line):

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.init):
(IOSSimulatorPort.driver_cmd_line_for_logging):
(IOSSimulatorPort._create_simulators):
(IOSSimulatorPort.setup_test_run):
(IOSSimulatorPort._quit_ios_simulator):
(IOSSimulatorPort.clean_up_test_run):
(IOSSimulatorPort._create_device):
(IOSSimulatorPort):
(IOSSimulatorPort._remove_device):
(IOSSimulatorPort._testing_device):
(IOSSimulatorPort.device_id_for_worker_number):
(IOSSimulatorPort._set_device_class): Deleted.
(IOSSimulatorPort.testing_device): Deleted.

  • Scripts/webkitpy/port/port_testcase.py:

(PortTestCase.test_driver_cmd_line):

  • Scripts/webkitpy/xcode/simulator.py:

(Device.shutdown):
(Device):
(Device.delete):
(Device.reset):
(Simulator):
(Simulator.create_device):
(Simulator.remove_device):
(Simulator.device_number):
(Simulator.device_state_description):
(Simulator.wait_until_device_is_in_state):

7:44 AM Changeset in webkit [204679] by weinig@apple.com
  • 32 edits
    1 delete in trunk

Location.ancestorOrigins should return a FrozenArray<USVString>
https://bugs.webkit.org/show_bug.cgi?id=161018

Reviewed by Ryosuke Niwa and Chris Dumez.

Source/JavaScriptCore:

  • runtime/ObjectConstructor.h:

(JSC::objectConstructorFreeze):
Export objectConstructorFreeze so it can be used to freeze DOM FrozenArrays.

Source/WebCore:

Updated tests: fast/dom/Window/Location/ancestor-origins.html

fast/dom/indexed-getters-returning-string.html

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::createObjectStore):
(WebCore::IDBDatabase::transaction):
(WebCore::IDBDatabase::deleteObjectStore):

  • Modules/indexeddb/IDBDatabase.h:

Remove unused ScriptExecutionContext parameter.

  • Modules/indexeddb/IDBDatabase.idl:

There is no need for a custom implementation anymore.

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:

Remove JSDOMStringListCustom.cpp, which is no longer needed.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::jsArray): Deleted.
Remove overload of jsArray that took a DOMStringList.

  • bindings/js/JSDOMBinding.h:

(WebCore::jsFrozenArray):
Add jsFrozenArray which returns an JSArray which has had the moral
equivalent of Object.freeze() called on it. This follows
http://heycam.github.io/webidl/#es-frozen-array.

  • bindings/js/JSDOMStringListCustom.cpp:

Removed.

  • bindings/js/JSIDBDatabaseCustom.cpp:

(WebCore::JSIDBDatabase::transaction): Deleted.
Remove no longer necessary custom implementation of transaction.

  • bindings/scripts/CodeGenerator.pm:

(IsRefPtrType):
(IsSVGAnimatedType):
(IsSequenceType):
(GetSequenceType):
(IsFrozenArrayType):
(GetFrozenArrayInnerType):

  • bindings/scripts/CodeGeneratorJS.pm:

(AreTypesDistinguishableForOverloadResolution):
(GenerateOverloadedFunctionOrConstructor):
(GetNativeType):
(GetNativeVectorInnerType):
(GetNativeTypeForCallbacks):
(JSValueToNative):
(NativeToJSValue):

  • bindings/scripts/IDLParser.pm:

(parseNonAnyType):
Add support for FrozenArray, closely matching the sequence code.

  • bindings/scripts/test/JS/JSTestCallback.cpp:
  • bindings/scripts/test/JS/JSTestCallback.h:
  • bindings/scripts/test/JS/JSTestCallbackFunction.cpp:
  • bindings/scripts/test/JS/JSTestCallbackFunction.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

Updated bindings test results.

  • dom/DOMStringList.idl:

Remove JSCustomToNativeObject, which is no longer needed.

  • inspector/InspectorIndexedDBAgent.cpp:

Update calls to IDBDatabase::transaction.

  • page/Location.cpp:

(WebCore::Location::ancestorOrigins):

  • page/Location.h:

Change ancestorOrigins to return a Vector<String> rather than
a DOMStringList.

  • page/Location.idl:

Change ancestorOrigins to return a FrozenArray<USVString>, matching
the HTML5 spec.

LayoutTests:

Update existing tests to account for the change in type of Location.ancestorOrigins.

  • fast/dom/Window/Location/ancestor-origins-expected.txt:
  • fast/dom/Window/Location/ancestor-origins.html:
  • fast/dom/indexed-getters-returning-string-expected.txt:
  • fast/dom/indexed-getters-returning-string.html:
4:39 AM WebKitGTK/Gardening/Calendar edited by jfernandez@igalia.com
(diff)
2:38 AM Changeset in webkit [204678] by jfernandez@igalia.com
  • 20 edits in trunk/Source/WebKit2

[GTK] Unreviewed GTK build fix since r204665 and 204668
https://bugs.webkit.org/show_bug.cgi?id=161020

  • CMakeLists.txt:
  • Platform/IPC/MessageRecorder.cpp:

(IPC::MessageRecorder::recordOutgoingMessage):

  • Platform/IPC/unix/ConnectionUnix.cpp:

(IPC::Connection::processMessage):
(IPC::Connection::sendOutgoingMessage):

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::Handle::encode):
(WebKit::SharedMemory::Handle::decode):

  • PlatformGTK.cmake:
  • Scripts/webkit/LegacyMessageReceiver-expected.cpp:

(Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
(Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
(WebKit::WebPage::didReceiveWebPageMessage):
(WebKit::WebPage::didReceiveSyncWebPageMessage):

  • Scripts/webkit/LegacyMessages-expected.h:
  • Scripts/webkit/MessageReceiver-expected.cpp:

(Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
(Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):

  • Scripts/webkit/Messages-expected.h:
  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:

(IPC::ArgumentCoder<WebCore::FilterOperations>::encode):
(IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
(IPC::ArgumentCoder<TransformOperations>::encode):
(IPC::ArgumentCoder<TransformOperations>::decode):
(IPC::encodeTimingFunction):
(IPC::decodeTimingFunction):
(IPC::ArgumentCoder<TextureMapperAnimation>::encode):
(IPC::ArgumentCoder<TextureMapperAnimation>::decode):
(IPC::ArgumentCoder<TextureMapperAnimations>::encode):
(IPC::ArgumentCoder<TextureMapperAnimations>::decode):
(IPC::ArgumentCoder<WebCore::GraphicsSurfaceToken>::encode):
(IPC::ArgumentCoder<WebCore::GraphicsSurfaceToken>::decode):
(IPC::ArgumentCoder<SurfaceUpdateInfo>::encode):
(IPC::ArgumentCoder<SurfaceUpdateInfo>::decode):
(IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::encode):
(IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::decode):
(IPC::ArgumentCoder<TileUpdateInfo>::encode):
(IPC::ArgumentCoder<TileUpdateInfo>::decode):
(IPC::ArgumentCoder<TileCreationInfo>::encode):
(IPC::ArgumentCoder<TileCreationInfo>::decode):
(IPC::encodeCoordinatedSurface):
(IPC::decodeCoordinatedSurface):
(IPC::ArgumentCoder<CoordinatedGraphicsState>::encode):
(IPC::ArgumentCoder<CoordinatedGraphicsState>::decode):

  • Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
  • Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:

(WebKit::WebCoordinatedSurface::Handle::encode):
(WebKit::WebCoordinatedSurface::Handle::decode):

  • Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
  • Shared/WebBatteryStatus.cpp:

(WebKit::WebBatteryStatus::Data::encode):
(WebKit::WebBatteryStatus::Data::decode):

  • Shared/WebBatteryStatus.h:
  • Shared/gtk/ArgumentCodersGtk.cpp:

(IPC::encodeImage):
(IPC::decodeImage):
(IPC::encodeDataObject):
(IPC::decodeDataObject):
(IPC::ArgumentCoder<DragData>::encode):
(IPC::ArgumentCoder<DragData>::decode):
(IPC::encodeGKeyFile):
(IPC::decodeGKeyFile):
(IPC::encode):
(IPC::decode):

  • Shared/gtk/ArgumentCodersGtk.h:
  • Shared/soup/WebCoreArgumentCodersSoup.cpp:

(IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
(IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
(IPC::ArgumentCoder<CertificateInfo>::encode):
(IPC::ArgumentCoder<CertificateInfo>::decode):
(IPC::ArgumentCoder<ResourceError>::encodePlatformData):
(IPC::ArgumentCoder<ResourceError>::decodePlatformData):
(IPC::ArgumentCoder<ProtectionSpace>::encodePlatformData):
(IPC::ArgumentCoder<ProtectionSpace>::decodePlatformData):
(IPC::ArgumentCoder<Credential>::encodePlatformData):
(IPC::ArgumentCoder<Credential>::decodePlatformData):

  • UIProcess/LegacySessionStateCodingNone.cpp:

(WebKit::encodeLegacySessionState):
(WebKit::decodeLegacySessionState):

  • UIProcess/WebBatteryManagerProxy.h:
1:04 AM Changeset in webkit [204677] by Yusuke Suzuki
  • 2 edits in trunk/Source/WebKit2

Unreviewed, build fix attempt after r204665 and r204668.

  • PlatformGTK.cmake:

Aug 19, 2016:

9:53 PM Changeset in webkit [204676] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

Another build fix attempt after r204665 and r204668.

  • CMakeLists.txt:
9:44 PM Changeset in webkit [204675] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

GTK+ / EFL build fix attempt after r204665.

  • CMakeLists.txt:
8:10 PM Changeset in webkit [204674] by Chris Dumez
  • 3 edits in trunk/LayoutTests/imported/w3c

Unreviewed, roll out part of r204662 to see if it addresses flakiness.

  • web-platform-tests/html/dom/interfaces.html:
7:59 PM Changeset in webkit [204673] by ap@apple.com
  • 4 edits in branches/safari-602.1.50.1-branch/Tools

Merge r204656 and r204660.

2016-08-19 Alexey Proskuryakov <ap@apple.com>

Adopt SimServiceContext in LayoutTestRelay
https://bugs.webkit.org/show_bug.cgi?id=161000
<rdar://problem/25765594>

Reviewed by Daniel Bates.

  • LayoutTestRelay/LayoutTestRelay/CoreSimulatorSPI.h:
  • LayoutTestRelay/LayoutTestRelay/main.m:
7:53 PM Changeset in webkit [204672] by Ryan Haddad
  • 7 edits in trunk/Tools

Unreviewed, rolling out r204659.

This change appears to have caused ios-simulator LayoutTests
to fail when shutting down the simulator

Reverted changeset:

"REGRESSION (r204477): Running LayoutTests on ios-simulator
became ~15 minutes slower"
https://bugs.webkit.org/show_bug.cgi?id=160985
http://trac.webkit.org/changeset/204659

7:51 PM Changeset in webkit [204671] by ap@apple.com
  • 4 edits in branches/safari-602-branch/Tools

Merge r204656 and r204660.

2016-08-19 Alexey Proskuryakov <ap@apple.com>

Adopt SimServiceContext in LayoutTestRelay
https://bugs.webkit.org/show_bug.cgi?id=161000
<rdar://problem/25765594>

Reviewed by Daniel Bates.

  • LayoutTestRelay/LayoutTestRelay/CoreSimulatorSPI.h:
  • LayoutTestRelay/LayoutTestRelay/main.m:
7:00 PM Changeset in webkit [204670] by commit-queue@webkit.org
  • 20 edits
    1 add in trunk

[JSC] ArithSqrt should work with any argument type
https://bugs.webkit.org/show_bug.cgi?id=160954

Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-08-19
Reviewed by Saam Barati.

JSTests:

  • stress/arith-sqrt-on-various-types.js: Added.

(let.validInputTypedTestCases.validInputTestCases.map):
(isIdentical):
(opaqueAllTypesSqrt):
(testAllTypesCall):
(testSingleTypeCall):
(opaqueSqrtForSideEffects):
(testSideEffect.let.testObject.valueOf):
(testSideEffect):
(opaqueSqrtForCSE):
(testCSE.let.testObject.valueOf):
(testCSE):
(testException.opaqueSqrtWithException):
(testException):

Source/JavaScriptCore:

Previsouly, ArithSqrt would always OSR Exit if the argument
is not typed Integer, Double, or Boolean.
Since we can't recover by generalizing to those, we continuously
OSR Exit and recompile the same code over and over again.

This patch introduces a fallback to handle the remaining types.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGMayExit.cpp:

This is somewhat unrelated. While discussing the design of this
with Filip, we decided not to use ToNumber+ArithSqrt despite
the guarantee that ToNumber does not OSR Exit.
Since it does not OSR Exit, we should say so in mayExitImpl().

  • dfg/DFGNodeType.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithSqrt):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileArithSqrt):

5:45 PM Changeset in webkit [204669] by Chris Dumez
  • 10 edits
    2 moves
    1 add in trunk

Mark CanvasPath operations' parameters as mandatory when they should be
https://bugs.webkit.org/show_bug.cgi?id=161014

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/WebCore:

Mark CanvasPath operations as mandatory when they should be:

This patch moves the CanvasPath methods from CanvasRenderingContext2D
and Path2D to a new CanvasPath interface, to avoid duplication and
match the specification.

The parameters were correctly marked as mandatory in WebKit on
CanvasRenderingContext2D but not on Path2D.

Those parameters are correctly marked as mandatory in Chrome and Firefox.

No new tests, rebaselined existing test.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • html/canvas/CanvasPath.cpp: Renamed from Source/WebCore/html/canvas/CanvasPathMethods.cpp.

(WebCore::CanvasPath::closePath):
(WebCore::CanvasPath::moveTo):
(WebCore::CanvasPath::lineTo):
(WebCore::CanvasPath::quadraticCurveTo):
(WebCore::CanvasPath::bezierCurveTo):
(WebCore::CanvasPath::arcTo):
(WebCore::normalizeAngles):
(WebCore::CanvasPath::arc):
(WebCore::CanvasPath::ellipse):
(WebCore::CanvasPath::rect):

  • html/canvas/CanvasPath.h: Renamed from Source/WebCore/html/canvas/CanvasPathMethods.h.

(WebCore::CanvasPath::~CanvasPath):
(WebCore::CanvasPath::CanvasPath):
(WebCore::CanvasPath::hasInvertibleTransform):

  • html/canvas/CanvasPath.idl: Added.
  • html/canvas/CanvasRenderingContext2D.h:
  • html/canvas/CanvasRenderingContext2D.idl:
  • html/canvas/DOMPath.h:
  • html/canvas/DOMPath.idl:
5:11 PM Changeset in webkit [204668] by andersca@apple.com
  • 266 edits
    2 moves
    2 deletes in trunk/Source/WebKit2

Merge MessageDecoder and ArgumentDecoder into Decoder
https://bugs.webkit.org/show_bug.cgi?id=161019

Reviewed by Tim Horton.

  • DatabaseProcess/DatabaseProcess.cpp:
  • DatabaseProcess/DatabaseProcess.h:
  • DatabaseProcess/DatabaseToWebProcessConnection.cpp:
  • DatabaseProcess/DatabaseToWebProcessConnection.h:
  • DatabaseProcess/IndexedDB/WebIDBConnectionToClient.h:
  • NetworkProcess/CustomProtocols/CustomProtocolManager.h:
  • NetworkProcess/Downloads/DownloadID.h:
  • NetworkProcess/NetworkConnectionToWebProcess.cpp:
  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkProcess.cpp:
  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcessCreationParameters.cpp:
  • NetworkProcess/NetworkProcessCreationParameters.h:
  • NetworkProcess/NetworkResourceLoadParameters.cpp:
  • NetworkProcess/NetworkResourceLoadParameters.h:
  • NetworkProcess/NetworkResourceLoader.h:
  • Platform/IPC/ArgumentCoder.h:
  • Platform/IPC/ArgumentCoders.cpp:
  • Platform/IPC/ArgumentCoders.h:
  • Platform/IPC/ArgumentDecoder.cpp:
  • Platform/IPC/ArgumentDecoder.h:
  • Platform/IPC/Arguments.h:
  • Platform/IPC/Attachment.cpp:
  • Platform/IPC/Attachment.h:
  • Platform/IPC/Connection.cpp:
  • Platform/IPC/Connection.h:
  • Platform/IPC/DataReference.cpp:
  • Platform/IPC/DataReference.h:
  • Platform/IPC/Decoder.cpp: Renamed from Source/WebKit2/Platform/IPC/ArgumentDecoder.cpp.
  • Platform/IPC/Decoder.h: Renamed from Source/WebKit2/Platform/IPC/ArgumentDecoder.h.
  • Platform/IPC/HandleMessage.h:
  • Platform/IPC/MessageDecoder.cpp: Removed.
  • Platform/IPC/MessageDecoder.h: Removed.
  • Platform/IPC/MessageReceiver.h:
  • Platform/IPC/MessageReceiverMap.cpp:
  • Platform/IPC/MessageReceiverMap.h:
  • Platform/IPC/MessageRecorder.cpp:
  • Platform/IPC/MessageRecorder.h:
  • Platform/IPC/StringReference.cpp:
  • Platform/IPC/StringReference.h:
  • Platform/IPC/mac/ConnectionMac.mm:
  • Platform/IPC/mac/MachPort.h:
  • Platform/SharedMemory.h:
  • Platform/mac/SharedMemoryMac.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/PluginCreationParameters.cpp:
  • PluginProcess/PluginCreationParameters.h:
  • PluginProcess/PluginProcess.cpp:
  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp:
  • PluginProcess/WebProcessConnection.h:
  • Scripts/webkit/messages.py:
  • Shared/API/APIData.cpp:
  • Shared/API/APIData.h:
  • Shared/API/APIError.cpp:
  • Shared/API/APIError.h:
  • Shared/API/APIFrameHandle.cpp:
  • Shared/API/APIFrameHandle.h:
  • Shared/API/APIGeometry.cpp:
  • Shared/API/APIGeometry.h:
  • Shared/API/APINumber.h:
  • Shared/API/APIPageGroupHandle.cpp:
  • Shared/API/APIPageGroupHandle.h:
  • Shared/API/APIPageHandle.cpp:
  • Shared/API/APIPageHandle.h:
  • Shared/API/APIURL.h:
  • Shared/API/APIURLRequest.cpp:
  • Shared/API/APIURLRequest.h:
  • Shared/API/APIURLResponse.cpp:
  • Shared/API/APIURLResponse.h:
  • Shared/API/Cocoa/RemoteObjectInvocation.h:
  • Shared/API/Cocoa/RemoteObjectInvocation.mm:
  • Shared/API/Cocoa/RemoteObjectRegistry.h:
  • Shared/AssistedNodeInformation.cpp:
  • Shared/AssistedNodeInformation.h:
  • Shared/Authentication/AuthenticationManager.h:
  • Shared/ChildProcess.h:
  • Shared/Cocoa/DataDetectionResult.h:
  • Shared/Cocoa/DataDetectionResult.mm:
  • Shared/Cocoa/LoadParametersCocoa.mm:
  • Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
  • Shared/ContextMenuContextData.cpp:
  • Shared/ContextMenuContextData.h:
  • Shared/Databases/DatabaseProcessCreationParameters.cpp:
  • Shared/Databases/DatabaseProcessCreationParameters.h:
  • Shared/Databases/IndexedDB/WebIDBResult.cpp:
  • Shared/Databases/IndexedDB/WebIDBResult.h:
  • Shared/EditorState.cpp:
  • Shared/EditorState.h:
  • Shared/FontInfo.cpp:
  • Shared/FontInfo.h:
  • Shared/Gamepad/GamepadData.cpp:
  • Shared/Gamepad/GamepadData.h:
  • Shared/LayerTreeContext.cpp:
  • Shared/LayerTreeContext.h:
  • Shared/LoadParameters.cpp:
  • Shared/LoadParameters.h:
  • Shared/NavigationActionData.cpp:
  • Shared/NavigationActionData.h:
  • Shared/PlatformPopupMenuData.cpp:
  • Shared/PlatformPopupMenuData.h:
  • Shared/Plugins/NPIdentifierData.cpp:
  • Shared/Plugins/NPIdentifierData.h:
  • Shared/Plugins/NPObjectMessageReceiver.h:
  • Shared/Plugins/NPRemoteObjectMap.cpp:
  • Shared/Plugins/NPRemoteObjectMap.h:
  • Shared/Plugins/NPVariantData.cpp:
  • Shared/Plugins/NPVariantData.h:
  • Shared/Plugins/PluginProcessCreationParameters.cpp:
  • Shared/Plugins/PluginProcessCreationParameters.h:
  • Shared/PrintInfo.cpp:
  • Shared/PrintInfo.h:
  • Shared/SandboxExtension.h:
  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
  • Shared/SessionState.cpp:
  • Shared/SessionState.h:
  • Shared/ShareableBitmap.cpp:
  • Shared/ShareableBitmap.h:
  • Shared/ShareableResource.cpp:
  • Shared/ShareableResource.h:
  • Shared/StatisticsData.cpp:
  • Shared/StatisticsData.h:
  • Shared/UpdateInfo.cpp:
  • Shared/UpdateInfo.h:
  • Shared/UserData.cpp:
  • Shared/UserData.h:
  • Shared/VisibleContentRectUpdateInfo.cpp:
  • Shared/VisibleContentRectUpdateInfo.h:
  • Shared/WebBackForwardListItem.h:
  • Shared/WebCompiledContentExtensionData.cpp:
  • Shared/WebCompiledContentExtensionData.h:
  • Shared/WebConnection.h:
  • Shared/WebContextMenuItemData.cpp:
  • Shared/WebContextMenuItemData.h:
  • Shared/WebCoreArgumentCoders.cpp:
  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebEvent.cpp:
  • Shared/WebEvent.h:
  • Shared/WebGeolocationPosition.cpp:
  • Shared/WebGeolocationPosition.h:
  • Shared/WebHitTestResultData.cpp:
  • Shared/WebHitTestResultData.h:
  • Shared/WebKeyboardEvent.cpp:
  • Shared/WebMouseEvent.cpp:
  • Shared/WebNavigationDataStore.h:
  • Shared/WebPageCreationParameters.cpp:
  • Shared/WebPageCreationParameters.h:
  • Shared/WebPageGroupData.cpp:
  • Shared/WebPageGroupData.h:
  • Shared/WebPlatformTouchPoint.cpp:
  • Shared/WebPopupItem.cpp:
  • Shared/WebPopupItem.h:
  • Shared/WebPreferencesStore.cpp:
  • Shared/WebPreferencesStore.h:
  • Shared/WebProcessCreationParameters.cpp:
  • Shared/WebProcessCreationParameters.h:
  • Shared/WebTouchEvent.cpp:
  • Shared/WebUserContentControllerDataTypes.cpp:
  • Shared/WebUserContentControllerDataTypes.h:
  • Shared/WebWheelEvent.cpp:
  • Shared/WebsiteData/WebsiteData.cpp:
  • Shared/WebsiteData/WebsiteData.h:
  • Shared/cf/ArgumentCodersCF.cpp:
  • Shared/cf/ArgumentCodersCF.h:
  • Shared/ios/InteractionInformationAtPosition.h:
  • Shared/ios/InteractionInformationAtPosition.mm:
  • Shared/ios/QuickLookDocumentData.cpp:
  • Shared/ios/QuickLookDocumentData.h:
  • Shared/ios/WebPlatformTouchPointIOS.cpp:
  • Shared/ios/WebTouchEventIOS.cpp:
  • Shared/mac/ArgumentCodersMac.h:
  • Shared/mac/ArgumentCodersMac.mm:
  • Shared/mac/AttributedString.h:
  • Shared/mac/AttributedString.mm:
  • Shared/mac/ColorSpaceData.h:
  • Shared/mac/ColorSpaceData.mm:
  • Shared/mac/ObjCObjectGraph.h:
  • Shared/mac/ObjCObjectGraph.mm:
  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:
  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:
  • Shared/mac/SandboxExtensionMac.mm:
  • Shared/mac/SecItemRequestData.cpp:
  • Shared/mac/SecItemRequestData.h:
  • Shared/mac/SecItemResponseData.cpp:
  • Shared/mac/SecItemResponseData.h:
  • Shared/mac/SecItemShim.h:
  • Shared/mac/WebCoreArgumentCodersMac.mm:
  • Shared/mac/WebGestureEvent.cpp:
  • Shared/mac/WebGestureEvent.h:
  • Shared/mac/WebHitTestResultData.mm:
  • UIProcess/API/APIHitTestResult.h:
  • UIProcess/ApplePay/WebPaymentCoordinatorProxy.h:
  • UIProcess/Automation/WebAutomationSession.h:
  • UIProcess/ChildProcessProxy.cpp:
  • UIProcess/ChildProcessProxy.h:
  • UIProcess/Cocoa/WebPlaybackSessionManagerProxy.h:
  • UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h:
  • UIProcess/Databases/DatabaseProcessProxy.cpp:
  • UIProcess/Databases/DatabaseProcessProxy.h:
  • UIProcess/Downloads/DownloadProxy.h:
  • UIProcess/DrawingAreaProxy.h:
  • UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:
  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
  • UIProcess/Storage/StorageManager.h:
  • UIProcess/UserContent/WebUserContentControllerProxy.h:
  • UIProcess/VisitedLinkStore.h:
  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebFrameProxy.h:
  • UIProcess/WebFullScreenManagerProxy.h:
  • UIProcess/WebGeolocationManagerProxy.h:
  • UIProcess/WebIconDatabase.h:
  • UIProcess/WebInspectorProxy.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebProcessPool.cpp:
  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:
  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebResourceLoadStatisticsStore.h:
  • UIProcess/ios/SmartMagnificationController.h:
  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/mac/SecItemShimProxy.h:
  • UIProcess/mac/ViewGestureController.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/ApplePay/WebPaymentCoordinator.h:
  • WebProcess/Automation/WebAutomationSessionProxy.h:
  • WebProcess/Cookies/WebCookieManager.h:
  • WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h:
  • WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
  • WebProcess/Databases/WebToDatabaseProcessConnection.h:
  • WebProcess/FullScreen/WebFullScreenManager.cpp:
  • WebProcess/FullScreen/WebFullScreenManager.h:
  • WebProcess/Geolocation/WebGeolocationManager.h:
  • WebProcess/IconDatabase/WebIconDatabaseProxy.h:
  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/Network/NetworkProcessConnection.cpp:
  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Plugins/Plugin.cpp:
  • WebProcess/Plugins/Plugin.h:
  • WebProcess/Plugins/PluginProcessConnection.cpp:
  • WebProcess/Plugins/PluginProcessConnection.h:
  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:
  • WebProcess/Plugins/PluginProcessConnectionManager.h:
  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
  • WebProcess/Storage/StorageAreaMap.h:
  • WebProcess/UserContent/WebUserContentController.h:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/EventDispatcher.h:
  • WebProcess/WebPage/ViewGestureGeometryCollector.h:
  • WebProcess/WebPage/ViewUpdateDispatcher.h:
  • WebProcess/WebPage/VisitedLinkTableController.h:
  • WebProcess/WebPage/WebInspector.h:
  • WebProcess/WebPage/WebInspectorUI.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:
  • WebProcess/cocoa/WebPlaybackSessionManager.h:
  • WebProcess/cocoa/WebVideoFullscreenManager.h:
4:09 PM Changeset in webkit [204667] by Alan Bujtas
  • 7 edits in trunk/Source/WebCore

RenderObject::containingBlock() cleanup.
https://bugs.webkit.org/show_bug.cgi?id=161013

Reviewed by Simon Fraser.

Move ::containingBlockForAbsolutePosition and ::containingBlockForFixedPosition
to RenderElement after tightening containingBlock() callsites.

No change in functionality.

  • dom/Element.cpp:

(WebCore::layoutOverflowRectContainsAllDescendants):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::containingBlockForFixedPosition):
(WebCore::RenderElement::containingBlockForAbsolutePosition):

  • rendering/RenderElement.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleWillChange):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):
(WebCore::RenderObject::containingBlockForFixedPosition): Deleted.
(WebCore::RenderObject::containingBlockForAbsolutePosition): Deleted.

  • rendering/RenderObject.h:
3:55 PM Changeset in webkit [204666] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Update Xcode project.

  • WebKit2.xcodeproj/project.pbxproj:
3:52 PM Changeset in webkit [204665] by andersca@apple.com
  • 219 edits
    2 moves
    2 deletes in trunk/Source/WebKit2

Merge MessageEncoder and ArgumentEncoder into Encoder
https://bugs.webkit.org/show_bug.cgi?id=161016

Reviewed by Tim Horton.

  • DatabaseProcess/DatabaseToWebProcessConnection.cpp:

(WebKit::DatabaseToWebProcessConnection::didReceiveSyncMessage):

  • DatabaseProcess/DatabaseToWebProcessConnection.h:
  • NetworkProcess/Downloads/DownloadID.h:

(IPC::ArgumentCoder<WebKit::DownloadID>::encode):

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didReceiveSyncMessage):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode):

  • NetworkProcess/NetworkProcessCreationParameters.h:
  • NetworkProcess/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::encode):

  • NetworkProcess/NetworkResourceLoadParameters.h:
  • Platform/IPC/ArgumentCoder.h:

(IPC::ArgumentCoder::encode):

  • Platform/IPC/ArgumentCoders.cpp:

(IPC::ArgumentCoder<std::chrono::system_clock::time_point>::encode):
(IPC::ArgumentCoder<AtomicString>::encode):
(IPC::ArgumentCoder<CString>::encode):
(IPC::ArgumentCoder<String>::encode):
(IPC::ArgumentCoder<uuid_t>::encode):

  • Platform/IPC/ArgumentCoders.h:

(IPC::SimpleArgumentCoder::encode):
(IPC::ArgumentCoder<OptionSet<T>>::encode):
(IPC::ArgumentCoder<WTF::Optional<T>>::encode):

  • Platform/IPC/ArgumentEncoder.cpp:

(IPC::allocBuffer): Deleted.
(IPC::freeBuffer): Deleted.
(IPC::ArgumentEncoder::ArgumentEncoder): Deleted.
(IPC::ArgumentEncoder::~ArgumentEncoder): Deleted.
(IPC::roundUpToAlignment): Deleted.
(IPC::ArgumentEncoder::reserve): Deleted.
(IPC::ArgumentEncoder::grow): Deleted.
(IPC::ArgumentEncoder::encodeFixedLengthData): Deleted.
(IPC::ArgumentEncoder::encodeVariableLengthByteArray): Deleted.
(IPC::copyValueToBuffer): Deleted.
(IPC::ArgumentEncoder::encode): Deleted.
(IPC::ArgumentEncoder::addAttachment): Deleted.
(IPC::ArgumentEncoder::releaseAttachments): Deleted.

  • Platform/IPC/ArgumentEncoder.h:

(IPC::ArgumentEncoder::encodeEnum): Deleted.
(IPC::ArgumentEncoder::encode): Deleted.
(IPC::ArgumentEncoder::operator<<): Deleted.
(IPC::ArgumentEncoder::buffer): Deleted.
(IPC::ArgumentEncoder::bufferSize): Deleted.

  • Platform/IPC/Arguments.h:

(IPC::TupleCoder::encode):
(IPC::Arguments::encode):

  • Platform/IPC/Attachment.cpp:

(IPC::Attachment::encode):

  • Platform/IPC/Attachment.h:
  • Platform/IPC/Connection.cpp:

(IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
(IPC::Connection::createSyncMessageEncoder):
(IPC::Connection::sendMessage):
(IPC::Connection::sendSyncReply):
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::sendOutgoingMessages):
(IPC::Connection::dispatchSyncMessage):

  • Platform/IPC/Connection.h:

(IPC::Connection::send):
(IPC::Connection::sendSync):

  • Platform/IPC/DataReference.cpp:

(IPC::DataReference::encode):
(IPC::SharedBufferDataReference::encode):

  • Platform/IPC/DataReference.h:
  • Platform/IPC/Encoder.cpp: Renamed from Source/WebKit2/Platform/IPC/ArgumentEncoder.cpp.

(IPC::allocBuffer):
(IPC::freeBuffer):
(IPC::Encoder::Encoder):
(IPC::Encoder::~Encoder):
(IPC::Encoder::isSyncMessage):
(IPC::Encoder::shouldDispatchMessageWhenWaitingForSyncReply):
(IPC::Encoder::setIsSyncMessage):
(IPC::Encoder::setShouldDispatchMessageWhenWaitingForSyncReply):
(IPC::Encoder::setFullySynchronousModeForTesting):
(IPC::Encoder::wrapForTesting):
(IPC::roundUpToAlignment):
(IPC::Encoder::reserve):
(IPC::Encoder::encodeHeader):
(IPC::Encoder::grow):
(IPC::Encoder::encodeFixedLengthData):
(IPC::Encoder::encodeVariableLengthByteArray):
(IPC::copyValueToBuffer):
(IPC::Encoder::encode):
(IPC::Encoder::addAttachment):
(IPC::Encoder::releaseAttachments):

  • Platform/IPC/Encoder.h: Renamed from Source/WebKit2/Platform/IPC/ArgumentEncoder.h.
  • Platform/IPC/HandleMessage.h:

(IPC::handleMessage):
(IPC::handleMessageDelayed):

  • Platform/IPC/MessageEncoder.cpp: Removed.

(IPC::MessageEncoder::MessageEncoder): Deleted.
(IPC::MessageEncoder::~MessageEncoder): Deleted.
(IPC::MessageEncoder::encodeHeader): Deleted.
(IPC::MessageEncoder::isSyncMessage): Deleted.
(IPC::MessageEncoder::shouldDispatchMessageWhenWaitingForSyncReply): Deleted.
(IPC::MessageEncoder::setIsSyncMessage): Deleted.
(IPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply): Deleted.
(IPC::MessageEncoder::setFullySynchronousModeForTesting): Deleted.
(IPC::MessageEncoder::wrapForTesting): Deleted.

  • Platform/IPC/MessageEncoder.h: Removed.

(IPC::MessageEncoder::messageReceiverName): Deleted.
(IPC::MessageEncoder::messageName): Deleted.
(IPC::MessageEncoder::destinationID): Deleted.
(IPC::MessageEncoder::UUID): Deleted.

  • Platform/IPC/MessageReceiver.h:

(IPC::MessageReceiver::didReceiveSyncMessage):

  • Platform/IPC/MessageReceiverMap.cpp:

(IPC::MessageReceiverMap::dispatchSyncMessage):

  • Platform/IPC/MessageReceiverMap.h:
  • Platform/IPC/MessageRecorder.h:
  • Platform/IPC/MessageSender.cpp:

(IPC::MessageSender::sendMessage):

  • Platform/IPC/MessageSender.h:

(IPC::MessageSender::send):

  • Platform/IPC/StringReference.cpp:

(IPC::StringReference::encode):

  • Platform/IPC/StringReference.h:
  • Platform/IPC/mac/ConnectionMac.mm:

(IPC::Connection::open):
(IPC::Connection::sendOutgoingMessage):

  • Platform/IPC/mac/MachPort.h:

(IPC::MachPort::encode):

  • Platform/SharedMemory.h:
  • Platform/mac/SharedMemoryMac.cpp:

(WebKit::SharedMemory::Handle::encode):

  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/PluginCreationParameters.cpp:

(WebKit::PluginCreationParameters::encode):

  • PluginProcess/PluginCreationParameters.h:
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveSyncMessage):

  • PluginProcess/WebProcessConnection.h:
  • Scripts/webkit/messages.py:

(message_to_struct_declaration):
(forward_declarations_and_headers):
(generate_message_handler):
(headers_for_type): Deleted.

  • Shared/API/APIData.cpp:

(API::Data::encode):

  • Shared/API/APIData.h:
  • Shared/API/APIError.cpp:

(API::Error::encode):

  • Shared/API/APIError.h:
  • Shared/API/APIFrameHandle.cpp:

(API::FrameHandle::encode):

  • Shared/API/APIFrameHandle.h:
  • Shared/API/APIGeometry.cpp:

(API::Point::encode):
(API::Size::encode):
(API::Rect::encode):

  • Shared/API/APIGeometry.h:
  • Shared/API/APINumber.h:

(API::Number::encode):

  • Shared/API/APIPageGroupHandle.cpp:

(API::PageGroupHandle::encode):

  • Shared/API/APIPageGroupHandle.h:
  • Shared/API/APIPageHandle.cpp:

(API::PageHandle::encode):

  • Shared/API/APIPageHandle.h:
  • Shared/API/APIURL.h:

(API::URL::encode):

  • Shared/API/APIURLRequest.cpp:

(API::URLRequest::encode):

  • Shared/API/APIURLRequest.h:
  • Shared/API/APIURLResponse.cpp:

(API::URLResponse::encode):

  • Shared/API/APIURLResponse.h:
  • Shared/API/Cocoa/RemoteObjectInvocation.h:
  • Shared/API/Cocoa/RemoteObjectInvocation.mm:

(WebKit::RemoteObjectInvocation::encode):

  • Shared/AssistedNodeInformation.cpp:

(WebKit::OptionItem::encode):
(WebKit::AssistedNodeInformation::encode):

  • Shared/AssistedNodeInformation.h:
  • Shared/Cocoa/DataDetectionResult.h:
  • Shared/Cocoa/DataDetectionResult.mm:

(WebKit::DataDetectionResult::encode):

  • Shared/Cocoa/LoadParametersCocoa.mm:

(WebKit::LoadParameters::platformEncode):

  • Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:

(IPC::ArgumentCoder<WebCore::Payment>::encode):
(IPC::ArgumentCoder<WebCore::PaymentContact>::encode):
(IPC::ArgumentCoder<WebCore::PaymentMerchantSession>::encode):
(IPC::ArgumentCoder<WebCore::PaymentMethod>::encode):
(IPC::ArgumentCoder<PaymentRequest>::encode):
(IPC::ArgumentCoder<PaymentRequest::ContactFields>::encode):
(IPC::ArgumentCoder<PaymentRequest::LineItem>::encode):
(IPC::ArgumentCoder<PaymentRequest::MerchantCapabilities>::encode):
(IPC::ArgumentCoder<PaymentRequest::ShippingMethod>::encode):
(IPC::ArgumentCoder<PaymentRequest::TotalAndLineItems>::encode):

  • Shared/ContextMenuContextData.cpp:

(WebKit::ContextMenuContextData::encode):

  • Shared/ContextMenuContextData.h:
  • Shared/Databases/DatabaseProcessCreationParameters.cpp:

(WebKit::DatabaseProcessCreationParameters::encode):

  • Shared/Databases/DatabaseProcessCreationParameters.h:
  • Shared/Databases/IndexedDB/WebIDBResult.cpp:

(WebKit::WebIDBResult::encode):

  • Shared/Databases/IndexedDB/WebIDBResult.h:
  • Shared/EditorState.cpp:

(WebKit::EditorState::encode):
(WebKit::EditorState::PostLayoutData::encode):

  • Shared/EditorState.h:
  • Shared/FontInfo.cpp:

(WebKit::FontInfo::encode):

  • Shared/FontInfo.h:
  • Shared/Gamepad/GamepadData.cpp:

(WebKit::GamepadData::encode):

  • Shared/Gamepad/GamepadData.h:
  • Shared/LayerTreeContext.cpp:

(WebKit::LayerTreeContext::encode):

  • Shared/LayerTreeContext.h:
  • Shared/LoadParameters.cpp:

(WebKit::LoadParameters::encode):
(WebKit::LoadParameters::platformEncode):

  • Shared/LoadParameters.h:
  • Shared/NavigationActionData.cpp:

(WebKit::NavigationActionData::encode):

  • Shared/NavigationActionData.h:
  • Shared/PlatformPopupMenuData.cpp:

(WebKit::PlatformPopupMenuData::encode):

  • Shared/PlatformPopupMenuData.h:
  • Shared/Plugins/NPIdentifierData.cpp:

(WebKit::NPIdentifierData::encode):

  • Shared/Plugins/NPIdentifierData.h:
  • Shared/Plugins/NPObjectMessageReceiver.h:
  • Shared/Plugins/NPRemoteObjectMap.cpp:

(WebKit::NPRemoteObjectMap::didReceiveSyncMessage):

  • Shared/Plugins/NPRemoteObjectMap.h:
  • Shared/Plugins/NPVariantData.cpp:

(WebKit::NPVariantData::encode):

  • Shared/Plugins/NPVariantData.h:
  • Shared/Plugins/PluginProcessCreationParameters.cpp:

(WebKit::PluginProcessCreationParameters::encode):

  • Shared/Plugins/PluginProcessCreationParameters.h:
  • Shared/PrintInfo.cpp:

(WebKit::PrintInfo::encode):

  • Shared/PrintInfo.h:
  • Shared/SandboxExtension.h:

(WebKit::SandboxExtension::Handle::encode):
(WebKit::SandboxExtension::HandleArray::encode):

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(ArgumentCoder<ScrollingStateNode>::encode):
(ArgumentCoder<ScrollingStateScrollingNode>::encode):
(ArgumentCoder<ScrollingStateFrameScrollingNode>::encode):
(ArgumentCoder<ScrollingStateOverflowScrollingNode>::encode):
(ArgumentCoder<ScrollingStateFixedNode>::encode):
(ArgumentCoder<ScrollingStateStickyNode>::encode):
(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::encode):

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
  • Shared/SessionState.cpp:

(WebKit::HTTPBody::Element::encode):
(WebKit::HTTPBody::encode):
(WebKit::FrameState::encode):
(WebKit::PageState::encode):
(WebKit::BackForwardListItemState::encode):
(WebKit::BackForwardListState::encode):

  • Shared/SessionState.h:
  • Shared/ShareableBitmap.cpp:

(WebKit::ShareableBitmap::Handle::encode):

  • Shared/ShareableBitmap.h:
  • Shared/ShareableResource.cpp:

(WebKit::ShareableResource::Handle::encode):

  • Shared/ShareableResource.h:
  • Shared/StatisticsData.cpp:

(WebKit::StatisticsData::encode):

  • Shared/StatisticsData.h:
  • Shared/UpdateInfo.cpp:

(WebKit::UpdateInfo::encode):

  • Shared/UpdateInfo.h:
  • Shared/UserData.cpp:

(WebKit::UserData::encode):

  • Shared/UserData.h:
  • Shared/VisibleContentRectUpdateInfo.cpp:

(WebKit::VisibleContentRectUpdateInfo::encode):

  • Shared/VisibleContentRectUpdateInfo.h:
  • Shared/WebBackForwardListItem.h:
  • Shared/WebCompiledContentExtensionData.cpp:

(WebKit::WebCompiledContentExtensionData::encode):

  • Shared/WebCompiledContentExtensionData.h:
  • Shared/WebContextMenuItemData.cpp:

(WebKit::WebContextMenuItemData::encode):

  • Shared/WebContextMenuItemData.h:
  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<AffineTransform>::encode):
(IPC::ArgumentCoder<EventTrackingRegions>::encode):
(IPC::ArgumentCoder<TransformationMatrix>::encode):
(IPC::ArgumentCoder<LinearTimingFunction>::encode):
(IPC::ArgumentCoder<CubicBezierTimingFunction>::encode):
(IPC::ArgumentCoder<StepsTimingFunction>::encode):
(IPC::ArgumentCoder<SpringTimingFunction>::encode):
(IPC::ArgumentCoder<FloatPoint>::encode):
(IPC::ArgumentCoder<FloatPoint3D>::encode):
(IPC::ArgumentCoder<FloatRect>::encode):
(IPC::ArgumentCoder<FloatSize>::encode):
(IPC::ArgumentCoder<FloatRoundedRect>::encode):
(IPC::ArgumentCoder<FloatQuad>::encode):
(IPC::ArgumentCoder<ViewportArguments>::encode):
(IPC::ArgumentCoder<IntPoint>::encode):
(IPC::ArgumentCoder<IntRect>::encode):
(IPC::ArgumentCoder<IntSize>::encode):
(IPC::pathEncodeApplierFunction):
(IPC::ArgumentCoder<Path>::encode):
(IPC::ArgumentCoder<RecentSearch>::encode):
(IPC::ArgumentCoder<Region::Span>::encode):
(IPC::ArgumentCoder<Region>::encode):
(IPC::ArgumentCoder<Length>::encode):
(IPC::ArgumentCoder<ViewportAttributes>::encode):
(IPC::ArgumentCoder<MimeClassInfo>::encode):
(IPC::ArgumentCoder<PluginInfo>::encode):
(IPC::ArgumentCoder<AuthenticationChallenge>::encode):
(IPC::ArgumentCoder<ProtectionSpace>::encode):
(IPC::ArgumentCoder<Credential>::encode):
(IPC::encodeImage):
(IPC::encodeOptionalImage):
(IPC::ArgumentCoder<Cursor>::encode):
(IPC::ArgumentCoder<ResourceRequest>::encode):
(IPC::ArgumentCoder<ResourceError>::encode):
(IPC::ArgumentCoder<SelectionRect>::encode):
(IPC::ArgumentCoder<WindowFeatures>::encode):
(IPC::ArgumentCoder<Color>::encode):
(IPC::ArgumentCoder<CompositionUnderline>::encode):
(IPC::ArgumentCoder<Cookie>::encode):
(IPC::ArgumentCoder<DatabaseDetails>::encode):
(IPC::ArgumentCoder<Highlight>::encode):
(IPC::encodeSharedBuffer):
(IPC::ArgumentCoder<PasteboardWebContent>::encode):
(IPC::ArgumentCoder<PasteboardImage>::encode):
(IPC::ArgumentCoder<DictationAlternative>::encode):
(IPC::ArgumentCoder<FileChooserSettings>::encode):
(IPC::ArgumentCoder<GrammarDetail>::encode):
(IPC::ArgumentCoder<TextCheckingRequestData>::encode):
(IPC::ArgumentCoder<TextCheckingResult>::encode):
(IPC::ArgumentCoder<URL>::encode):
(IPC::ArgumentCoder<UserStyleSheet>::encode):
(IPC::ArgumentCoder<MediaSessionMetadata>::encode):
(IPC::ArgumentCoder<UserScript>::encode):
(IPC::ArgumentCoder<ScrollableAreaParameters>::encode):
(IPC::ArgumentCoder<FixedPositionViewportConstraints>::encode):
(IPC::ArgumentCoder<StickyPositionViewportConstraints>::encode):
(IPC::ArgumentCoder<FilterOperation>::encode):
(IPC::ArgumentCoder<FilterOperations>::encode):
(IPC::ArgumentCoder<SessionID>::encode):
(IPC::ArgumentCoder<BlobPart>::encode):
(IPC::ArgumentCoder<TextIndicatorData>::encode):
(IPC::ArgumentCoder<MediaPlaybackTargetContext>::encode):
(IPC::ArgumentCoder<DictionaryPopupInfo>::encode):
(IPC::ArgumentCoder<ExceptionDetails>::encode):
(IPC::ArgumentCoder<ResourceLoadStatistics>::encode):

  • Shared/WebCoreArgumentCoders.h:
  • Shared/WebEvent.cpp:

(WebKit::WebEvent::encode):

  • Shared/WebEvent.h:
  • Shared/WebGeolocationPosition.cpp:

(WebKit::WebGeolocationPosition::Data::encode):

  • Shared/WebGeolocationPosition.h:
  • Shared/WebHitTestResultData.cpp:

(WebKit::WebHitTestResultData::encode):
(WebKit::WebHitTestResultData::platformEncode):

  • Shared/WebHitTestResultData.h:
  • Shared/WebKeyboardEvent.cpp:

(WebKit::WebKeyboardEvent::encode):

  • Shared/WebMouseEvent.cpp:

(WebKit::WebMouseEvent::encode):

  • Shared/WebNavigationDataStore.h:

(WebKit::WebNavigationDataStore::encode):

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):

  • Shared/WebPageCreationParameters.h:
  • Shared/WebPageGroupData.cpp:

(WebKit::WebPageGroupData::encode):

  • Shared/WebPageGroupData.h:
  • Shared/WebPlatformTouchPoint.cpp:

(WebKit::WebPlatformTouchPoint::encode):

  • Shared/WebPopupItem.cpp:

(WebKit::WebPopupItem::encode):

  • Shared/WebPopupItem.h:
  • Shared/WebPreferencesStore.cpp:

(WebKit::WebPreferencesStore::Value::encode):
(WebKit::WebPreferencesStore::encode):

  • Shared/WebPreferencesStore.h:
  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode):

  • Shared/WebProcessCreationParameters.h:
  • Shared/WebTouchEvent.cpp:

(WebKit::WebTouchEvent::encode):

  • Shared/WebUserContentControllerDataTypes.cpp:

(WebKit::WebUserScriptData::encode):
(WebKit::WebUserStyleSheetData::encode):
(WebKit::WebScriptMessageHandlerData::encode):

  • Shared/WebUserContentControllerDataTypes.h:
  • Shared/WebWheelEvent.cpp:

(WebKit::WebWheelEvent::encode):

  • Shared/WebsiteData/WebsiteData.cpp:

(WebKit::WebsiteData::Entry::encode):
(WebKit::WebsiteData::encode):

  • Shared/WebsiteData/WebsiteData.h:
  • Shared/cf/ArgumentCodersCF.cpp:

(IPC::encode):

  • Shared/cf/ArgumentCodersCF.h:
  • Shared/ios/InteractionInformationAtPosition.h:
  • Shared/ios/InteractionInformationAtPosition.mm:

(WebKit::InteractionInformationAtPosition::encode):

  • Shared/ios/QuickLookDocumentData.cpp:

(WebKit::QuickLookDocumentData::encode):

  • Shared/ios/QuickLookDocumentData.h:
  • Shared/ios/WebPlatformTouchPointIOS.cpp:

(WebKit::WebPlatformTouchPoint::encode):

  • Shared/ios/WebTouchEventIOS.cpp:

(WebKit::WebTouchEvent::encode):

  • Shared/mac/ArgumentCodersMac.h:
  • Shared/mac/ArgumentCodersMac.mm:

(IPC::encode):

  • Shared/mac/AttributedString.h:
  • Shared/mac/AttributedString.mm:

(WebKit::AttributedString::encode):

  • Shared/mac/ColorSpaceData.h:
  • Shared/mac/ColorSpaceData.mm:

(WebKit::ColorSpaceData::encode):

  • Shared/mac/ObjCObjectGraph.h:
  • Shared/mac/ObjCObjectGraph.mm:

(WebKit::ObjCObjectGraph::encode):

  • Shared/mac/RemoteLayerBackingStore.h:
  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::encode):

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::encode):

  • Shared/mac/SandboxExtensionMac.mm:

(WebKit::SandboxExtension::Handle::encode):
(WebKit::SandboxExtension::HandleArray::encode):

  • Shared/mac/SecItemRequestData.cpp:

(WebKit::SecItemRequestData::encode):

  • Shared/mac/SecItemRequestData.h:
  • Shared/mac/SecItemResponseData.cpp:

(WebKit::SecItemResponseData::encode):

  • Shared/mac/SecItemResponseData.h:
  • Shared/mac/WebCoreArgumentCodersMac.mm:

(IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
(IPC::ArgumentCoder<CertificateInfo>::encode):
(IPC::encodeNSError):
(IPC::ArgumentCoder<ResourceError>::encodePlatformData):
(IPC::ArgumentCoder<ProtectionSpace>::encodePlatformData):
(IPC::ArgumentCoder<Credential>::encodePlatformData):
(IPC::ArgumentCoder<MachSendRight>::encode):
(IPC::ArgumentCoder<KeypressCommand>::encode):
(IPC::ArgumentCoder<ContentFilterUnblockHandler>::encode):
(IPC::ArgumentCoder<MediaPlaybackTargetContext>::encodePlatformData):

  • Shared/mac/WebGestureEvent.cpp:

(WebKit::WebGestureEvent::encode):

  • Shared/mac/WebGestureEvent.h:
  • Shared/mac/WebHitTestResultData.mm:

(WebKit::WebHitTestResultData::platformEncode):

  • UIProcess/API/APIHitTestResult.h:
  • UIProcess/ApplePay/WebPaymentCoordinatorProxy.h:
  • UIProcess/ChildProcessProxy.cpp:

(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::dispatchSyncMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):

  • UIProcess/ChildProcessProxy.h:

(WebKit::ChildProcessProxy::send):

  • UIProcess/Downloads/DownloadProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveSyncMessage):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Notifications/WebNotification.cpp:
  • UIProcess/Notifications/WebNotification.h:
  • UIProcess/Plugins/PluginProcessManager.h:
  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
  • UIProcess/Storage/StorageManager.h:
  • UIProcess/WebFullScreenManagerProxy.h:
  • UIProcess/WebIconDatabase.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::sendMessage):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::dispatchSyncMessage):

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage):

  • UIProcess/WebProcessProxy.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveSyncMessage):

  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Plugins/Plugin.cpp:

(WebKit::Plugin::Parameters::encode):

  • WebProcess/Plugins/Plugin.h:
  • WebProcess/Plugins/PluginProcessConnection.cpp:

(WebKit::PluginProcessConnection::didReceiveSyncMessage):

  • WebProcess/Plugins/PluginProcessConnection.h:
  • WebProcess/Plugins/PluginProcessConnectionManager.cpp:
  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.h:
  • WebProcess/Scrolling/RemoteScrollingCoordinator.mm:
  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didReceiveSyncMessage):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
  • WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:

(WebKit::PlatformCAAnimationRemote::KeyframeValue::encode):
(WebKit::PlatformCAAnimationRemote::Properties::encode):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
(WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::create):
(WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::BackingStoreFlusher):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveSyncMessage):

  • WebProcess/WebProcess.h:
3:52 PM Changeset in webkit [204664] by dino@apple.com
  • 6 edits
    1 add in trunk

Implement preferLowPowerToHighPerformance for WebGL
https://bugs.webkit.org/show_bug.cgi?id=161017
<rdar://problem/26819135>

Reviewed by Myles Maxfield.

.:

A manual test that creates contexts with and without preferLowPowerToHighPerformance
to see what is used. This has to be manual because it depends on the hardware
configuration, and we don't have a way to detect it up-front. Also, if the
code was failing, it would be the same result as on a single GPU system.

  • ManualTests/webgl-preferLowPowerToHighPerformance.html: Added.

Source/WebCore:

Implement preferLowPowerToHighPerformance on macOS by
passing the correct CGL attribute when creating the
pixel format.

  • bindings/js/JSHTMLCanvasElementCustom.cpp:

(WebCore::get3DContextAttributes):

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::setPixelFormat):
(WebCore::GraphicsContext3D::GraphicsContext3D):

LayoutTests:

Now that we implement preferLowPowerToHighPerformance we can
retain its value in the context creation attributes object.

  • fast/canvas/webgl/context-creation-attributes-expected.txt:
3:49 PM Changeset in webkit [204663] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

Make custom Error properties (line, column, sourceURL) configurable and writable
https://bugs.webkit.org/show_bug.cgi?id=160984
<rdar://problem/27905979>

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2016-08-19
Reviewed by Saam Barati.

JSTests:

  • stress/native-error-properties.js: Added.

(assert):
(shouldNotThrow):

(checkEmptyErrorPropertiesDescriptors):
(checkNonEmptyErrorPropertiesDescriptors):
The spec only describes the "message" property, so
ensure it has the right descriptor attributes.

(checkErrorPropertiesWritable):
Ensure common error property names are writable.
In strict mode this would have thrown an exception
if they were readonly.

Source/JavaScriptCore:

  • runtime/Error.cpp:

(JSC::addErrorInfoAndGetBytecodeOffset):
(JSC::addErrorInfo):

3:44 PM Changeset in webkit [204662] by Chris Dumez
  • 3 edits in trunk/LayoutTests/imported/w3c

Re-sync html/dom/interfaces.html web-platform-test from upstream
https://bugs.webkit.org/show_bug.cgi?id=161012

Reviewed by Ryosuke Niwa.

Re-sync html/dom/interfaces.html web-platform-test from upstream.

  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces.html:
3:42 PM Changeset in webkit [204661] by Joseph Pecoraro
  • 10 edits
    5 deletes in trunk/Source

Remove empty files and empty namespace blocks
https://bugs.webkit.org/show_bug.cgi?id=160990

Reviewed by Alex Christensen.

  • CMakeLists.txt:

Source/JavaScriptCore:

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/ValueProfile.cpp: Removed.
  • runtime/WatchdogMac.cpp: Removed.
  • runtime/WatchdogNone.cpp: Removed.
  • runtime/StringIteratorPrototype.cpp:

Remove empty namespace block.

  • runtime/JSDestructibleObject.h:

Drive-by add missing copyright.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMAllInOne.cpp:
  • dom/MessagePortChannel.cpp: Removed.
  • page/DatabaseProvider.h:
  • platform/mock/mediasource/MockTracks.cpp: Removed.
3:24 PM Changeset in webkit [204660] by ap@apple.com
  • 2 edits in trunk/Tools

Build fix for non-USE_SIM_SERVICE_CONTEXT builds

  • LayoutTestRelay/LayoutTestRelay/main.m: (main):
3:13 PM Changeset in webkit [204659] by Simon Fraser
  • 7 edits in trunk/Tools

REGRESSION (r204477): Running LayoutTests on ios-simulator became ~15 minutes slower
https://bugs.webkit.org/show_bug.cgi?id=160985

Reviewed by Alexey Proskuryakov.

r204477 removed @memoized on a couple of ios.py functions, causing them to instantiate
a Simulator() on every call, which causes 'xcrun simctl list' to run. The functions
must not be @memoized, because their return value depends on the value of simulator_device_type().

Fix by adding some global state in simulator.py that tracks the created devices
in a worker number -> Device dictionary. Explicitly create devices in _create_simulators(),
and delete them in clean_up_test_run().

Also explicitly called 'xcrun simctl shutdown' to shut down devices, since it seems
that killing the Simulator apps isn't enough.

Simulator tracks the devices in a global dictionary, since state needs to persist
across different instances of IOSSimulatorPort.

Annoyingly, the "Command line:" dumping tried to access a device before we'd done
any setup. Rather than implicitly creating a device here (which the old code did),
override the more clearly named driver_cmd_line_for_logging() in IOSSimulatorPort
and set flag to say that device_id_for_worker_number() doesn't need to return a real
device id.

  • Scripts/webkitpy/layout_tests/views/printing.py:

(print_options):
(Printer.print_config):

  • Scripts/webkitpy/port/base.py:

(Port.driver_cmd_line_for_logging):
(Port.driver_cmd_line): Deleted.

  • Scripts/webkitpy/port/driver.py:

(IOSSimulatorDriver.cmd_line):

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.init):
(IOSSimulatorPort.driver_cmd_line_for_logging):
(IOSSimulatorPort._create_simulators):
(IOSSimulatorPort.setup_test_run):
(IOSSimulatorPort.clean_up_test_run):
(IOSSimulatorPort._create_device):
(IOSSimulatorPort):
(IOSSimulatorPort._remove_device):
(IOSSimulatorPort._testing_device):
(IOSSimulatorPort.device_id_for_worker_number):
(IOSSimulatorPort._set_device_class): Deleted.
(IOSSimulatorPort.testing_device): Deleted.

  • Scripts/webkitpy/port/port_testcase.py:

(PortTestCase.test_driver_cmd_line):

  • Scripts/webkitpy/xcode/simulator.py:

(Device.shutdown):
(Device.delete):
(Device.reset):
(Simulator.create_device):
(Simulator.remove_device):
(Simulator.device_number):
(Simulator.device_state_description):
(Simulator.wait_until_device_is_in_state):

3:13 PM Changeset in webkit [204658] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

Addressing post-review comments after r204592
https://bugs.webkit.org/show_bug.cgi?id=160895

Unreviewed.

No new tests because there is no behavior change.

  • page/cocoa/ResourceUsageOverlayCocoa.mm:

(WebCore::showText):

  • platform/graphics/ca/PlatformCALayer.cpp:

(WebCore::PlatformCALayer::drawTextAtPoint):

  • platform/ios/LegacyTileCache.mm:

(WebCore::LegacyTileCache::drawLayer):

3:09 PM Changeset in webkit [204657] by Ryan Haddad
  • 2 edits
    1 add in branches/safari-602.1.50.1-branch/LayoutTests

Test gardening for rdar://problem/27595142.

3:03 PM Changeset in webkit [204656] by ap@apple.com
  • 4 edits in trunk/Tools

Adopt SimServiceContext in LayoutTestRelay
https://bugs.webkit.org/show_bug.cgi?id=161000
<rdar://problem/25765594>

Reviewed by Daniel Bates.

  • LayoutTestRelay/LayoutTestRelay/CoreSimulatorSPI.h:
  • LayoutTestRelay/LayoutTestRelay/main.m:
2:55 PM Changeset in webkit [204655] by Ryan Haddad
  • 2 edits in trunk/Source/WebCore

Attempt to fix the Windows build after r204652.

Unreviewed build fix.

  • dom/DOMAllInOne.cpp:
2:47 PM Changeset in webkit [204654] by mmaxfield@apple.com
  • 8 edits in trunk/Source/WebCore

Migrate from ints to unsigneds in a few more places in rendering code
https://bugs.webkit.org/show_bug.cgi?id=161006

Reviewed by Alex Christensen.

No new tests because there is no behavior change.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawBidiText):

  • platform/mock/MockRealtimeVideoSource.cpp:

(WebCore::MockRealtimeVideoSource::drawText):

  • platform/text/BidiResolver.h:

(WebCore::BidiCharacterRun::BidiCharacterRun):
(WebCore::BidiCharacterRun::start):
(WebCore::BidiCharacterRun::stop):

  • rendering/BidiRun.cpp:

(WebCore::BidiRun::BidiRun):

  • rendering/BidiRun.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::setLogicalWidthForTextRun):
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
(WebCore::findFirstTrailingSpace):
(WebCore::RenderBlockFlow::handleTrailingSpaces):

  • rendering/line/BreakingContext.h:
2:40 PM Changeset in webkit [204653] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

Migrate RenderText::stringView() to unsigneds
https://bugs.webkit.org/show_bug.cgi?id=161005

Reviewed by Alex Christensen.

No new tests because there is no behavior change.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):

  • rendering/RenderText.cpp:

(WebCore::RenderText::stringView):

  • rendering/RenderText.h:
2:02 PM Changeset in webkit [204652] by rniwa@webkit.org
  • 10 edits
    2 moves in trunk/Source/WebCore

Rename LifecycleCallback to CustomElementReaction
https://bugs.webkit.org/show_bug.cgi?id=160991

Reviewed by Chris Dumez.

Renamed LifecycleCallbackQueue and CustomElementLifecycleProcessingStack
to CustomElementReactionQueue and CustomElementReactionStack per the latest spec:
https://html.spec.whatwg.org/#custom-element-reactions

No new tests since this is just a rename of classes which are not exposed to the Web.

  • CMakeLists.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCustomElementsRegistryCustom.cpp:

(WebCore::getCallback): Renamed from getLifecycleCallback.
(WebCore::JSCustomElementsRegistry::define):
(WebCore::getLifecycleCallback): Deleted.

  • bindings/js/JSMainThreadExecState.h:

(WebCore::JSMainThreadNullState):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSTestObj.cpp: Rebaselined.
  • bindings/scripts/test/TestObj.idl:
  • dom/CustomElementReactionQueue.cpp: Moved from Source/WebCore/dom/LifecycleCallbackQueue.cpp.

(WebCore::CustomElementReactionQueueItem::CustomElementReactionQueueItem):
(WebCore::CustomElementReactionQueue::CustomElementReactionQueue):
(WebCore::CustomElementReactionQueue::~CustomElementReactionQueue):
(WebCore::CustomElementReactionQueue::enqueueElementUpgrade):
(WebCore::CustomElementReactionQueue::enqueueConnectedCallbackIfNeeded):
(WebCore::CustomElementReactionQueue::enqueueDisconnectedCallbackIfNeeded):
(WebCore::CustomElementReactionQueue::enqueueAttributeChangedCallbackIfNeeded):
(WebCore::CustomElementReactionQueue::invokeAll):
(WebCore::CustomElementReactionStack::ensureCurrentQueue):
(WebCore::CustomElementReactionStack::processQueue):

  • dom/CustomElementReactionQueue.h: Moved from Source/WebCore/dom/LifecycleCallbackQueue.h.

(WebCore::CustomElementReactionStack::CustomElementReactionStack):
(WebCore::CustomElementReactionStack::~CustomElementReactionStack):
(WebCore::CustomElementReactionStack::hasCurrentProcessingStack):

  • dom/Document.cpp:

(WebCore::createFallbackHTMLElement):

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):
(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):

1:40 PM Changeset in webkit [204651] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Rebaseline imported/w3c/web-platform-tests/html/semantics/interfaces.html for ios-simulator after r204647.

Unreviewed test gardening.

  • platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/interfaces-expected.txt:
1:33 PM Changeset in webkit [204650] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Marking editing/deleting/delete-empty-line-breaks-at-end-of-textarea.html as flaky on El Capitan.
https://bugs.webkit.org/show_bug.cgi?id=160782

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
1:15 PM Changeset in webkit [204649] by Lucas Forschler
  • 2 edits in trunk/Tools

Remove Yosemite Leaks bot after http://trac.webkit.org/projects/webkit/changeset/204629

Reviewed by Kocsen Chung.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:

(WebKitBuildbot):

12:44 PM Changeset in webkit [204648] by Chris Dumez
  • 9 edits
    7 deletes in trunk

Attr.prefix / Element.prefix attribute should be readonly
https://bugs.webkit.org/show_bug.cgi?id=160998

Reviewed by Daniel Bates.

LayoutTests/imported/w3c:

Rebaseline W3C test now that more checks are passing.

  • web-platform-tests/dom/interfaces-expected.txt:

Source/WebCore:

Attr.prefix / Element.prefix attribute should be readonly:

Firefox and Chrome agree with the specification.

No new tests, rebaselined existing test.

  • dom/Attr.idl:
  • dom/Element.idl:

LayoutTests:

Update existing tests to reflect behavior change and drop a few
outdated tests.

  • fast/dom/Element/prefix-setter-exception-expected.txt: Removed.
  • fast/dom/Element/prefix-setter-exception.html: Removed.
  • fast/dom/Element/setAttributeNode-case-insensitivity.html:
  • fast/dom/bad-href-attribute-expected.txt: Removed.
  • fast/dom/bad-href-attribute.html: Removed.
  • fast/dom/node-prefix-setter-namespace-exception-expected.txt: Removed.
  • fast/dom/node-prefix-setter-namespace-exception.html: Removed.
  • fast/dom/script-tests/node-prefix-setter-namespace-exception.js: Removed.
  • svg/custom/xlink-prefix-generation-in-attributes-expected.txt:
  • svg/custom/xlink-prefix-generation-in-attributes.html:
12:33 PM Changeset in webkit [204647] by Chris Dumez
  • 4 edits in trunk

<command> should be an HTMLUnknownElement and <basefont> should be an HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=161004

Reviewed by Daniel Bates.

LayoutTests/imported/w3c:

Rebaseline a W3C test now that more checks are passing.

  • web-platform-tests/html/semantics/interfaces-expected.txt:

Source/WebCore:

<command> should be an HTMLUnknownElement and <basefont> should be an HTMLElement as per:

<basefont> is already an HTMLElement in Firefox and Chrome. <command> is an
HTMLUnknownElement in Firefox but an HTMLElement in Chrome.

No new tests, rebaselined existing test.

  • html/HTMLTagNames.in:
12:33 PM Changeset in webkit [204646] by Nikita Vasilyev
  • 1 edit
    1 add in trunk/Source/WebInspectorUI

Web Inspector: Make an icon for Code Coverage Profiler
https://bugs.webkit.org/show_bug.cgi?id=160872
<rdar://problem/27855650>

Reviewed by Joseph Pecoraro.

Add a "C" icon, similar to the existing "T" (Type Profiler) icon.
"C" can stand for Code Coverage or Control Flow.

  • UserInterface/Images/NavigationItemCodeCoverage.svg: Added.
12:23 PM Changeset in webkit [204645] by n_wang@apple.com
  • 5 edits in trunk

AX: iOS, Wrong axLabel on static text if heading has multiple children
https://bugs.webkit.org/show_bug.cgi?id=160981

Reviewed by Chris Fleizach.

Source/WebCore:

Headings are using textUnderElement to compute the accessibilityLabel on iOS, so normally it's
the concatenation of all the children's accessibilityLabel. Therefore, we shouldn't use accessibilityLabel
to check for user defined text on headings. Instead, baseAccessibilityDescription will return the
alternate text we want.

Changes are covered in the modified test.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper _accessibilityTraitsFromAncestors]):

LayoutTests:

  • accessibility/ios-simulator/heading-with-aria-label-expected.txt:
  • accessibility/ios-simulator/heading-with-aria-label.html:
12:12 PM WebKitGTK/Gardening/Calendar edited by clopez@igalia.com
(diff)
12:07 PM Changeset in webkit [204644] by clopez@igalia.com
  • 7 edits
    5 adds in trunk/LayoutTests

[GTK] Gardening: Layout tests expectations updates and test rebaselines.

Unreviewed.

LayoutTests/imported/w3c:

The test below contained wrong results (FAIL strings instead of PASS).
There are many more. I'm only updating this 3 ones because they are passing
on the GTK+ port, but the tooling gives Failures due to the wrong expectation
files. Reported https://bugs.webkit.org/show_bug.cgi?id=161003 regarding this.

  • web-platform-tests/XMLHttpRequest/send-entity-body-empty-expected.txt:
  • web-platform-tests/XMLHttpRequest/send-entity-body-none-expected.txt:
  • web-platform-tests/XMLHttpRequest/setrequestheader-content-type-expected.txt:

LayoutTests:

  • TestExpectations: Mark as failing 3 tests from imported/w3c/web-platform-tests/XMLHttpRequest that had wrong results.
  • platform/gtk/TestExpectations: Update list for imported/w3c/web-platform-tests/XMLHttpRequest and merge repeated results.
  • platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Added. Rebaseline after r201449 (updated version of libicu).
  • platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Added. Rebaseline after r201449 (updated version of libicu).
  • platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Added. Rebaseline after r201449 (updated version of libicu).
  • platform/gtk/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Added. Rebaseline after r201449 (updated version of libicu).
11:58 AM Changeset in webkit [204643] by ap@apple.com
  • 2 edits in trunk/Tools

Partial revert of r203811 - this key is not needed.

  • LayoutTestRelay/LayoutTestRelay/LTRelayController.m: (-[LTRelayController installApp]):
11:41 AM Changeset in webkit [204642] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebInspectorUI

Web Inspector: Console log counter on the dashboard should be better at displaying large numbers
https://bugs.webkit.org/show_bug.cgi?id=160054

Patch by Devin Rousso <Devin Rousso> on 2016-08-19
Reviewed by Matt Baker.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Base/Utilities.js:

(Number.abbreviate):
Add logic for formatting a number as "#K", "#M", and "#B" when it is very large.

  • UserInterface/Views/DefaultDashboardView.js:

(WebInspector.DefaultDashboardView.prototype._updateDisplay):
(WebInspector.DefaultDashboardView.prototype._formatPossibleLargeNumber): Deleted.
(WebInspector.DefaultDashboardView.prototype._setConsoleItemValue):

11:30 AM Changeset in webkit [204641] by commit-queue@webkit.org
  • 11 edits
    2 adds
    3 deletes in trunk

Resource Timing: Make PerformanceEntryList a sequence as per spec
https://bugs.webkit.org/show_bug.cgi?id=160963

Patch by Johan K. Jensen <johan_jensen@apple.com> on 2016-08-19
Reviewed by Alex Christensen.

Source/WebCore:

Change PerformanceEntryList to be a sequence of PerformanceEntry instead of an object.

Test: http/tests/performance/performance-resource-timing-entries-iterable.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • PlatformGTK.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorGObject.pm:

Remove references to {JS,}PerformanceEntryList.{cpp,h,idl}.

  • page/Performance.cpp:

(WebCore::Performance::getEntries):
(WebCore::Performance::getEntriesByType):
(WebCore::Performance::getEntriesByName):

  • page/Performance.h:

Methods now operate on a Vector of PerformanceEntry.

  • page/Performance.idl:

Typedef PerformanceEntryList as a sequence of PerformanceEntry.

  • page/PerformanceEntryList.cpp: Removed.

(WebCore::PerformanceEntryList::PerformanceEntryList): Deleted.
(WebCore::PerformanceEntryList::~PerformanceEntryList): Deleted.
(WebCore::PerformanceEntryList::length): Deleted.
(WebCore::PerformanceEntryList::item): Deleted.
(WebCore::PerformanceEntryList::append): Deleted.
(WebCore::PerformanceEntryList::appendAll): Deleted.
(WebCore::PerformanceEntryList::sort): Deleted.

  • page/PerformanceEntryList.h: Removed.

(WebCore::PerformanceEntryList::create): Deleted.

  • page/PerformanceEntryList.idl: Removed.

LayoutTests:

Testing that PerformanceEntryList (window.performance.getEntries()) is iterable.

  • http/tests/performance/performance-resource-timing-entries-iterable-expected.txt: Added.
  • http/tests/performance/performance-resource-timing-entries-iterable.html: Added.
11:24 AM Changeset in webkit [204640] by dbates@webkit.org
  • 3 edits in trunk/Tools

Another attempt to fix the iOS 9.3 build

Define WK_EMPTY_, WK_NOT_, and WK_NOT_YES.

  • DumpRenderTree/mac/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/Base.xcconfig:
11:24 AM Changeset in webkit [204639] by Ryan Haddad
  • 2 edits
    1 add in branches/safari-602.1.50.0-branch/LayoutTests

Test gardening for rdar://problem/27595142.

11:21 AM Changeset in webkit [204638] by eric.carlson@apple.com
  • 3 edits in trunk/Source/WebCore

[Mac] fix PiP context menu typos
https://bugs.webkit.org/show_bug.cgi?id=160999
<rdar://problem/27885070>

Reviewed by Jer Noble.

  • English.lproj/Localizable.strings: "Picture-in-Picture" -> "Picture in Picture".
  • platform/LocalizedStrings.cpp:

(WebCore::contextMenuItemTagEnterVideoEnhancedFullscreen): Ditto.
(WebCore::contextMenuItemTagExitVideoEnhancedFullscreen): Ditto.

11:10 AM Changeset in webkit [204637] by Simon Fraser
  • 33 edits in trunk/Source

Rename didLayout(LayoutMilestones) to didReachLayoutMilestone(), and related WK2 functions
https://bugs.webkit.org/show_bug.cgi?id=160923

Reviewed by Tim Horton.

Source/WebCore:

didLayout(LayoutMilestones) -> didReachLayoutMilestone(LayoutMilestones)
dispatchDidLayout(LayoutMilestones) -> dispatchDidReachLayoutMilestone(LayoutMilestones)

  • dom/Document.cpp:

(WebCore::Document::setVisualUpdatesAllowed):

  • loader/EmptyClients.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::didReachLayoutMilestone):
(WebCore::FrameLoader::didLayout): Deleted.

  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • page/FrameView.cpp:

(WebCore::FrameView::fireLayoutRelatedMilestonesIfNeeded):
(WebCore::FrameView::firePaintRelatedMilestonesIfNeeded):

  • page/LayoutMilestones.h: Formatting
  • page/Page.cpp:

(WebCore::Page::addRelevantRepaintedObject):

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebFrameLoaderClient::dispatchDidLayout): Deleted.

Source/WebKit/win:

didLayout(LayoutMilestones) -> didReachLayoutMilestone(LayoutMilestones)
dispatchDidLayout(LayoutMilestones) -> dispatchDidReachLayoutMilestone(LayoutMilestones)

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebFrameLoaderClient::dispatchDidLayout): Deleted.

  • WebCoreSupport/WebFrameLoaderClient.h:

Source/WebKit2:

didLayout(LayoutMilestones) -> didReachLayoutMilestone(LayoutMilestones)
dispatchDidLayout(LayoutMilestones) -> dispatchDidReachLayoutMilestone(LayoutMilestones)

Avoided changing functions that are exposed as API/SPI.

  • UIProcess/API/APILoaderClient.h:

(API::LoaderClient::didReachLayoutMilestone):
(API::LoaderClient::didLayout): Deleted.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageLoaderClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didLayoutForCustomContentProvider):
(WebKit::WebPageProxy::didReachLayoutMilestone):
(WebKit::WebPageProxy::didLayout): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::didCommitLayerTree):

  • UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(didReachLayoutMilestone):
(setUpPageLoaderClient):
(didLayout): Deleted.

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::didReachLayoutMilestone):
(WebKit::InjectedBundlePageLoaderClient::didLayout): Deleted.

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebKit::WebFrameLoaderClient::dispatchDidLayout): Deleted.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::dispatchDidReachLayoutMilestone):
(WebKit::DrawingArea::dispatchDidLayout): Deleted.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::dispatchDidReachLayoutMilestone):
(WebKit::WebPage::dispatchDidLayout): Deleted.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::dispatchDidReachLayoutMilestone):
(WebKit::RemoteLayerTreeDrawingArea::dispatchDidLayout): Deleted.

10:34 AM Changeset in webkit [204636] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.146

New tag.

10:10 AM Changeset in webkit [204635] by pvollan@apple.com
  • 2 edits in trunk

[Win] Warning fix.
https://bugs.webkit.org/show_bug.cgi?id=160994

Reviewed by Anders Carlsson.

Ignore warning when function declared with declspec(noreturn) has non void return type.

  • Source/cmake/OptionsWin.cmake:
10:07 AM Changeset in webkit [204634] by dbates@webkit.org
  • 6 edits in trunk/WebKitLibraries

Attempt to fix the iOS 9.3 build

Reorder the keys in the text-based stubs to make linker happy.

  • WebKitPrivateFrameworkStubs/iOS/9/AppSupport.framework/AppSupport.tbd:
  • WebKitPrivateFrameworkStubs/iOS/9/AssertionServices.framework/AssertionServices.tbd:
  • WebKitPrivateFrameworkStubs/iOS/9/CorePDF.framework/CorePDF.tbd:
  • WebKitPrivateFrameworkStubs/iOS/9/GraphicsServices.framework/GraphicsServices.tbd:
  • WebKitPrivateFrameworkStubs/iOS/9/IOSurface.framework/IOSurface.tbd:
9:41 AM Changeset in webkit [204633] by pvollan@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[Win] Warning fix.
https://bugs.webkit.org/show_bug.cgi?id=160995

Avoid setting unknown compile option on source file.

Reviewed by Anders Carlsson.

  • CMakeLists.txt:
9:08 AM Changeset in webkit [204632] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Unskip tests that now pass on ios-simulator.

Unreviewed test gardening.

  • platform/ios-simulator-wk2/TestExpectations:
8:46 AM Changeset in webkit [204631] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

DumpRenderTree crashed in com.apple.WebCore: WebCore::DOMWindow::resetDOMWindowProperties + 607
https://bugs.webkit.org/show_bug.cgi?id=160983
<rdar://problem/26768524>

Reviewed by Brent Fulgham.

Update DOMWindow::frameDestroyed() to ref the window object as the crash
traces seem to indicate it can get destroyed during the execution of this
method. Also update the code in the ~Frame destructor to not iterate over
the list of FrameDestructionObservers because observers remove themselves
from the list when they get destroyed.

No new tests, do not know how to reproduce.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::frameDestroyed):

  • page/Frame.cpp:

(WebCore::Frame::~Frame):

8:36 AM Changeset in webkit [204630] by Chris Dumez
  • 7 edits in trunk

WebKit should unset event propagation flags after dispatch
https://bugs.webkit.org/show_bug.cgi?id=160853

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/dom/events/Event-dispatch-multiple-stopPropagation-expected.txt:
  • web-platform-tests/dom/events/Event-initEvent-expected.txt:
  • web-platform-tests/dom/events/Event-propagation-expected.txt:

Source/WebCore:

WebKit should unset event propagation flags after dispatch to reflect
the latest DOM specification:

No new tests, rebaselined existing tests.

  • dom/Event.h:

(WebCore::Event::resetPropagationFlags):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEvent):

  • dom/EventTarget.cpp:

(WebCore::EventTarget::dispatchEvent):

12:26 AM Changeset in webkit [204629] by Lucas Forschler
  • 2 edits in trunk/Tools

Remove Yosemite Leaks bot from config.json

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/config.json:

Aug 18, 2016:

10:42 PM Changeset in webkit [204628] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/JavaScriptCore

Merge r204572. rdar://problem/27889416

8:07 PM Changeset in webkit [204627] by dbates@webkit.org
  • 7 edits in trunk/Source

Ld warns of non-existent PrivateFrameworks directory when building WebKit with the public iOS 9.3 SDK
https://bugs.webkit.org/show_bug.cgi?id=160979

Rubber-stamped by Simon Fraser.

Only add the SDK PrivateFrameworks directory to the FRAMEWORK_SEARCH_PATH when building for
iOS Simulator, building with an iOS SDK that does not support text-based stubs, or building
an Apple-internal build.

Source/WebCore:

  • Configurations/Base.xcconfig: Define WK_TARGET_IOS_VERSION_MAJOR.
  • Configurations/WebCore.xcconfig:

Source/WebKit/mac:

  • Configurations/WebKitLegacy.xcconfig:

Source/WebKit2:

  • Configurations/BaseTarget.xcconfig:
7:53 PM Changeset in webkit [204626] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Re-landing:

Support WebIDL unions (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=160769

Reviewed by Chris Dumez.

This is the first part of an effort to add support for union types
in our code generators. This change:

  • Adds a domType struct to hold the parsed type information. For now, we only use it temporarily while parsing, and don't expose it to the code generators, but that will change in a later patch.
  • Remove support for scoped identifiers for types. They are not supported by WebIDL.
  • Make debugging the parser easier by providing backtraces when asserting.

There should be no observable changes.

  • bindings/scripts/IDLParser.pm:
7:44 PM Changeset in webkit [204625] by Hunseop Jeong
  • 2 edits in trunk/Source/WebKit2

Unreviewed, Fix CMake build after r204614

  • PlatformMac.cmake:
7:40 PM Changeset in webkit [204624] by Chris Dumez
  • 19 edits in trunk

Move prefix / namespaceURI / localName attributes from Node to Attr / Element
https://bugs.webkit.org/show_bug.cgi?id=160988

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline several W3C test now that more checks are passing.

  • web-platform-tests/dom/historical-expected.txt:
  • web-platform-tests/dom/interfaces-expected.txt:

Source/WebCore:

Move prefix / namespaceURI / localName attributes from Node to Attr / Element
as per the latest DOM specification:

Firefox and Chrome match the specification.

No new tests, rebaselined existing tests.

  • dom/Attr.h:
  • dom/Attr.idl:
  • dom/Element.h:
  • dom/Element.idl:
  • dom/Node.idl:

LayoutTests:

Update existing layout tests to reflect behavior change.

  • fast/dom/Node/initial-values-expected.txt:
  • fast/dom/Node/script-tests/initial-values.js:
  • http/tests/misc/createElementNamespace1-expected.txt:
  • http/tests/misc/createElementNamespace1.xml:
  • http/tests/misc/createElementNamespace2-expected.txt:
  • http/tests/misc/createElementNamespace2.xhtml:
  • http/tests/misc/createElementNamespace3-expected.txt:
  • http/tests/misc/createElementNamespace3.html:
  • js/dom/dom-static-property-for-in-iteration-expected.txt:
7:37 PM Changeset in webkit [204623] by Chris Dumez
  • 7 edits in trunk/LayoutTests/imported/w3c

Re-sync DOM web platform tests from upstream
https://bugs.webkit.org/show_bug.cgi?id=160980

Reviewed by Ryosuke Niwa.

Re-sync DOM web platform tests from upstream.

  • web-platform-tests/dom/events/Event-initEvent-expected.txt:
  • web-platform-tests/dom/events/Event-initEvent.html:
  • web-platform-tests/dom/events/Event-propagation-expected.txt:
  • web-platform-tests/dom/events/Event-propagation.html:
  • web-platform-tests/dom/nodes/Node-properties.html:
6:41 PM Changeset in webkit [204622] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.2.2

New tag.

6:07 PM Changeset in webkit [204621] by Chris Dumez
  • 3 edits in trunk/Source/WebKit2

[iOS] Network Processes & Database processes do not exit promptly
https://bugs.webkit.org/show_bug.cgi?id=160978
<rdar://problem/27914081>

Reviewed by Anders Carlsson.

Network Processes & Database processes do not exit promptly. They hang
for 10 seconds until they log the following message:

com.apple.WebKit.Networking: (WebKit) #WK: Exiting process early due to unacknowledged closed-connection

Then forcefully call exit(0).

To address the issue, we now call ChildProcess::stopRunLoop() instead
of RunLoop::current().stop(). stopRunLoop() works as expected on iOS
after r202723.

There is no impact on Mac because stopRunLoop() calls
RunLoop::current().stop().

  • DatabaseProcess/DatabaseProcess.cpp:

(WebKit::DatabaseProcess::didClose):
(WebKit::DatabaseProcess::didReceiveInvalidMessage):

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::didClose):
(WebKit::NetworkProcess::didReceiveInvalidMessage):

6:01 PM Changeset in webkit [204620] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Binding NULL pointer to reference in WebCore::RenderObject
https://bugs.webkit.org/show_bug.cgi?id=160830

Patch by Jonathan Bedard <Jonathan Bedard> on 2016-08-18
Reviewed by Myles C. Maxfield.

No new tests needed, existing functionality not changed.

Fixes a dereferenced NULL pointer bound to a reference through a minor re-factor.

  • rendering/InlineIterator.h:

(WebCore::InlineIterator::clear): Explicit clear occurs, instead of a call to moveTo.
(WebCore::InlineIterator::moveToStartOf): Swapped pointer for reference.
(WebCore::InlineIterator::moveTo): Swapped pointer for reference.
(WebCore::InlineIterator::increment): Explicitly call clear for clarity.

  • rendering/line/BreakingContext.h:

(WebCore::BreakingContext::commitLineBreakClear): Commit a line break and clear the iterator.
(WebCore::BreakingContext::commitLineBreakAtCurrentWidth): Swapped pointer for reference.
(WebCore::BreakingContext::InlineIteratorHistory::moveTo): Swapped pointer for reference.
(WebCore::BreakingContext::increment): Explicitly call clear for clarity.
(WebCore::BreakingContext::handleBR): Swapped pointer for passed reference.
(WebCore::BreakingContext::handleReplaced): Explicitly call clear for clarity.
(WebCore::tryHyphenating): Swapped pointer for passed reference.
(WebCore::BreakingContext::handleText): Replaced all render object passing with references. Note that the caller explicitly checks if m_current.renderer() exists before calling this function.
(WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded): Explicitly call clear for clarity.
(WebCore::BreakingContext::handleEndOfLine): Explicitly call clear for clarity.

5:55 PM Changeset in webkit [204619] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Windows build fix after r204611. Use the fully qualified name to avoid the ambiguity in VC++.

  • bindings/js/JSCustomElementInterface.cpp:

(WebCore::JSCustomElementInterface::invokeCallback):

  • bindings/js/JSCustomElementInterface.h:

(WebCore::JSCustomElementInterface::invokeCallback):

5:50 PM Changeset in webkit [204618] by dino@apple.com
  • 7 edits
    2 adds in trunk

Support passing preferLowPowerToHighPerformance and failIfMajorPerformanceCaveat
https://bugs.webkit.org/show_bug.cgi?id=160982
<rdar://problem/27915946>

Reviewed by Simon Fraser.

Source/WebCore:

Update WebGLContextAttributes to be compliant with the specification,
by adding preferLowPowerToHighPerformance and failIfMajorPerformanceCaveat.
They are not implemented yet, so asking the created context what
values it used should give the default.

Test: fast/canvas/webgl/context-creation-attributes.html

  • html/canvas/WebGLContextAttributes.cpp:

(WebCore::WebGLContextAttributes::preferLowPowerToHighPerformance):
(WebCore::WebGLContextAttributes::setPreferLowPowerToHighPerformance):
(WebCore::WebGLContextAttributes::failIfMajorPerformanceCaveat):
(WebCore::WebGLContextAttributes::setFailIfMajorPerformanceCaveat):

  • html/canvas/WebGLContextAttributes.h:
  • html/canvas/WebGLContextAttributes.idl:
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::create): Deleted.

  • platform/graphics/GraphicsContext3D.h:

(WebCore::GraphicsContext3D::Attributes::Attributes): Deleted.

LayoutTests:

Very simple test that creates some WebGL contexts with various
creation attributes and outputs the result.

  • fast/canvas/webgl/context-creation-attributes-expected.txt: Added.
  • fast/canvas/webgl/context-creation-attributes.html: Added.
5:12 PM Changeset in webkit [204617] by andersca@apple.com
  • 13 edits in trunk/Source

Move an NPAPI-only function from WebCore to WebKit
https://bugs.webkit.org/show_bug.cgi?id=160967

Reviewed by Sam Weinig.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::createScriptObjectForPluginElement): Deleted.

  • bindings/js/ScriptController.h:
  • bridge/NP_jsobject.h:

Source/WebKit/mac:

  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm:

(-[WebNetscapePluginView getVariable:value:]):
(-[WebNetscapePluginView _destroyPlugin]):

Source/WebKit/win:

  • Plugins/PluginView.cpp:

(WebCore::PluginView::~PluginView):
(WebCore::PluginView::PluginView):
(WebCore::PluginView::getValue):

  • Plugins/PluginView.h:
4:21 PM Changeset in webkit [204616] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.50.0.5

New tag.

4:15 PM Changeset in webkit [204615] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Building test fix after r204611.

  • bindings/scripts/test/TestObj.idl:
4:11 PM Changeset in webkit [204614] by mitz@apple.com
  • 5 edits
    3 adds in trunk

[Cocoa] API::Number needs to be wrapped by an NSNumber
https://bugs.webkit.org/show_bug.cgi?id=160977
<rdar://problem/27877735>

Reviewed by Anders Carlsson.

Source/WebKit2:

We introduce a single WKNSNumber class to wrap three distinct API::Number instantiations
corresponding to the Boolean, UInt64 and Double types.

Test: TestWebKitAPI/Tests/WebKit2Cocoa/WKNSNumber.mm

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject): Create a WKNSNumber to contain any of the number types, and set

its _type ivar accordingly.

  • Shared/Cocoa/WKNSNumber.h: Added.

(WebKit::wrapper):

  • Shared/Cocoa/WKNSNumber.mm: Added.

(-[WKNSNumber dealloc]): Call the appropriate destructor.
(-[WKNSNumber objCType]): Implement this NSValue primitive method.
(-[WKNSNumber getValue:]): Ditto.
(-[WKNSNumber boolValue]): Implement this NSNumber method corresponding to one of our

possible types.

(-[WKNSNumber doubleValue]): Ditto.
(-[WKNSNumber unsignedLongLongValue]): Ditto.
(-[WKNSNumber copyWithZone:]): Implement this NSCopying method by retaining self.
(-[WKNSNumber _apiObject]): Implement this WKObject method by returning the appropriate

API object.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2Cocoa/WKNSNumber.mm: Added.

(TestWebKitAPI::TEST):

4:03 PM Changeset in webkit [204613] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed, nit fix after r204605 reported by Darin.

  • platform/text/TextCodecICU.cpp:
3:55 PM Changeset in webkit [204612] by mark.lam@apple.com
  • 3 edits
    1 add in trunk

ScopedArguments is using the wrong owner object for a write barrier.
https://bugs.webkit.org/show_bug.cgi?id=160976
<rdar://problem/27328506>

Reviewed by Keith Miller.

JSTests:

  • stress/scoped-arguments-write-barrier-should-be-on-scope-object.js: Added.

Source/JavaScriptCore:

  • runtime/ScopedArguments.h:

(JSC::ScopedArguments::setIndexQuickly):

3:19 PM Changeset in webkit [204611] by rniwa@webkit.org
  • 13 edits
    4 adds in trunk

Add basic support for connected and disconnected callbacks
https://bugs.webkit.org/show_bug.cgi?id=160950

Reviewed by Chris Dumez.

Source/WebCore:

Added the basic support for custom elements' connectedCallback and disconnectedCallback. These callbacks
are enqueued by inserting and removing a node as spec'ed by https://dom.spec.whatwg.org/#concept-node-insert
and https://dom.spec.whatwg.org/#concept-node-remove

For now, we only support callbacks on appendChild and removeChild to limit the amount of code changes and
tests that need to be included in this patch.

This patch also renames InvokesCustomElementLifecycleCallbacks IDL attribute to CEReactions to match
the latest specification: https://html.spec.whatwg.org/multipage/scripting.html#cereactions

Tests: fast/custom-elements/connected-callbacks.html

fast/custom-elements/disconnected-callbacks.html

  • bindings/js/JSCustomElementInterface.cpp:

(WebCore::JSCustomElementInterface::invokeCallback): Extracted from invokeAttributeChangedCallback.
(WebCore::JSCustomElementInterface::setConnectedCallback): Added.
(WebCore::JSCustomElementInterface::invokeConnectedCallback): Added.
(WebCore::JSCustomElementInterface::setDisconnectedCallback): Added.
(WebCore::JSCustomElementInterface::invokeDisconnectedCallback): Added.
(WebCore::JSCustomElementInterface::setAttributeChangedCallback):
(WebCore::JSCustomElementInterface::invokeAttributeChangedCallback): Renamed from attributeChanged.

  • bindings/js/JSCustomElementInterface.h: Added m_connectedCallback and m_disconnectedCallback as instance

variables. Also removed the superfluous mutable qualifier from m_constructor m_attributeChangedCallback.

  • bindings/js/JSCustomElementsRegistryCustom.cpp:

(WebCore::JSCustomElementsRegistry::define): Store connectedCallback and disconnectedCallback.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/IDLAttributes.txt:
  • dom/CustomElementsRegistry.idl:
  • dom/Element.cpp:

(WebCore::Element::insertedInto): Call enqueueConnectedCallbackIfNeeded.
(WebCore::Element::removedFrom): Call enqueueDisconnectedCallbackIfNeeded.

  • dom/Element.idl:
  • dom/LifecycleCallbackQueue.cpp:

(WebCore::LifecycleQueueItem::invoke): Added calls to invokeConnectedCallback and invokeDisconnectedCallback.
(WebCore::findInterfaceForCustomElement): Extracted from enqueueAttributeChangedCallbackIfNeeded.
(WebCore::LifecycleCallbackQueue::enqueueConnectedCallbackIfNeeded): Added.
(WebCore::LifecycleCallbackQueue::enqueueDisconnectedCallbackIfNeeded): Added.
(WebCore::LifecycleCallbackQueue::enqueueAttributeChangedCallbackIfNeeded):
(WebCore::CustomElementLifecycleProcessingStack::ensureCurrentQueue):

  • dom/LifecycleCallbackQueue.h:
  • dom/Node.idl:

LayoutTests:

Added W3C style testharness.js tests for connectedCallback and disconnectedCallback.

Four test cases are failing due to a bug in window-less document's custom element registry,
which will be addressed in a future patch.

  • fast/custom-elements/connected-callbacks-expected.txt: Added.
  • fast/custom-elements/connected-callbacks.html: Added.
  • fast/custom-elements/disconnected-callbacks-expected.txt: Added.
  • fast/custom-elements/disconnected-callbacks.html: Added.
2:19 PM Changeset in webkit [204610] by Beth Dakin
  • 4 edits in trunk/Source/WebCore

Update the accessibility titles for list insertion
https://bugs.webkit.org/show_bug.cgi?id=160972
-and corresponding-
rdar://problem/27750446

Reviewed by Chris Fleizach.

Update accessibility titles based on feedback.

  • English.lproj/Localizable.strings:
  • platform/LocalizedStrings.cpp:

(WebCore::insertListTypeNone):
(WebCore::insertListTypeBulleted):
(WebCore::insertListTypeBulletedAccessibilityTitle):
(WebCore::insertListTypeNumbered):
(WebCore::insertListTypeNumberedAccessibilityTitle):
(WebCore::insertListTypeNoneAccessibilityTitle): Deleted.

  • platform/LocalizedStrings.h:
2:11 PM Changeset in webkit [204609] by bshafiei@apple.com
  • 3 edits in branches/safari-602.1.50.0-branch/Source/JavaScriptCore

Merge r204572. rdar://problem/27889416

1:53 PM Changeset in webkit [204608] by bshafiei@apple.com
  • 5 edits in branches/safari-602-branch/Source

Versioning.

1:25 PM Changeset in webkit [204607] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Add LLINT probe() macro for X86_64.
https://bugs.webkit.org/show_bug.cgi?id=160968

Reviewed by Geoffrey Garen.

  • llint/LowLevelInterpreter.asm:
12:55 PM Changeset in webkit [204606] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add SPI to WKProcessPool for enabling cookie storage partitioning
https://bugs.webkit.org/show_bug.cgi?id=160964

Reviewed by Anders Carlsson.

Followed the guidelines for SPI naming.

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool _isCookieStoragePartitioningEnabled]): Renamed from -cookieStoragePartitioningEnabled.
(-[WKProcessPool _setCookieStoragePartitioningEnabled:]): Renamed from -setCookieStoragePartitioningEnabled:.
(-[WKProcessPool cookieStoragePartitioningEnabled]): Renamed to -_isCookieStoragePartitioningEnabled.
(-[WKProcessPool setCookieStoragePartitioningEnabled:]): Renamed to -_setCookieStoragePartitioningEnabled:.

  • UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
12:53 PM Changeset in webkit [204605] by Chris Dumez
  • 18 edits in trunk

Align our encoding labels with the encoding specification
https://bugs.webkit.org/show_bug.cgi?id=160931

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Rebaseline W3C test now that we are passing a lot more checks. For reference,
Firefox 48 passes 624 out of 654, and Chrome 52 passes 651 out of 654.
Before this change, WebKit was only passing 501 out of 654 and is now passing

  1. The only checks we're failing is due to "Big5-HKSCS" not being an alias

to "Big5".

  • web-platform-tests/dom/nodes/Document-characterSet-normalization-expected.txt:

Source/WebCore:

Align our encoding labels with the encoding specification:

This also aligns with Firefox and Chrome.

No new tests, rebaselined existing test.

  • platform/text/TextCodecICU.cpp:

(WebCore::TextCodecICU::registerEncodingNames):

  • platform/text/TextCodecLatin1.cpp:

(WebCore::TextCodecLatin1::registerEncodingNames):
(WebCore::newStreamingTextDecoderWindowsLatin1): Deleted.
(WebCore::TextCodecLatin1::registerCodecs): Deleted.

  • platform/text/TextCodecUTF8.cpp:

(WebCore::TextCodecUTF8::registerEncodingNames):

LayoutTests:

Update / rebaseline existing tests to reflect the code change.
The new baselines match Chrome and Firefox.

  • fast/encoding/bracket-in-tag-expected.txt:
  • fast/encoding/charset-invalid-expected.txt:
  • fast/encoding/charset-replacement-expected.txt:
  • fast/encoding/misplaced-xml-declaration-expected.txt:
  • fast/encoding/pseudo-xml-expected.txt:
  • http/tests/misc/char-encoding-bocu-1-blacklisted-expected.txt:
  • http/tests/misc/char-encoding-bocu-1-blacklisted.html:
  • http/tests/misc/char-encoding-in-hidden-charset-field-default-expected.txt:
  • http/tests/misc/char-encoding-scsu-blacklisted-expected.txt:
  • http/tests/misc/char-encoding-scsu-blacklisted.html:
  • http/tests/misc/frame-default-enc-different-domain-expected.txt:
12:04 PM Changeset in webkit [204604] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Generated messages headers should use #pragma once
https://bugs.webkit.org/show_bug.cgi?id=160965

Reviewed by Anders Carlsson.

  • Scripts/webkit/messages.py:

(generate_messages_header): Used #pragma once instead of a header guard.

11:59 AM Changeset in webkit [204603] by aestes@apple.com
  • 15 edits in trunk/Source

[Cocoa] Add SPI to WKProcessPool for enabling cookie storage partitioning
https://bugs.webkit.org/show_bug.cgi?id=160964

Reviewed by Brent Fulgham.

Source/WebCore:

  • page/Settings.cpp:

(WebCore::Settings::setCookieStoragePartitioningEnabled): Deleted.

  • page/Settings.h:

(WebCore::Settings::cookieStoragePartitioningEnabled): Deleted.

  • platform/network/NetworkStorageSession.h:
  • platform/network/cf/NetworkStorageSessionCFNet.cpp: Defined cookieStoragePartitioningEnabled.

(WebCore::NetworkStorageSession::setCookieStoragePartitioningEnabled): Set cookieStoragePartitioningEnabled.
(WebCore::cookieStoragePartition): Used cookieStoragePartitioningEnabled instead of Settings::cookieStoragePartitioningEnabled().

Source/WebKit2:

  • NetworkProcess/NetworkProcess.h: Declared setCookieStoragePartitioningEnabled().
  • NetworkProcess/NetworkProcess.messages.in: Added message SetCookieStoragePartitioningEnabled.
  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode): Encoded cookieStoragePartitioningEnabled.
(WebKit::NetworkProcessCreationParameters::decode): Decoded cookieStoragePartitioningEnabled.

  • NetworkProcess/NetworkProcessCreationParameters.h: Declared cookieStoragePartitioningEnabled.
  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
Called NetworkStorageSession::setCookieStoragePartitioningEnabled() given the cookieStoragePartitioningEnabled parameter.
(WebKit::NetworkProcess::setCookieStoragePartitioningEnabled):
Called NetworkStorageSession::setCookieStoragePartitioningEnabled().

  • UIProcess/API/Cocoa/WKProcessPool.mm:

(-[WKProcessPool cookieStoragePartitioningEnabled]): Returned WebProcessPool::cookieStoragePartitioningEnabled().
(-[WKProcessPool setCookieStoragePartitioningEnabled:]): Called WebProcessPool::setCookieStoragePartitioningEnabled().

  • UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Declared cookieStoragePartitioningEnabled as a property.
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeNetworkProcess):
Set the cookieStoragePartitioningEnabled parameter from m_cookieStoragePartitioningEnabled.
(WebKit::WebProcessPool::setCookieStoragePartitioningEnabled):
Set m_cookieStoragePartitioningEnabled and sent the NetworkProcess::SetCookieStoragePartitioningEnabled message.

  • UIProcess/WebProcessPool.h: Declared cookieStoragePartitioningEnabled.
11:06 AM Changeset in webkit [204602] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Land test expectations for rdar://problem/27723718.

  • platform/mac-wk1/TestExpectations:
11:05 AM Changeset in webkit [204601] by eric.carlson@apple.com
  • 13 edits
    2 adds in trunk

AX: Audio Description tracks are not labeled correctly, causing user confusion
https://bugs.webkit.org/show_bug.cgi?id=160652
<rdar://problem/27742208>

Reviewed by Antoine Quint.

  • http/tests/media/hls/hls-accessiblity-describes-video-menu-expected.txt: Added.
  • http/tests/media/hls/hls-accessiblity-describes-video-menu.html: Added.
  • media/trackmenu-test.js:

(clickCCButton): Fail immediately if "video" is null or not a media element. Make failure
logging more descriptive.

  • platform/gtk/TestExpectations: Skip new test.
  • platform/ios-simulator/media/video-controls-captions-trackmenu-expected.txt: Updated for

clickCCButton error message change.

  • platform/ios-simulator/media/video-controls-captions-trackmenu-hide-on-click-expected.txt: Ditto.
  • platform/ios-simulator/media/video-controls-captions-trackmenu-localized-expected.txt: Ditto.
  • platform/ios-simulator/media/video-controls-captions-trackmenu-sorted-expected.txt: Ditto.
10:54 AM Changeset in webkit [204600] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Remove unused SlotVisitor::append() variant.
https://bugs.webkit.org/show_bug.cgi?id=160961

Reviewed by Saam Barati.

  • heap/SlotVisitor.h:
  • jit/JITWriteBarrier.h:

(JSC::JITWriteBarrier::get):
(JSC::SlotVisitor::append): Deleted.

10:26 AM Changeset in webkit [204599] by achristensen@apple.com
  • 3 edits in trunk/Source/WebCore

Fix WinCairo build after r204592.

  • PlatformAppleWin.cmake:
  • PlatformWin.cmake:
10:23 AM Changeset in webkit [204598] by bshafiei@apple.com
  • 5 edits in branches/safari-602.1.50.0-branch/Source

Versioning.

10:17 AM Changeset in webkit [204597] by sbarati@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Make @Array(size) a bytecode intrinsic
https://bugs.webkit.org/show_bug.cgi?id=160867

Reviewed by Mark Lam.

There were a few places in the code where we were emitting @Array(size)
or new @Array(size). Since we have a bytecode operation that already
represents this, called new_array_with_size, it's faster to just make a
bytecode intrinsic for the this operation. This patch does that and
the intrinsic is called @newArrayWithSize. This might be around a
1% speedup on ES6 sample bench, but it's within the noise. This is just
a good bytecode operation to have because it's common enough to
create arrays and it's good to make that fast in all tiers.

  • builtins/ArrayConstructor.js:

(of):
(from):

  • builtins/ArrayPrototype.js:

(filter):
(map):
(sort.stringSort):
(sort):
(concatSlowPath):

  • bytecode/BytecodeIntrinsicRegistry.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::BytecodeIntrinsicNode::emit_intrinsic_isObject):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_newArrayWithSize):

9:10 AM Changeset in webkit [204596] by Ryan Haddad
  • 3 edits in trunk/LayoutTests

Rebaseline js/dom/global-constructors-attributes.html after r204594.

Unreviewed test gardening.

  • platform/mac-wk1/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
9:06 AM Changeset in webkit [204595] by eric.carlson@apple.com
  • 10 edits in trunk/Source/WebCore

[MediaStream] cleanup MediaConstraints
https://bugs.webkit.org/show_bug.cgi?id=160957

Reviewed by Antoine Quint.

No new tests, no behavior change.

  • Modules/mediastream/CaptureDeviceManager.cpp:

(CaptureDeviceManager::sessionSupportsConstraint): Use MediaConstraint::type

  • bindings/js/JSMediaDevicesCustom.cpp:

(WebCore::initializeStringConstraintWithList): MediaConstraint::create now takes the constraint
type, not name.
(WebCore::createStringConstraint): Ditto.
(WebCore::createBooleanConstraint): Ditto.
(WebCore::createDoubleConstraint): Ditto.
(WebCore::createIntConstraint): Ditto.
(WebCore::parseMediaTrackConstraintSetForKey): Pass constraint type.

  • platform/mediastream/MediaConstraints.cpp:

(WebCore::MediaConstraint::create): MediaConstraint constructor now takes the constraint.
(WebCore::IntConstraint::create): Take type, not name.
(WebCore::IntConstraint::setMin): Ditto.
(WebCore::DoubleConstraint::create): Ditto.
(WebCore::BooleanConstraint::create): Ditto.
(WebCore::StringConstraint::create): Ditto.

  • platform/mediastream/MediaConstraints.h:
  • platform/mediastream/RealtimeMediaSourceSupportedConstraints.cpp:

(WebCore::RealtimeMediaSourceSupportedConstraints::nameForConstraint): Make static.
(WebCore::RealtimeMediaSourceSupportedConstraints::constraintFromName): Ditto.

  • platform/mediastream/RealtimeMediaSourceSupportedConstraints.h:
  • platform/mediastream/mac/AVCaptureDeviceManager.mm:

(WebCore::AVCaptureDeviceManager::sessionSupportsConstraint): Use MediaConstraint::type

  • platform/mediastream/mac/AVVideoCaptureSource.mm:

(WebCore::AVVideoCaptureSource::applyConstraints): nameForConstraint is a static method. Add
error logging.

  • platform/mock/MediaConstraintsMock.cpp:

(WebCore::isSatisfiable): Use constraint type.

6:58 AM Changeset in webkit [204594] by commit-queue@webkit.org
  • 28 edits
    10 copies
    6 adds in trunk

[web-animations] Add Animatable, AnimationEffect, KeyframeEffect and Animation interface
https://bugs.webkit.org/show_bug.cgi?id=156096

Patch by Rawinder Singh <rawinder.singh-webkit@cisra.canon.com.au> on 2016-08-18
Reviewed by Dean Jackson.

Adds:
Source/JavaScriptCore:

  • Animatable interface and implementation of getAnimations in Element.
  • Interface and implementation for Document getAnimations method.
  • AnimationEffect interface and class stub.
  • KeyframeEffect interface and constructor implementation.
  • 'Animation' interface, constructor and query methods for effect and timeline.
  • Remove runtime condition on Web animation interfaces (compile time flag is specified).
  • runtime/CommonIdentifiers.h:

Source/WebCore:

  • Animatable interface and implementation of getAnimations in Element.
  • Interface and implementation for Document getAnimations method.
  • AnimationEffect interface and class stub.
  • KeyframeEffect interface and constructor implementation.
  • 'Animation' interface, constructor and query methods for effect and timeline.
  • Remove runtime condition on Web animation interfaces (compile time flag is specified).

Test: webanimations/Document.html

  • CMakeLists.txt:
  • DerivedSources.make:
  • PlatformGTK.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • animation/Animatable.idl: Copied from Source/WebCore/animation/AnimationTimeline.idl.
  • animation/AnimationEffect.cpp: Copied from Source/WebCore/animation/AnimationTimeline.cpp.

(WebCore::AnimationEffect::AnimationEffect):
(WebCore::AnimationEffect::~AnimationEffect):
(WebCore::AnimationEffect::setAnimation):
(WebCore::AnimationEffect::isCurrent):
(WebCore::AnimationEffect::isInEffect):

  • animation/AnimationEffect.h: Copied from Source/WebCore/animation/DocumentTimeline.cpp.
  • animation/AnimationEffect.idl: Copied from Source/WebCore/animation/DocumentAnimation.idl.
  • animation/AnimationTimeline.cpp:

(WebCore::AnimationTimeline::destroy):
(WebCore::AnimationTimeline::attachAnimation):
(WebCore::AnimationTimeline::detachAnimation):

  • animation/AnimationTimeline.h:
  • animation/AnimationTimeline.idl:
  • animation/DocumentAnimation.cpp:

(WebCore::DocumentAnimation::timeline):
(WebCore::DocumentAnimation::getAnimations):
(WebCore::DocumentAnimation::addAnimation):
(WebCore::DocumentAnimation::removeAnimation):

  • animation/DocumentAnimation.h:

(WebCore::DocumentAnimation::getAnimations):

  • animation/DocumentAnimation.idl:
  • animation/DocumentTimeline.cpp:

(WebCore::DocumentTimeline::create):
(WebCore::DocumentTimeline::DocumentTimeline):
(WebCore::DocumentTimeline::attach):
(WebCore::DocumentTimeline::detach):

  • animation/DocumentTimeline.h:
  • animation/DocumentTimeline.idl:
  • animation/KeyframeEffect.cpp: Copied from Source/WebCore/animation/DocumentTimeline.cpp.

(WebCore::KeyframeEffect::create):
(WebCore::KeyframeEffect::KeyframeEffect):
(WebCore::KeyframeEffect::~KeyframeEffect):

  • animation/KeyframeEffect.h: Copied from Source/WebCore/animation/DocumentTimeline.h.
  • animation/KeyframeEffect.idl: Copied from Source/WebCore/animation/DocumentTimeline.idl.
  • animation/WebAnimation.cpp: Copied from Source/WebCore/animation/DocumentAnimation.cpp.

(WebCore::WebAnimation::create):
(WebCore::WebAnimation::WebAnimation):
(WebCore::WebAnimation::~WebAnimation):

  • animation/WebAnimation.h: Copied from Source/WebCore/animation/DocumentAnimation.h.
  • animation/WebAnimation.idl: Copied from Source/WebCore/animation/DocumentTimeline.idl.
  • bindings/scripts/CodeGeneratorGObject.pm:
  • dom/Element.cpp:

(WebCore::Element::getAnimations):

  • dom/Element.h:
  • dom/Element.idl:

Source/WebKit/mac:

  • Setup interface for enabling runtime flag for Web animations through preferences.
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences webAnimationsEnabled]):
(-[WebPreferences setWebAnimationsEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

LayoutTests:

  • Animatable interface and implementation of getAnimations in Element.
  • Interface and implementation for Document getAnimations method.
  • AnimationEffect interface and class stub.
  • KeyframeEffect interface and constructor implementation.
  • 'Animation' interface, constructor and query methods for effect and timeline.
  • Remove runtime condition on Web animation interfaces (compile time flag is specified).
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
  • webanimations/Document-expected.txt: Added.
  • webanimations/Document.html: Added.
  • webanimations/script-tests/Document.js: Added.
2:23 AM Changeset in webkit [204593] by pvollan@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed test gardening.

Update test expectations on Windows for failing tests. These failures are tracked in
https://bugs.webkit.org/show_bug.cgi?id=160447.

  • platform/win/TestExpectations:
Note: See TracTimeline for information about the timeline view.