WebKit.git
4 years agoStop python icon bouncing in the dock while running browser benchmarks.
dewei_zhu@apple.com [Tue, 23 Aug 2016 05:12:51 +0000 (05:12 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204756 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Entering ":n" in Open Resource Dialog, where n > number of lines,...
commit-queue@webkit.org [Tue, 23 Aug 2016 05:12:32 +0000 (05:12 +0000)]
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 <dcrousso+webkit@gmail.com> 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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204755 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Add indicator to matched selector being a pseudo-element
commit-queue@webkit.org [Tue, 23 Aug 2016 04:47:27 +0000 (04:47 +0000)]
Web Inspector: Add indicator to matched selector being a pseudo-element
https://bugs.webkit.org/show_bug.cgi?id=160893

Patch by Devin Rousso <dcrousso+webkit@gmail.com> 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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204754 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, update failure list of iOS simulator WK1 compositing test.
jiewen_tan@apple.com [Tue, 23 Aug 2016 01:49:58 +0000 (01:49 +0000)]
Unreviewed, update failure list of iOS simulator WK1 compositing test.

* platform/ios-simulator-wk1/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204753 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, iOS simulator WK1 tests gardening.
jiewen_tan@apple.com [Tue, 23 Aug 2016 01:32:49 +0000 (01:32 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204752 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, iOS simulator WK1 tests rebasing.
jiewen_tan@apple.com [Tue, 23 Aug 2016 01:04:42 +0000 (01:04 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204751 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, build fix on GCC environment
utatane.tea@gmail.com [Tue, 23 Aug 2016 00:43:13 +0000 (00:43 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204749 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, rolling out r204745.
cdumez@apple.com [Tue, 23 Aug 2016 00:03:15 +0000 (00:03 +0000)]
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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204748 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCanvasRenderingContext2D should not have a CanvasRenderingContext parent interface
cdumez@apple.com [Mon, 22 Aug 2016 23:23:26 +0000 (23:23 +0000)]
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:
- https://html.spec.whatwg.org/multipage/scripting.html#canvasrenderingcontext2d

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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204745 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agobmalloc: speed up the lock slow path
ggaren@apple.com [Mon, 22 Aug 2016 23:18:09 +0000 (23:18 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204744 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove Arguments.h
andersca@apple.com [Mon, 22 Aug 2016 22:44:42 +0000 (22:44 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204743 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMove tuple coding to ArgumentCoders.h
andersca@apple.com [Mon, 22 Aug 2016 22:10:43 +0000 (22:10 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204742 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoActually enable the WASM build.
keith_miller@apple.com [Mon, 22 Aug 2016 21:38:39 +0000 (21:38 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204740 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSimplify the generated message structs
andersca@apple.com [Mon, 22 Aug 2016 21:31:55 +0000 (21:31 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204739 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSkip the test in http/tests/navigation/ping-attribute in iOS WebKit 2
dbates@webkit.org [Mon, 22 Aug 2016 21:21:57 +0000 (21:21 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204738 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove MessageRecorder
andersca@apple.com [Mon, 22 Aug 2016 21:11:17 +0000 (21:11 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204737 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMake NetworkLoadTiming use double for higher precision in Resource Timing
commit-queue@webkit.org [Mon, 22 Aug 2016 20:28:39 +0000 (20:28 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204736 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix Mac CMake build after r204717.
achristensen@apple.com [Mon, 22 Aug 2016 20:13:36 +0000 (20:13 +0000)]
Fix Mac CMake build after r204717.

* PlatformMac.cmake:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204735 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[css-grid] Stretch alignment doesn't work for orthogonal flows
jfernandez@igalia.com [Mon, 22 Aug 2016 20:11:16 +0000 (20:11 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204734 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoInvalid resource load statistics iterator when redirecting
bfulgham@apple.com [Mon, 22 Aug 2016 19:48:50 +0000 (19:48 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204733 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRename CustomElementsRegistry to CustomElementRegistry
rniwa@webkit.org [Mon, 22 Aug 2016 19:45:01 +0000 (19:45 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204732 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAttempt to fix the iOS 9 Simulator test bots after <https://trac.webkit.org/changeset...
dbates@webkit.org [Mon, 22 Aug 2016 19:12:09 +0000 (19:12 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204731 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove dead code.
mark.lam@apple.com [Mon, 22 Aug 2016 19:03:32 +0000 (19:03 +0000)]
Remove dead code.
https://bugs.webkit.org/show_bug.cgi?id=161049

Reviewed by Michael Saboff.

* runtime/VM.h:
- Deleted unused friend class ClearExceptionScope.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204730 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdd support for GlobalEventHandlers.oncuechange attribute
cdumez@apple.com [Mon, 22 Aug 2016 19:00:08 +0000 (19:00 +0000)]
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:
- https://html.spec.whatwg.org/#handler-oncuechange

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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204729 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago<select> menu on iPad causes shifting of hit-testing areas
simon.fraser@apple.com [Mon, 22 Aug 2016 18:02:03 +0000 (18:02 +0000)]
<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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204728 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[EFL][GTK] Script process-linux-coredump is not needed, switch back to use the kernel...
clopez@igalia.com [Mon, 22 Aug 2016 17:26:22 +0000 (17:26 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204727 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix bindings tests after r204717.
achristensen@apple.com [Mon, 22 Aug 2016 17:23:39 +0000 (17:23 +0000)]
Fix bindings tests after r204717.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
There was an extra space.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204726 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMostly fix Mac CMake build after r204717.
achristensen@apple.com [Mon, 22 Aug 2016 17:20:17 +0000 (17:20 +0000)]
Mostly fix Mac CMake build after r204717.

* PlatformMac.cmake:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204725 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoCan't style descendants in shadow tree using the :host pseudo class
antti@apple.com [Mon, 22 Aug 2016 17:19:29 +0000 (17:19 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204724 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agocheck-webkit-style does not work with Lambda functions in C++
commit-queue@webkit.org [Mon, 22 Aug 2016 16:40:49 +0000 (16:40 +0000)]
check-webkit-style does not work with Lambda functions in C++
https://bugs.webkit.org/show_bug.cgi?id=160910

Patch by Jonathan Bedard <jbedard@apple.com> 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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204723 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUse memoize pattern for the menclose notation attribute
fred.wang@free.fr [Mon, 22 Aug 2016 16:18:09 +0000 (16:18 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204721 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[iOS] <a ping> and <area ping> tests time out
dbates@webkit.org [Mon, 22 Aug 2016 16:13:28 +0000 (16:13 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204720 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoSource/WebCore:
achristensen@apple.com [Mon, 22 Aug 2016 15:51:58 +0000 (15:51 +0000)]
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@apple.com> 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@apple.com> 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@apple.com> 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@apple.com> 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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204717 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[iOS] Wait a few seconds before release network activity assertion after a load
cdumez@apple.com [Mon, 22 Aug 2016 15:39:44 +0000 (15:39 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204716 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRename MathMLTextElement to MathMLTokenElement
fred.wang@free.fr [Mon, 22 Aug 2016 15:18:10 +0000 (15:18 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204715 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[ES6] Module should not allow HTML comments
utatane.tea@gmail.com [Mon, 22 Aug 2016 14:12:10 +0000 (14:12 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204714 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Fetch API] Activate fetch api runtime flag by default
commit-queue@webkit.org [Mon, 22 Aug 2016 09:53:47 +0000 (09:53 +0000)]
[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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204705 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoLayoutTest http/tests/fetch/fetch-in-worker-crash.html is flaky
commit-queue@webkit.org [Mon, 22 Aug 2016 07:09:51 +0000 (07:09 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204704 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[SOUP] Change MessageDecoder with Decoder
commit-queue@webkit.org [Mon, 22 Aug 2016 07:02:27 +0000 (07:02 +0000)]
[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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204703 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUse Document& instead of Document* when getting cookies
commit-queue@webkit.org [Mon, 22 Aug 2016 06:02:52 +0000 (06:02 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204702 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoURLParser should parse IPv4 addresses
commit-queue@webkit.org [Mon, 22 Aug 2016 05:42:12 +0000 (05:42 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204701 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove a few custom bindings
commit-queue@webkit.org [Mon, 22 Aug 2016 04:04:54 +0000 (04:04 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204700 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[DFG] Should not fixup AnyIntUse in 32_64
utatane.tea@gmail.com [Mon, 22 Aug 2016 03:47:49 +0000 (03:47 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, rolling out r204697
utatane.tea@gmail.com [Sun, 21 Aug 2016 20:36:49 +0000 (20:36 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204698 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[DFG] Should not fixup AnyIntUse in 32_64
utatane.tea@gmail.com [Sun, 21 Aug 2016 19:45:50 +0000 (19:45 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204697 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix up title in ChangeLog entry for r204695.
dbates@webkit.org [Sun, 21 Aug 2016 18:13:23 +0000 (18:13 +0000)]
Fix up title in ChangeLog entry for r204695.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204696 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoprepare-ChangeLog lists modified methods as having been deleted
dbates@webkit.org [Sun, 21 Aug 2016 18:08:28 +0000 (18:08 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204695 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Mac] Rebase some failing XMLHttpRequest tests
commit-queue@webkit.org [Sun, 21 Aug 2016 15:41:20 +0000 (15:41 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204694 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agocross-origin requests redirected fail or drop author requested headers
commit-queue@webkit.org [Sun, 21 Aug 2016 13:36:48 +0000 (13:36 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204693 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoIntroduce a MathMLAnnotationElement class for the annotation/annotation-xml elements
commit-queue@webkit.org [Sun, 21 Aug 2016 12:18:43 +0000 (12:18 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204692 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[GTK] Clean up CursorGtk.cpp
mcatanzaro@igalia.com [Sun, 21 Aug 2016 10:55:31 +0000 (10:55 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204691 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed EFL build fix since r204668
gyuyoung.kim@webkit.org [Sun, 21 Aug 2016 05:21:37 +0000 (05:21 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[EFL] Remove unnecessary a patch to mute ecore warnings
commit-queue@webkit.org [Sun, 21 Aug 2016 03:26:27 +0000 (03:26 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204689 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoFix the build.
weinig@apple.com [Sun, 21 Aug 2016 03:06:02 +0000 (03:06 +0000)]
Fix the build.

* dom/UIEvent.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204688 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemoved Objective-C specific attributes from IDL, made conditionals more consistent
darin@apple.com [Sun, 21 Aug 2016 02:21:54 +0000 (02:21 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204687 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemote Inspector: some methods don't need to be marked virtual anymore
bburg@apple.com [Sun, 21 Aug 2016 01:43:31 +0000 (01:43 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204686 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove Objective-C specific extended attributes from the bindings
weinig@apple.com [Sun, 21 Aug 2016 01:09:10 +0000 (01:09 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRoll out r204683.
weinig@apple.com [Sun, 21 Aug 2016 00:54:33 +0000 (00:54 +0000)]
Roll out r204683.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204684 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove Objective-C specific extended attributes / features from the bindings
weinig@apple.com [Sat, 20 Aug 2016 23:43:45 +0000 (23:43 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204683 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Mac] Web Content service with a restricted entitlement may load arbitrary dylibs
mitz@apple.com [Sat, 20 Aug 2016 22:00:11 +0000 (22:00 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204682 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoStop pretending that AbstractView is a thing, it's not
weinig@apple.com [Sat, 20 Aug 2016 21:40:29 +0000 (21:40 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204681 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION (r204477): Running LayoutTests on ios-simulator became ~15 minutes slower
simon.fraser@apple.com [Sat, 20 Aug 2016 17:29:05 +0000 (17:29 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204680 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoLocation.ancestorOrigins should return a FrozenArray<USVString>
weinig@apple.com [Sat, 20 Aug 2016 14:44:52 +0000 (14:44 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204679 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[GTK] Unreviewed GTK build fix since r204665 and 204668
jfernandez@igalia.com [Sat, 20 Aug 2016 09:38:41 +0000 (09:38 +0000)]
[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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204678 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, build fix attempt after r204665 and r204668.
utatane.tea@gmail.com [Sat, 20 Aug 2016 08:04:08 +0000 (08:04 +0000)]
Unreviewed, build fix attempt after r204665 and r204668.

* PlatformGTK.cmake:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204677 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAnother build fix attempt after r204665 and r204668.
rniwa@webkit.org [Sat, 20 Aug 2016 04:53:41 +0000 (04:53 +0000)]
Another build fix attempt after r204665 and r204668.

* CMakeLists.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204676 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoGTK+ / EFL build fix attempt after r204665.
rniwa@webkit.org [Sat, 20 Aug 2016 04:44:38 +0000 (04:44 +0000)]
GTK+ / EFL build fix attempt after r204665.

* CMakeLists.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204675 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, roll out part of r204662 to see if it addresses flakiness.
cdumez@apple.com [Sat, 20 Aug 2016 03:10:03 +0000 (03:10 +0000)]
Unreviewed, roll out part of r204662 to see if it addresses flakiness.

* web-platform-tests/html/dom/interfaces.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUnreviewed, rolling out r204659.
ryanhaddad@apple.com [Sat, 20 Aug 2016 02:53:00 +0000 (02:53 +0000)]
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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204672 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[JSC] ArithSqrt should work with any argument type
commit-queue@webkit.org [Sat, 20 Aug 2016 02:00:44 +0000 (02:00 +0000)]
[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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204670 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMark CanvasPath operations' parameters as mandatory when they should be
cdumez@apple.com [Sat, 20 Aug 2016 00:45:30 +0000 (00:45 +0000)]
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:
- https://html.spec.whatwg.org/multipage/scripting.html#canvaspath

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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204669 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMerge MessageDecoder and ArgumentDecoder into Decoder
andersca@apple.com [Sat, 20 Aug 2016 00:11:17 +0000 (00:11 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204668 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRenderObject::containingBlock() cleanup.
zalan@apple.com [Fri, 19 Aug 2016 23:09:14 +0000 (23:09 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoUpdate Xcode project.
andersca@apple.com [Fri, 19 Aug 2016 22:55:32 +0000 (22:55 +0000)]
Update Xcode project.

* WebKit2.xcodeproj/project.pbxproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204666 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMerge MessageEncoder and ArgumentEncoder into Encoder
andersca@apple.com [Fri, 19 Aug 2016 22:52:59 +0000 (22:52 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoImplement preferLowPowerToHighPerformance for WebGL
dino@apple.com [Fri, 19 Aug 2016 22:52:24 +0000 (22:52 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMake custom Error properties (line, column, sourceURL) configurable and writable
commit-queue@webkit.org [Fri, 19 Aug 2016 22:49:26 +0000 (22:49 +0000)]
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 <pecoraro@apple.com> 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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRe-sync html/dom/interfaces.html web-platform-test from upstream
cdumez@apple.com [Fri, 19 Aug 2016 22:44:08 +0000 (22:44 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove empty files and empty namespace blocks
joepeck@webkit.org [Fri, 19 Aug 2016 22:42:55 +0000 (22:42 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoBuild fix for non-USE_SIM_SERVICE_CONTEXT builds
ap@apple.com [Fri, 19 Aug 2016 22:24:46 +0000 (22:24 +0000)]
Build fix for non-USE_SIM_SERVICE_CONTEXT builds
* LayoutTestRelay/LayoutTestRelay/main.m: (main):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoREGRESSION (r204477): Running LayoutTests on ios-simulator became ~15 minutes slower
simon.fraser@apple.com [Fri, 19 Aug 2016 22:13:15 +0000 (22:13 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAddressing post-review comments after r204592
mmaxfield@apple.com [Fri, 19 Aug 2016 22:13:00 +0000 (22:13 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAdopt SimServiceContext in LayoutTestRelay
ap@apple.com [Fri, 19 Aug 2016 22:03:31 +0000 (22:03 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204656 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAttempt to fix the Windows build after r204652.
ryanhaddad@apple.com [Fri, 19 Aug 2016 21:55:55 +0000 (21:55 +0000)]
Attempt to fix the Windows build after r204652.

Unreviewed build fix.

* dom/DOMAllInOne.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMigrate from ints to unsigneds in a few more places in rendering code
mmaxfield@apple.com [Fri, 19 Aug 2016 21:47:43 +0000 (21:47 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204654 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMigrate RenderText::stringView() to unsigneds
mmaxfield@apple.com [Fri, 19 Aug 2016 21:40:13 +0000 (21:40 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRename LifecycleCallback to CustomElementReaction
rniwa@webkit.org [Fri, 19 Aug 2016 21:02:31 +0000 (21:02 +0000)]
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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204652 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRebaseline imported/w3c/web-platform-tests/html/semantics/interfaces.html for ios...
ryanhaddad@apple.com [Fri, 19 Aug 2016 20:40:16 +0000 (20:40 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoMarking editing/deleting/delete-empty-line-breaks-at-end-of-textarea.html as flaky...
ryanhaddad@apple.com [Fri, 19 Aug 2016 20:33:55 +0000 (20:33 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoRemove Yosemite Leaks bot after http://trac.webkit.org/projects/webkit/changeset...
lforschler@apple.com [Fri, 19 Aug 2016 20:15:49 +0000 (20:15 +0000)]
Remove Yosemite Leaks bot after trac.webkit.org/projects/webkit/changeset/204629

Reviewed by Kocsen Chung.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAttr.prefix / Element.prefix attribute should be readonly
cdumez@apple.com [Fri, 19 Aug 2016 19:44:01 +0000 (19:44 +0000)]
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:
- https://dom.spec.whatwg.org/#element
- https://dom.spec.whatwg.org/#attr

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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204648 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago<command> should be an HTMLUnknownElement and <basefont> should be an HTMLElement
cdumez@apple.com [Fri, 19 Aug 2016 19:33:58 +0000 (19:33 +0000)]
<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:
- https://html.spec.whatwg.org/multipage/dom.html#elements-in-the-dom:element-interface

<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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Make an icon for Code Coverage Profiler
nvasilyev@apple.com [Fri, 19 Aug 2016 19:33:23 +0000 (19:33 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAX: iOS, Wrong axLabel on static text if heading has multiple children
n_wang@apple.com [Fri, 19 Aug 2016 19:23:30 +0000 (19:23 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[GTK] Gardening: Layout tests expectations updates and test rebaselines.
clopez@igalia.com [Fri, 19 Aug 2016 19:07:30 +0000 (19:07 +0000)]
[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).

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoPartial revert of r203811 - this key is not needed.
ap@apple.com [Fri, 19 Aug 2016 18:58:56 +0000 (18:58 +0000)]
Partial revert of r203811 - this key is not needed.

* LayoutTestRelay/LayoutTestRelay/LTRelayController.m: (-[LTRelayController installApp]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoWeb Inspector: Console log counter on the dashboard should be better at displaying...
commit-queue@webkit.org [Fri, 19 Aug 2016 18:41:08 +0000 (18:41 +0000)]
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 <dcrousso+webkit@gmail.com> 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):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoResource Timing: Make PerformanceEntryList a sequence as per spec
commit-queue@webkit.org [Fri, 19 Aug 2016 18:30:10 +0000 (18:30 +0000)]
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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years agoAnother attempt to fix the iOS 9.3 build
dbates@webkit.org [Fri, 19 Aug 2016 18:24:50 +0000 (18:24 +0000)]
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:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4 years ago[Mac] fix PiP context menu typos
eric.carlson@apple.com [Fri, 19 Aug 2016 18:21:35 +0000 (18:21 +0000)]
[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.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@204638 268f45cc-cd09-0410-ab3c-d52691b4dbfc