WebKit-https.git
7 years agoSource/WebCore: Invalid cast in WebCore::toRenderMathMLBlock
bfulgham@apple.com [Tue, 29 Oct 2013 17:40:52 +0000 (17:40 +0000)]
Source/WebCore: Invalid cast in WebCore::toRenderMathMLBlock
https://bugs.webkit.org/show_bug.cgi?id=121728
rdar://problem/15046151

Reviewed by Dean Jackson.

Tested by: mathml/arbitrary-markup.html

* dom/Element.h: Expose childShouldCreateRenderer for
MathML as well as SVG builds.
* dom/Node.h:
(WebCore::Node::isMathMLElement): Added.
* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::create): Create as MathML Element.
(WebCore::MathMLElement::childShouldCreateRenderer):
Only allow the child to emit a renderer if it is a
MathML element.
* mathml/MathMLElement.h:

LayoutTests: [MathML] invalid cast in WebCore::toRenderMathMLBlock
https://bugs.webkit.org/show_bug.cgi?id=121728

Reviewed by Dean Jackson.

* mathml/arbitrary-markup-expected.txt: Added.
* mathml/arbitrary-markup.html: Added.
* mathml/mfenced-root-layer.html: Modified to avoid invalid
use of arbitrary markup inside mfenced element.
* mathml/mfenced-root-layer-expected.txt: Rebaselined.

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

7 years agoSVG: applyStrokeStyleToContext should take a RenderElement&.
akling@apple.com [Tue, 29 Oct 2013 17:17:22 +0000 (17:17 +0000)]
SVG: applyStrokeStyleToContext should take a RenderElement&.
<https://webkit.org/b/123447>

..and a RenderStyle& too, for that matter.

Reviewed by Anders Carlsson.

* rendering/svg/SVGRenderSupport.h:
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::applyStrokeStyleToContext):

    Have this take a RenderElement& and RenderStyle& instead of
    raw pointers. Tweaked a silly-looking loop.

* rendering/svg/RenderSVGShape.h:
* rendering/svg/RenderSVGShape.cpp:

    Moved BoundingRectStrokeStyleApplier helper class into the
    cpp file since it wasn't being used anywhere else.

* rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::RenderSVGResourceGradient::applyResource):
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::applyResource):
* rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):

    Remove ampersands.

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

7 years agoMultiple runs per line on simple line path
antti@apple.com [Tue, 29 Oct 2013 17:00:42 +0000 (17:00 +0000)]
Multiple runs per line on simple line path
https://bugs.webkit.org/show_bug.cgi?id=123446

Reviewed by Andreas Kling.

By allowing multiple runs per line we can support text flows with consecutive whitespaces in the middle.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):

    Remove space test.
    The improved test coverage found a few more cases that we need to disallow.

(WebCore::SimpleLineLayout::adjustRunOffsets):

    Round the run positions and widths so they match line boxes.
    Adjust for text-align.

(WebCore::SimpleLineLayout::create):

    Split lines with consecutive spaces into runs.

* rendering/SimpleLineLayout.h:
(WebCore::SimpleLineLayout::Run::Run):
* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::hitTestFlow):
(WebCore::SimpleLineLayout::collectFlowOverflow):
(WebCore::SimpleLineLayout::computeTextBoundingBox):
* rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::RunResolver::Iterator::resolver):
(WebCore::SimpleLineLayout::RunResolver::Iterator::lineIndex):
(WebCore::SimpleLineLayout::RunResolver::Run::Run):
(WebCore::SimpleLineLayout::RunResolver::Run::rect):
(WebCore::SimpleLineLayout::RunResolver::Run::baseline):
(WebCore::SimpleLineLayout::RunResolver::Run::text):
(WebCore::SimpleLineLayout::RunResolver::Run::lineIndex):
(WebCore::SimpleLineLayout::RunResolver::Iterator::Iterator):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator++):

    Removed unnecessary operators.

(WebCore::SimpleLineLayout::RunResolver::Iterator::operator==):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator!=):
(WebCore::SimpleLineLayout::RunResolver::Iterator::operator*):
(WebCore::SimpleLineLayout::RunResolver::Iterator::simpleRun):
(WebCore::SimpleLineLayout::RunResolver::RunResolver):
(WebCore::SimpleLineLayout::RunResolver::begin):
(WebCore::SimpleLineLayout::RunResolver::end):

    Resolver -> RunResolver

(WebCore::SimpleLineLayout::LineResolver::Iterator::Iterator):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator++):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator==):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator!=):
(WebCore::SimpleLineLayout::LineResolver::Iterator::operator*):
(WebCore::SimpleLineLayout::LineResolver::LineResolver):
(WebCore::SimpleLineLayout::LineResolver::begin):
(WebCore::SimpleLineLayout::LineResolver::end):

    Add LineResolver around RunResolver. It resolves the line rectangles.

(WebCore::SimpleLineLayout::runResolver):
(WebCore::SimpleLineLayout::lineResolver):

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

7 years agoAX: elements with explicit tabindex should expose AXFocused as writable, since mouse...
cfleizach@apple.com [Tue, 29 Oct 2013 16:40:08 +0000 (16:40 +0000)]
AX: elements with explicit tabindex should expose AXFocused as writable, since mouse clicks can focus it
https://bugs.webkit.org/show_bug.cgi?id=121335

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Re-order logic that determines if a <span> should appear as an accessible element.
The change is that if an element canSetFocus() it should always be in the AX tree.

Test: accessibility/tabindex-elements-are-accessible.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

LayoutTests:

* accessibility/tabindex-elements-are-accessible-expected.txt: Added.
* accessibility/tabindex-elements-are-accessible.html: Added.
      New test to ensure that if tabindex is on an element, it is in the AX tree.
* platform/mac/accessibility/table-with-row-col-of-headers-expected.txt:
* platform/mac/accessibility/table-with-row-col-of-headers.html:
      Update to reflect that if an ignored <table> has a tabindex, then it should at least be an AXGroup
* platform/mac/accessibility/update-children-when-aria-role-changes.html:
      Update so that the <span> elements being used don't have tabindex, which forces them to be in the AX tree,
      which changes the output of the test (basically we'd need to query the child of those elements instead).

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

7 years ago[GTK] enable media-stream in build-webkit
philn@webkit.org [Tue, 29 Oct 2013 16:32:44 +0000 (16:32 +0000)]
[GTK] enable media-stream in build-webkit
https://bugs.webkit.org/show_bug.cgi?id=123144

Reviewed by Martin Robinson.

Source/WebCore:

* GNUmakefile.list.am: Add new MediaStream files to the GTK port build.

Tools:

* Scripts/webkitperl/FeatureList.pm: Enable media-stream build
for the GTK+ port.

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

7 years agoAX: Webkit does not expose AXRequired on input type=file
cfleizach@apple.com [Tue, 29 Oct 2013 16:01:17 +0000 (16:01 +0000)]
AX: Webkit does not expose AXRequired on input type=file
https://bugs.webkit.org/show_bug.cgi?id=123376

Reviewed by Mario Sanchez Prada.

Source/WebCore:

File upload buttons should expose AXRequired, since they take an input state.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
(WebCore::AccessibilityNodeObject::alternativeText):

LayoutTests:

Modify existing test case to test for file upload buttons.

* accessibility/html5-required-attribute-expected.txt:
* accessibility/html5-required-attribute.html:

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

7 years agoEFL 32 bit buildbot doesn't work on dashboard
gyuyoung.kim@samsung.com [Tue, 29 Oct 2013 12:42:21 +0000 (12:42 +0000)]
EFL 32 bit buildbot doesn't work on dashboard
https://bugs.webkit.org/show_bug.cgi?id=123435

Reviewed by Csaba Osztrogonác.

32 bit buildbot doesn't work on dashboard because name is different from buildbot list.

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

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

7 years agoFix the ChangeLog landed in r158185. The RemoteLayerTreeTextStream class is affected...
zandobersek@gmail.com [Tue, 29 Oct 2013 10:18:40 +0000 (10:18 +0000)]
Fix the ChangeLog landed in r158185. The RemoteLayerTreeTextStream class is affected, not RemoteLayerTreeTransaction.

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

7 years agoUnreviewed. Update NEWS and Versions.m4 for 2.3.1 release.
carlosgc@webkit.org [Tue, 29 Oct 2013 10:12:32 +0000 (10:12 +0000)]
Unreviewed. Update NEWS and Versions.m4 for 2.3.1 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.1.

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

7 years agoRe-enable simple line layout for EFL
jinwoo7.song@samsung.com [Tue, 29 Oct 2013 09:56:36 +0000 (09:56 +0000)]
Re-enable simple line layout for EFL
https://bugs.webkit.org/show_bug.cgi?id=123402

Reviewed by Antti Koivisto.

Source/WebCore:

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for EFL port, so the port
can use the simple line layout.

Source/WTF:

* wtf/FeatureDefines.h: Enable 8-bit TextRun support for EFL port.

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

7 years agoUnreviewed, follow-up to r158185. Export the required symbol.
zandobersek@gmail.com [Tue, 29 Oct 2013 09:32:18 +0000 (09:32 +0000)]
Unreviewed, follow-up to r158185. Export the required symbol.
This should fix the Mac debug build.

* WebCore.exp.in:

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

7 years agoText selected with double-click gets unselected after DOM modification
commit-queue@webkit.org [Tue, 29 Oct 2013 08:38:22 +0000 (08:38 +0000)]
Text selected with double-click gets unselected after DOM modification
https://bugs.webkit.org/show_bug.cgi?id=114227

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-10-29
Reviewed by Ryosuke Niwa.

Source/WebCore:

Before this patch when selection is done by double-click (start and base remain
same) and DOM is modified then selection gets vanished. This does not
happen when selection is done by dragging mouse. This happens because
on double-click base and extent remain the same and on DOM
modification we update the selection with base and extent, so we loose
the selection. Since in double-click case start/end contain the
correct selection, same should be used after dom modification to
update selection.

Test: editing/selection/double-click-selection-with-dom-mutation.html

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::textWasReplaced): use start/end to update
selection in case double click selection. Added a check for base !=
extent, if base != extent use base/extent to update the selection
otherwise use start/end with directionality check.

LayoutTests:

New Testcase to test that selection remain intact when selection is
created by double-click and then dom is modified.

* editing/selection/double-click-selection-with-dom-mutation-expected.txt: Added.
* editing/selection/double-click-selection-with-dom-mutation.html: Added.

Rebaselined the below test cases.
* platform/mac/editing/deleting/smart-delete-003-expected.txt:
* platform/mac/editing/deleting/smart-delete-004-expected.txt:

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

7 years agoUnreviewed Mac debug build fix after r158183.
zandobersek@gmail.com [Tue, 29 Oct 2013 08:34:18 +0000 (08:34 +0000)]
Unreviewed Mac debug build fix after r158183.
Remove the duplicated << overloaded operator from RemoteLayerTreeTransaction for printing out
a given FloatSize object. The RemoteLayerTreeTransaction inherits from TextStream, which already
provides that overloaded operator. Format of the output is a bit different so hopefully nothing
breaks further.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):

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

7 years ago[CSSRegions] Display anonymous regions in DRT
mihnea@adobe.com [Tue, 29 Oct 2013 08:23:57 +0000 (08:23 +0000)]
[CSSRegions] Display anonymous regions in DRT
https://bugs.webkit.org/show_bug.cgi?id=122963

Reviewed by Alexandru Chiculita.

After https://bugs.webkit.org/show_bug.cgi?id=119135, css regions are modelled using an anonymous
RenderNamedFlowFragment object inside the block having a valid -webkit-flow-from.
This patch changes the way elements | pseudo-elements with -webkit-flow-from are displayed
in test dumps.

Source/WebCore:

Before:
    RenderRegion {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
After:
    RenderBlock (positioned) {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
        RenderNamedFlowFragment at (1,1) size 50x50

Before:
    Flow Threads
        Thread with flow-name 'article'
        Regions for flow 'article'
            RenderRegion {DIV} #region_1
            RenderRegion {DIV} #region_2
After:
    Named flows
        Named flow 'article'
        Regions for named flow 'article'
            RenderNamedFlowFragment (anonymous child of {DIV::before} #region_1)
            RenderNamedFlowFragment (anonymous child of {DIV} #region_2)

Changed existing tests based on the new dumps.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::renderName):
* rendering/RenderNamedFlowFragment.h: Add a comment explaining the purpose of the class.
* rendering/RenderRegion.h:
* rendering/RenderTreeAsText.cpp:
(WebCore::write):
(WebCore::writeRenderRegionList): Adjust function to display info for anonymous regions too.
(WebCore::writeRenderNamedFlowThreads): Separate dump of valid and invalid regions for a named flow.

LayoutTests:

Changed expected files for mac port, removed expectations for gtk | efl and added [Missing]
in TestExpectations for these platforms. Results need to be generated again for the [Missing] lines.

* fast/regions/auto-size/autoheight-regions-mark-expected.txt: Removed.
* fast/regions/flows-dependency-dynamic-remove-expected.txt: Removed.
* fast/regions/flows-dependency-same-flow-expected.txt: Removed.
* platform/efl/TestExpectations:
* platform/efl/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/region-dynamic-after-before-expected.txt: Removed.
* platform/efl/fast/regions/region-generated-content-before-after-expected.txt: Removed.
* platform/efl/fast/regions/text-region-split-small-pagination-expected.txt: Removed.
* platform/efl/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
* platform/efl/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt: Removed.
* platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.png: Removed.
* platform/efl/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Removed.
* platform/efl/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Removed.
* platform/efl/fast/repaint/region-painting-invalidation-expected.txt: Removed.
* platform/gtk/TestExpectations:
* platform/gtk/fast/regions/flows-dependency-same-flow-expected.png: Removed.
* platform/gtk/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/region-dynamic-after-before-expected.txt: Removed.
* platform/gtk/fast/regions/region-generated-content-before-after-expected.txt: Removed.
* platform/gtk/fast/regions/text-region-split-small-pagination-expected.txt: Removed.
* platform/gtk/fast/regions/top-overflow-out-of-second-region-expected.txt: Removed.
* platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.png: Removed.
* platform/gtk/fast/repaint/line-flow-with-floats-in-regions-expected.txt: Removed.
* platform/gtk/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.png: Removed.
* platform/mac/fast/regions/auto-size/autoheight-regions-mark-expected.png: Copied from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
* platform/mac/fast/regions/auto-size/autoheight-regions-mark-expected.txt: Added.
* platform/mac/fast/regions/autoheight-regions-mark-expected.png: Removed.
* platform/mac/fast/regions/flows-dependency-dynamic-remove-expected.txt: Added.
* platform/mac/fast/regions/flows-dependency-same-flow-expected.png: Copied from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
* platform/mac/fast/regions/flows-dependency-same-flow-expected.txt: Added.
* platform/mac/fast/regions/iframe-html-collected-expected.png: Renamed from LayoutTests/fast/regions/flows-dependency-same-flow-expected.png.
* platform/mac/fast/regions/iframe-html-collected-expected.txt: Renamed from LayoutTests/fast/regions/iframe-html-collected-expected.txt.
* platform/mac/fast/regions/multiple-directionality-changes-in-variable-width-regions-expected.txt:
* platform/mac/fast/regions/region-dynamic-after-before-expected.txt:
* platform/mac/fast/regions/region-generated-content-before-after-expected.txt:
* platform/mac/fast/regions/text-region-split-small-pagination-expected.txt:
* platform/mac/fast/regions/top-overflow-out-of-second-region-expected.txt:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png: Added.
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:
* platform/mac/fast/repaint/line-flow-with-floats-in-regions-expected.txt:
* platform/mac/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt: Renamed from LayoutTests/fast/repaint/overflow-flipped-writing-mode-block-in-regions-expected.txt.
* platform/mac/fast/repaint/region-painting-invalidation-expected.txt:
* platform/mac/fast/repaint/region-painting-via-layout-expected.txt: Renamed from LayoutTests/fast/repaint/region-painting-via-layout-expected.txt.

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

7 years agoMove writeIndent, overloaded << operators from RenderTreeAsText to TextStream
zandobersek@gmail.com [Tue, 29 Oct 2013 07:50:14 +0000 (07:50 +0000)]
Move writeIndent, overloaded << operators from RenderTreeAsText to TextStream
https://bugs.webkit.org/show_bug.cgi?id=116012

Reviewed by Simon Fraser.

The writeIndent method and overloaded << operators for writing out vectors and points and rectangles
of various types are not specific to the render tree nor do they depend on any rendering-specific interface.

* page/scrolling/ScrollingStateNode.cpp:
* page/scrolling/ScrollingStateNode.h:
(ScrollingStateNode): Remove the writeIndent declaration, it's functionally the same as the TextStream method.
* platform/graphics/GraphicsLayer.cpp:
* platform/graphics/GraphicsLayer.h:
(GraphicsLayer): Ditto.
* platform/graphics/filters/DistantLightSource.cpp: Remove the RenderTreeAsText.h inclusion or replace it with
the inclusion of the TextStream.h header where required. The writeIndent method is now declared there.
* platform/graphics/filters/FEBlend.cpp: Ditto.
* platform/graphics/filters/FEColorMatrix.cpp: Ditto.
* platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
* platform/graphics/filters/FEComposite.cpp: Ditto.
* platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
* platform/graphics/filters/FECustomFilter.cpp: Ditto.
* platform/graphics/filters/FEDiffuseLighting.cpp: Ditto.
* platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
* platform/graphics/filters/FEDropShadow.cpp: Ditto.
* platform/graphics/filters/FEFlood.cpp: Ditto.
* platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
* platform/graphics/filters/FEMerge.cpp: Ditto.
* platform/graphics/filters/FEMorphology.cpp: Ditto.
* platform/graphics/filters/FEOffset.cpp: Ditto.
* platform/graphics/filters/FESpecularLighting.cpp: Ditto.
* platform/graphics/filters/FETurbulence.cpp: Ditto.
* platform/graphics/filters/SourceAlpha.cpp: Ditto.
* platform/graphics/filters/SourceGraphic.cpp: Ditto.
* platform/text/TextStream.cpp: Move the writeIndent and operators' definitions here.
(WebCore::operator<<):
(WebCore):
(WebCore::writeIndent):
* platform/text/TextStream.h: Move the writeIndent and operators' declarations here.
(WebCore):
(TextStream):
(WebCore::TextStream::operator<<):
* rendering/RenderTreeAsText.cpp: Move the writeIndent and operators' definitions into TextStream.
(WebCore):
* rendering/RenderTreeAsText.h: Move the writeIndent and operators' declarations into TextStream.
(WebCore):

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

7 years agoClean up ScopedEventQueue
zandobersek@gmail.com [Tue, 29 Oct 2013 07:42:40 +0000 (07:42 +0000)]
Clean up ScopedEventQueue
https://bugs.webkit.org/show_bug.cgi?id=123408

Reviewed by Darin Adler.

Clean up the ScopedEventQueue implementation. ScopedEventQueue::instance() should return a reference to a
NeverDestroyed<ScopedEventQueue> object. The static ScopedEventQueue::s_instance pointer is removed.

The ScopedEventQueue destructor, the dispatchAllEvents method and the scope level incrementation/decrementation
methods are made private. NeverDestroyed<ScopedEventQueue> and EventQueueScope are made friends of the
ScopedEventQueue class so they can access the constructor and the incrementation/decrementation methods, respectively.

ScopedEventQueue method definitions are reordered to follow the order of their declarations in the header file.
ScopedEventQueue::dispatchAllEvents() now uses std::move to efficiently dispatch and clear all currently queued events.

* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchScopedEvent):
* dom/ScopedEventQueue.cpp:
(WebCore::ScopedEventQueue::instance):
(WebCore::ScopedEventQueue::dispatchAllEvents):
* dom/ScopedEventQueue.h:
(WebCore::EventQueueScope::EventQueueScope):
(WebCore::EventQueueScope::~EventQueueScope):

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

7 years agoapplyTextTransform() should take a const RenderStyle&.
akling@apple.com [Tue, 29 Oct 2013 05:18:24 +0000 (05:18 +0000)]
applyTextTransform() should take a const RenderStyle&.
<https://webkit.org/b/123434>

This function is always called with an existing RenderStyle object.

Reviewed by Anders Carlsson.

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

7 years agoRenderSVGResource::applyResource() should take a const RenderStyle&.
akling@apple.com [Tue, 29 Oct 2013 05:14:42 +0000 (05:14 +0000)]
RenderSVGResource::applyResource() should take a const RenderStyle&.
<https://webkit.org/b/123433>

These functions are always called with an existing RenderStyle object
so let them take a const reference instead of a raw pointer.
Also sprinkled some missing OVERRIDEs.

Reviewed by Anders Carlsson.

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

7 years agoFix bug URL in ChangeLog.
akling@apple.com [Tue, 29 Oct 2013 05:13:13 +0000 (05:13 +0000)]
Fix bug URL in ChangeLog.

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

7 years agoRemove unused RenderTextControl::textBaseStyle().
akling@apple.com [Tue, 29 Oct 2013 05:09:22 +0000 (05:09 +0000)]
Remove unused RenderTextControl::textBaseStyle().
<https://webkit.org/b/123423>

Reviewed by Anders Carlsson.

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

7 years agoFix path for xss-DENIED-xsl-document-redirect test, and mark
simon.fraser@apple.com [Tue, 29 Oct 2013 04:42:47 +0000 (04:42 +0000)]
Fix path for xss-DENIED-xsl-document-redirect test, and mark
editing/selection/5057506-2.html as image-only failure.

* platform/mac-wk2/TestExpectations:

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

7 years agoFloating left the header broke other pages, and this CSS has no way to customize
simon.fraser@apple.com [Tue, 29 Oct 2013 04:38:32 +0000 (04:38 +0000)]
Floating left the header broke other pages, and this CSS has no way to customize
per-page.

* BuildSlaveSupport/build.webkit.org-config/public_html/default.css:

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

7 years agoRemove underlines on the bot names in the header.
simon.fraser@apple.com [Tue, 29 Oct 2013 04:34:31 +0000 (04:34 +0000)]
Remove underlines on the bot names in the header.

* BuildSlaveSupport/build.webkit.org-config/public_html/default.css:
(td.LastBuild a):

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

7 years agoAdd EFL release bots to the buildbot dashboard
gyuyoung.kim@samsung.com [Tue, 29 Oct 2013 04:33:15 +0000 (04:33 +0000)]
Add EFL release bots to the buildbot dashboard
https://bugs.webkit.org/show_bug.cgi?id=123430

Reviewed by Darin Adler.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot): add 64 bits release wk2 and wk1 testers and 32 bits release builder.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.linux-efl img.logo): use the EFL logo in its dashboard line.

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

7 years agoMore waterfall tweaking.
simon.fraser@apple.com [Tue, 29 Oct 2013 04:32:06 +0000 (04:32 +0000)]
More waterfall tweaking.

* BuildSlaveSupport/build.webkit.org-config/public_html/default.css:
(body > .header):
(td.LastBuild):
(td.LastBuild a):
(td.LastBuild,td.Activity a,td.Change a,td.Builder a):

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

7 years agoMore waterfall tweaking.
simon.fraser@apple.com [Tue, 29 Oct 2013 04:27:33 +0000 (04:27 +0000)]
More waterfall tweaking.

* BuildSlaveSupport/build.webkit.org-config/public_html/default.css:
(body.interface):
(body > hr):
(div.content h1):
(body > .header):
(td.Activity a,td.Change a,td.Builder a):
(td.Builder):

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

7 years agoHTML input type objects should be managed through std::unique_ptr
commit-queue@webkit.org [Tue, 29 Oct 2013 04:20:31 +0000 (04:20 +0000)]
HTML input type objects should be managed through std::unique_ptr
https://bugs.webkit.org/show_bug.cgi?id=123160

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-10-28
Reviewed by Darin Adler.

Make the constructors of the InputType subclasses public. This makes it possible to use std::make_unique on these classes
and makes the T::create() helpers redundant. New instances of these classes are now managed through std::unique_ptr.

InputType::create() now uses a NeverDestroyed InputTypeFactoryMap that maps type names to InputTypeFactoryFunctions and
gets populated when the method is first called and the map is still empty. Certain types are not added to the factory map
if they're disabled at runtime.

The factory is used to create the new InputType object if the requested type was found in the map, and TextInputType is used otherwise.

* html/ButtonInputType.cpp:
* html/ButtonInputType.h:
(WebCore::ButtonInputType::ButtonInputType):
* html/CheckboxInputType.cpp:
* html/CheckboxInputType.h:
(WebCore::CheckboxInputType::CheckboxInputType):
* html/ColorInputType.cpp:
* html/ColorInputType.h:
(WebCore::ColorInputType::ColorInputType):
* html/DateInputType.cpp:
* html/DateInputType.h:
* html/DateTimeInputType.cpp:
* html/DateTimeInputType.h:
(WebCore::DateTimeInputType::DateTimeInputType):
* html/DateTimeLocalInputType.cpp:
* html/DateTimeLocalInputType.h:
(WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
* html/EmailInputType.cpp:
* html/EmailInputType.h:
(WebCore::EmailInputType::EmailInputType):
* html/FileInputType.cpp:
* html/FileInputType.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType):
* html/HTMLInputElement.h:
* html/HiddenInputType.cpp:
* html/HiddenInputType.h:
(WebCore::HiddenInputType::HiddenInputType):
* html/ImageInputType.cpp:
(WebCore::ImageInputType::ImageInputType):
* html/ImageInputType.h:
* html/InputType.cpp:
(WebCore::createInputType): A templated helper that constructs a new InputType subclass object through std::make_unique.
(WebCore::populateInputTypeFactoryMap): Populates the passed-in map with type-createInputType<T> pairs.
(WebCore::InputType::create): Get the InputTypeFactoryFunction for the specified type, or fall back to TextInputType.
(WebCore::InputType::createText):
* html/InputType.h:
* html/MonthInputType.cpp:
* html/MonthInputType.h:
(WebCore::MonthInputType::MonthInputType):
* html/NumberInputType.cpp:
* html/NumberInputType.h:
(WebCore::NumberInputType::NumberInputType):
* html/PasswordInputType.cpp:
* html/PasswordInputType.h:
(WebCore::PasswordInputType::PasswordInputType):
* html/RadioInputType.cpp:
* html/RadioInputType.h:
(WebCore::RadioInputType::RadioInputType):
* html/RangeInputType.cpp:
* html/RangeInputType.h:
* html/ResetInputType.cpp:
* html/ResetInputType.h:
(WebCore::ResetInputType::ResetInputType):
* html/SearchInputType.cpp:
(WebCore::SearchInputType::SearchInputType):
* html/SearchInputType.h:
* html/SubmitInputType.cpp:
* html/SubmitInputType.h:
(WebCore::SubmitInputType::SubmitInputType):
* html/TelephoneInputType.cpp:
* html/TelephoneInputType.h:
(WebCore::TelephoneInputType::TelephoneInputType):
* html/TextInputType.cpp:
* html/TextInputType.h:
(WebCore::TextInputType::TextInputType):
* html/TimeInputType.cpp:
* html/TimeInputType.h:
* html/URLInputType.cpp:
* html/URLInputType.h:
(WebCore::URLInputType::URLInputType):
* html/WeekInputType.cpp:
* html/WeekInputType.h:
(WebCore::WeekInputType::WeekInputType):

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

7 years agoRefactor IDB factory creation.
beidson@apple.com [Tue, 29 Oct 2013 04:19:39 +0000 (04:19 +0000)]
Refactor IDB factory creation.
https://bugs.webkit.org/show_bug.cgi?id=123347

Reviewed by Andreas Kling.

- Rework how database directory location is passed around.
- Make (some) SecurityOrigin arguments be references instead of pointers.
- Add two SecurityOrigin arguments to opening databases for future use.

Source/WebCore:

* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::openInternal):

* Modules/indexeddb/IDBFactoryBackendInterface.cpp:
(WebCore::IDBFactoryBackendInterface::create):
* Modules/indexeddb/IDBFactoryBackendInterface.h:

* Modules/indexeddb/PageGroupIndexedDatabase.cpp:
(WebCore::PageGroupIndexedDatabase::PageGroupIndexedDatabase):
(WebCore::PageGroupIndexedDatabase::from):
(WebCore::PageGroupIndexedDatabase::factoryBackend):
* Modules/indexeddb/PageGroupIndexedDatabase.h:

* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
(WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
(WebCore::WorkerGlobalScopeIndexedDatabase::from):
(WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:

* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
(WebCore::IDBBackingStoreLevelDB::open):
(WebCore::IDBBackingStoreLevelDB::openInMemory):
* Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:

* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
(WebCore::computeFileIdentifier):
(WebCore::computeUniqueIdentifier):
(WebCore::IDBFactoryBackendLevelDB::IDBFactoryBackendLevelDB):
(WebCore::IDBFactoryBackendLevelDB::getDatabaseNames):
(WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
(WebCore::IDBFactoryBackendLevelDB::openBackingStore):
(WebCore::IDBFactoryBackendLevelDB::open):
* Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
(WebCore::IDBFactoryBackendLevelDB::create):

* WebCore.exp.in:

* platform/DatabaseStrategy.cpp:
(WebCore::DatabaseStrategy::createIDBFactoryBackend):
* platform/DatabaseStrategy.h:

Source/WebKit2:

* Shared/Databases/IndexedDB/IDBUtilities.cpp:
(WebKit::uniqueDatabaseIdentifier):
* Shared/Databases/IndexedDB/IDBUtilities.h:

* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
(WebKit::WebIDBFactoryBackend::WebIDBFactoryBackend):
(WebKit::WebIDBFactoryBackend::open):
* WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
(WebKit::WebIDBFactoryBackend::create):

* WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp:
(WebKit::WebProcessIDBDatabaseBackend::WebProcessIDBDatabaseBackend):
* WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::createIDBFactoryBackend):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

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

7 years agoApply changes to default.css, revert buildbot.css which seems to be unused.
simon.fraser@apple.com [Tue, 29 Oct 2013 04:16:45 +0000 (04:16 +0000)]
Apply changes to default.css, revert buildbot.css which seems to be unused.

* BuildSlaveSupport/build.webkit.org-config/public_html/buildbot.css:
(body):
(body, td):
(a:link,a:visited,a:active):
(td.Time):
(td.Activity):
(.exception, td.offline):
* BuildSlaveSupport/build.webkit.org-config/public_html/default.css:
(body.interface):
(.auth):
(td.LastBuild):
(td.Time):
(td.Activity):
(.offline,td.offline,.retry):

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

7 years agoPrettify the waterfall page, and make it a little more space-efficient.
simon.fraser@apple.com [Tue, 29 Oct 2013 04:03:06 +0000 (04:03 +0000)]
Prettify the waterfall page, and make it a little more space-efficient.

* BuildSlaveSupport/build.webkit.org-config/public_html/buildbot.css:
(body, td):
(body.interface):
(.auth):
(.header):
(div.content h1):
(a):
(a:link,a:active):
(a:link,a:visited,a:active):
(td.LastBuild):
(td.Time):
(td.Activity):
(.exception, td.offline, .retry):

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

7 years agoFix Lion readableName (spotted by Dan Bernstein).
simon.fraser@apple.com [Tue, 29 Oct 2013 03:29:11 +0000 (03:29 +0000)]
Fix Lion readableName (spotted by Dan Bernstein).

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:

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

7 years agoRenderElement::style() should return a reference.
akling@apple.com [Tue, 29 Oct 2013 02:58:43 +0000 (02:58 +0000)]
RenderElement::style() should return a reference.
<https://webkit.org/b/123414>

Now that renderers always have style, go ahead and make style()
return a RenderStyle&.

There are countless opportunities for further cleanup enabled by
this change. I'm simply passing &style() in many cases where we
can really do something nicer instead.

Reviewed by Anders Carlsson.

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

7 years agoMake TileController create the appropriate PlatformCALayer subclasses
timothy_horton@apple.com [Tue, 29 Oct 2013 02:45:08 +0000 (02:45 +0000)]
Make TileController create the appropriate PlatformCALayer subclasses
https://bugs.webkit.org/show_bug.cgi?id=123418

Reviewed by Simon Fraser.

Add PlatformCALayer::createCompatibleLayer, which is overridden in
each of the subclasses to create a PlatformCALayer instance of the same
subclass. This is used in TileController to make bare PlatformCALayers
of the correct type (Mac, Win, or Remote).

* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::createCompatibleLayer):
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayerWin::createCompatibleLayer):
* platform/graphics/ca/win/PlatformCALayerWin.h:
Add createCompatibleLayer and implement it in the subclasses.

* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::TileController):
(WebCore::TileController::tiledScrollingIndicatorLayer):
(WebCore::TileController::createTileLayer):
Make use of createCompatibleLayer when creating PlatformCALayers.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::createCompatibleLayer):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
Add createCompatibleLayer and implement it in the subclasses.

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

7 years agoWeb Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal
achicu@adobe.com [Tue, 29 Oct 2013 02:38:09 +0000 (02:38 +0000)]
Web Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal
https://bugs.webkit.org/show_bug.cgi?id=123424

Reviewed by Timothy Hatcher.

Source/WebCore:

Test: inspector-protocol/model/content-flow-content-nodes.html

Adding two new inspector-protocol APIs to handle the cases when new elements are
added or removed from a named flow. These APIs will trigger even though there
is no region associated with the named flow.

* inspector/Inspector.json:
* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
(WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElementImpl):
(WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElementImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElement):
(WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElement):
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
(WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):

Source/WebInspectorUI:

Exposed the new CSS Agent events to the ContentFlow class that will now maintain
a list of nodes in the "contentNodes" property.

* UserInterface/CSSObserver.js:
(WebInspector.CSSObserver.prototype.regionOversetChanged):
(WebInspector.CSSObserver.prototype.registeredNamedFlowContentElement):
(WebInspector.CSSObserver.prototype.unregisteredNamedFlowContentElement):
* UserInterface/ContentFlow.js:
(WebInspector.ContentFlow):
(WebInspector.ContentFlow.prototype.set overset):
(WebInspector.ContentFlow.prototype.get contentNodes):
(WebInspector.ContentFlow.prototype.insertContentNodeBefore):
(WebInspector.ContentFlow.prototype.appendContentNode):
(WebInspector.ContentFlow.prototype.removeContentNode):
* UserInterface/DOMTreeManager.js:
(WebInspector.DOMTreeManager.prototype._createContentFlowFromPayload):
(WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
(WebInspector.DOMTreeManager.prototype.regionOversetChanged):
(WebInspector.DOMTreeManager.prototype.registeredNamedFlowContentElement):
(WebInspector.DOMTreeManager.prototype.unregisteredNamedFlowContentElement):
* UserInterface/InspectorBackendCommands.js:

LayoutTests:

Added test to check that the two new events are triggered correctly and can be used to maintain
the flow content nodes list on the inspector side.

* inspector-protocol/model/content-flow-content-nodes-expected.txt: Added.
* inspector-protocol/model/content-flow-content-nodes.html: Added.

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

7 years agoAdd tooltips to the platform icons in Dashboard
simon.fraser@apple.com [Tue, 29 Oct 2013 01:38:06 +0000 (01:38 +0000)]
Add tooltips to the platform icons in Dashboard
https://bugs.webkit.org/show_bug.cgi?id=123429

Reviewed by Alexey Proskuryakov.

Add a human readable name to Buildbot.Platform entries, and use it to
show a tooltip on the ring image.

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

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

7 years agoLast few Mavericks WK2 failures.
simon.fraser@apple.com [Tue, 29 Oct 2013 01:38:05 +0000 (01:38 +0000)]
Last few Mavericks WK2 failures.

* platform/mac-wk2/TestExpectations:

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

7 years agoWeb Inspector: Remove unused inspector/inline-javascript-imports.py
commit-queue@webkit.org [Tue, 29 Oct 2013 00:56:17 +0000 (00:56 +0000)]
Web Inspector: Remove unused inspector/inline-javascript-imports.py
https://bugs.webkit.org/show_bug.cgi?id=123425

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-10-28
Reviewed by Timothy Hatcher.

* inspector/inline-javascript-imports.py: Removed.

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

7 years agoWeb Inspector: Remove unused "externs" files and generators
commit-queue@webkit.org [Tue, 29 Oct 2013 00:52:19 +0000 (00:52 +0000)]
Web Inspector: Remove unused "externs" files and generators
https://bugs.webkit.org/show_bug.cgi?id=123427

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-10-28
Reviewed by Timothy Hatcher.

* inspector/InjectedScriptExterns.js: Removed.
* inspector/generate_protocol_externs.py: Removed.

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

7 years agoMark some more Mavericks/WK2 tests as failing.
simon.fraser@apple.com [Mon, 28 Oct 2013 23:52:39 +0000 (23:52 +0000)]
Mark some more Mavericks/WK2 tests as failing.

We have no way currently to land new results for just
WK2 on Mavericks.

* platform/mac-wk2/TestExpectations:

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

7 years agoOSRExit::m_watchpointIndex should be in OSRExitCompilationInfo
fpizlo@apple.com [Mon, 28 Oct 2013 22:32:37 +0000 (22:32 +0000)]
OSRExit::m_watchpointIndex should be in OSRExitCompilationInfo
https://bugs.webkit.org/show_bug.cgi?id=123423

Reviewed by Mark Hahnenberg.

Also enable ExitKind to tell you if it's a watchpoint.

* bytecode/ExitKind.cpp:
(JSC::exitKindToString):
* bytecode/ExitKind.h:
(JSC::isWatchpoint):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::appendExitInfo):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
* dfg/DFGOSRExit.h:
* dfg/DFGOSRExitCompilationInfo.h:
(JSC::DFG::OSRExitCompilationInfo::OSRExitCompilationInfo):
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

7 years agoUpstream remaining PLATFORM(IOS) and ENABLE(REMOTE_INSPECTOR) pieces
commit-queue@webkit.org [Mon, 28 Oct 2013 22:08:51 +0000 (22:08 +0000)]
Upstream remaining PLATFORM(IOS) and ENABLE(REMOTE_INSPECTOR) pieces
https://bugs.webkit.org/show_bug.cgi?id=123411

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-10-28
Reviewed by Timothy Hatcher.

Source/WebCore:

Include an InspectorClient hook for when node searching is enabled / disabled.

* inspector/InspectorClient.h:
(WebCore::InspectorClient::didSetSearchingForNode):
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::setSearchingForNode):
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::didSetSearchingForNode):
* inspector/InspectorOverlay.h:

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj:

Source/WebKit/mac:

Upstream iOS node highlighting and view indication.

* WebCoreSupport/WebInspectorClient.h:
* WebInspector/WebInspector.h:
* WebInspector/WebInspector.mm:
* WebInspector/WebNodeHighlight.h:
* WebInspector/WebNodeHighlight.mm:
(-[WebHighlightLayer initWithHighlightView:webView:]):
(-[WebHighlightLayer layoutSublayers]):
(-[WebHighlightLayer actionForKey:]):
(-[WebNodeHighlight initWithTargetView:inspectorController:]):
(-[WebNodeHighlight dealloc]):
(-[WebNodeHighlight attach]):
* WebInspector/WebNodeHighlightView.h:
* WebInspector/WebNodeHighlightView.mm:
(-[WebNodeHighlightView initWithWebNodeHighlight:]):
(-[WebNodeHighlightView dealloc]):
(-[WebNodeHighlightView _attach:numLayers:]):
(findIntersectionOnLineBetweenPoints):
(quadIntersection):
(layerPathWithHole):
(layerPath):
(-[WebNodeHighlightView _layoutForNodeHighlight:parent:]):
(-[WebNodeHighlightView _layoutForRectsHighlight:parent:]):
(-[WebNodeHighlightView layoutSublayers:]):
* WebInspector/WebNodeHighlighter.mm:
(-[WebNodeHighlighter highlight]):
* WebView/WebIndicateLayer.h: Added.
* WebView/WebIndicateLayer.mm: Added.
(-[WebIndicateLayer layoutSublayers]):
(-[WebIndicateLayer actionForKey:]):
* WebView/WebView.mm:
(-[WebView setIndicatingForRemoteInspector:]):
(-[WebView setHostApplicationBundleId:name:]):
(-[WebView hostApplicationBundleId]):
(-[WebView hostApplicationName]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(-[WebViewPrivate dealloc]):

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

7 years agoAllow explicit sort order for Dashboard platforms
simon.fraser@apple.com [Mon, 28 Oct 2013 22:01:22 +0000 (22:01 +0000)]
Allow explicit sort order for Dashboard platforms
https://bugs.webkit.org/show_bug.cgi?id=123419

Reviewed by Tim Hatcher.

Assign a specific sort order to Dashboard platforms, rather than
just using object property order.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
(documentReady):

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

7 years agoAdd skipped or failing expectations for Mavericks WK2.
simon.fraser@apple.com [Mon, 28 Oct 2013 22:00:25 +0000 (22:00 +0000)]
Add skipped or failing expectations for Mavericks WK2.

* platform/mac-wk2/TestExpectations:

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

7 years agoWebGL flake.
simon.fraser@apple.com [Mon, 28 Oct 2013 21:27:30 +0000 (21:27 +0000)]
WebGL flake.

* platform/mac/TestExpectations:

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

7 years agoTidy up main http://build.webkit.org page
simon.fraser@apple.com [Mon, 28 Oct 2013 21:24:39 +0000 (21:24 +0000)]
Tidy up main http://build.webkit.org page
https://bugs.webkit.org/show_bug.cgi?id=123413

Reviewed by Alexey Proskuryakov.

Break the list of links into sections. Add some font style.

* BuildSlaveSupport/build.webkit.org-config/templates/root.html:

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

7 years agoRename applyPageScaleFactorInCompositor to delegatesPageScaling
benjamin@webkit.org [Mon, 28 Oct 2013 21:19:27 +0000 (21:19 +0000)]
Rename applyPageScaleFactorInCompositor to delegatesPageScaling
https://bugs.webkit.org/show_bug.cgi?id=123417

Reviewed by Simon Fraser.

Source/WebCore:

* page/Frame.cpp:
(WebCore::Frame::frameScaleFactor):
* page/FrameView.cpp:
(WebCore::FrameView::visibleContentScaleFactor):
* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
* page/Settings.in:
* platform/ScrollView.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):

Source/WebKit2:

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setUseFixedLayout):

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

7 years agoParsing support for -webkit-text-decoration-skip: ink
commit-queue@webkit.org [Mon, 28 Oct 2013 21:05:35 +0000 (21:05 +0000)]
Parsing support for -webkit-text-decoration-skip: ink
https://bugs.webkit.org/show_bug.cgi?id=123358

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2013-10-28
Reviewed by Dean Jackson.

Source/JavaScriptCore:

Adding ENABLE(CSS3_TEXT_DECORATION)

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Adds initial parsing support for parsing -webkit-text-decoration-skip with
values of "none" and "ink". This work is behind the new
ENABLE(CSS3_TEXT_DECORATION) compile-time flag.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html

* Configurations/FeatureDefines.xcconfig: Adding ENABLE(CSS3_TEXT_DECORATION)
* css/CSSComputedStyleDeclaration.cpp: Mapping internal representation of text-decoration-skip
to a CSSValue
(WebCore::renderTextDecorationSkipFlagsToCSSValue):
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp: Actually parsing tokens
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTextDecorationSkip):
* css/CSSParser.h:
* css/CSSPropertyNames.in: adding -webkit-text-decoration-skip
* css/CSSValueKeywords.in: adding ink
* css/DeprecatedStyleBuilder.cpp: Mapping from CSSValue to internal representation
(WebCore::ApplyPropertyTextDecorationSkip::valueToDecorationSkip):
(WebCore::ApplyPropertyTextDecorationSkip::applyValue):
(WebCore::ApplyPropertyTextDecorationSkip::createHandler):
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
* css/StyleResolver.cpp: decoration-skip uses DeprecatedStyleBuilder
(WebCore::StyleResolver::applyProperty):
* rendering/style/RenderStyle.h: Adding functions for modifying and accessing decoration-skip properties
* rendering/style/RenderStyleConstants.h: Definition of internal representation
* rendering/style/StyleRareInheritedData.cpp: Setting up constructors and comparators
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
* rendering/style/StyleRareInheritedData.h: Holds actual value of internal representation

Source/WebKit/mac:

Adding ENABLE(CSS3_TEXT_DECORATION)

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Adding ENABLE(CSS3_TEXT_DECORATION)

* Configurations/FeatureDefines.xcconfig:

Tools:

Adding ENABLE(CSS3_TEXT_DECORATION)

* Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Adds a test which makes sure that we can parse the
-webkit-text-decoration-skip CSS property, as well
as values for "ink" and "none". We can use the CSSOM
to test the roundtrip of these values

* fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html: Added.

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

7 years agoRunLoop::dispatch should take an std::function
andersca@apple.com [Mon, 28 Oct 2013 20:10:56 +0000 (20:10 +0000)]
RunLoop::dispatch should take an std::function
https://bugs.webkit.org/show_bug.cgi?id=123407

Reviewed by Andreas Kling.

Source/WebCore:

* WebCore.exp.in:
* platform/RunLoop.cpp:
(WebCore::RunLoop::performWork):
(WebCore::RunLoop::dispatch):
* platform/RunLoop.h:

Source/WTF:

* wtf/FunctionDispatcher.h:

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

7 years agoMake TileController manipulate PlatformCALayers instead of CALayers
timothy_horton@apple.com [Mon, 28 Oct 2013 20:01:16 +0000 (20:01 +0000)]
Make TileController manipulate PlatformCALayers instead of CALayers
https://bugs.webkit.org/show_bug.cgi?id=123279

Reviewed by Simon Fraser.

In the interest of making TileController more platform-independent
(so that it can be used with the remote layer tree, and maybe Windows),
move TileController onto our PlatformCALayer abstraction instead of
direct manipulation of CALayers.

Some fallout from this includes getting rid of special Mac-specific
TileController-specific CALayer subclasses, and reworking tile
painting to work in a more generic way.

This is a first step, and doesn't get us all the way to a platform independent
TileController, but more patches are forthcoming.

No new tests, just a (largeish) refactor.

* WebCore.exp.in:
The signature of some methods has changed.

* WebCore.xcodeproj/project.pbxproj:
Remove WebTileLayer.*

* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::logExposedUnfilledArea):
Use the "isTile" key on the CALayer dictionary instead of the layer's
class to determine if it's a tile. TileController will set this on a tile
when it is created, for now.

* platform/graphics/TiledBacking.h:
tiledScrollingIndicatorLayer() should return a PlatformCALayer.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::platformCALayerPaintContents):
* platform/graphics/ca/GraphicsLayerCA.h:
(WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
* platform/graphics/ca/PlatformCALayerClient.h:
The PlatformCALayerClient paintContents and incrementRepaintCount callbacks
should include the platformCALayer that caused the callback.

* platform/graphics/ca/PlatformCALayer.h:
Add LayerTypeSimpleLayer, which is similar to LayerTypeWebLayer
except it just calls back its client to paint, instead of doing
complicated things with repaint rects. This is so that TileController
doesn't re-enter drawLayerContents when asking its GraphicsLayer
to paint for each PlatformCALayer (it will be entering drawLayerContents
for the first time for each layer). It also happens to be useful
for things like the tile controller overlay, which don't need
all that complication.

Add LayerTypeTiledBackingTileLayer, which is used simply to distinguish
TileController Tile layers from other LayerTypeSimpleLayers.

* platform/graphics/ca/mac/LayerPool.h:
* platform/graphics/ca/mac/LayerPool.mm:
(WebCore::LayerPool::addLayer):
(WebCore::LayerPool::takeLayerWithSize):
LayerPool should operate on PlatformCALayers now.

* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::PlatformCALayerMac):
Set the "isTile" key on the CALayer to true for TiledBackingTileLayers,
so that the scrolling performance logging can tell a tile apart from
any other layer, on the scrolling thread, without touching PlatformCALayers
or the TileController or any other main-thread data structures.

(PlatformCALayerMac::setEdgeAntialiasingMask): Added.
* platform/graphics/ca/mac/TileController.h:
Remove references to Objective-C classes; instead use PlatformCALayer everywhere.
TileController is now a PlatformCALayerClient, and the layers it owns are
all PlatformCALayers (and it is constructed with a PlatformCALayer, etc.).
Hand in the tile debug border color as a WebCore color, instead of a CGColorRef.
blankPixelCountForTiles() now operates on a list of PlatformLayers instead of
WebTileLayers specifically, since WebTileLayer is gone.
Make drawTileMapContents private because WebTileCacheMapLayer no longer exists.

(WebCore::TileController::platformCALayerDrawsContent):
All of the layers who have TileController as their client paint their contents.

(WebCore::TileController::platformCALayerContentsOpaque):
This will only be called for layers which paint via drawLayerContents,
so it's OK that we don't special-case the debugging overlay here.

(WebCore::TileController::owningGraphicsLayer):
Return the GraphicsLayer that owns the TileController's main
layer, via its conformance to PlatformCALayerClient. This is
a bit strange (because it's not strictly a GraphicsLayer, despite
always being so at the moment), but is done for clarity inside
TileController itself.

* platform/graphics/ca/mac/TileController.mm:
Remove CALayer (WebCALayerDetails), WebTiledScrollingIndicatorLayer,
and a bunch of includes that we don't need anymore.

(WebCore::TileController::create):
(WebCore::TileController::TileController):
TileController is passed a PlatformCALayer for the tile cache root layer,
instead of a WebTiledBackingLayer. It also creates a PlatformCALayer with
LayerTypeLayer instead of a bare CALayer for the container layer.
It's OK to remove the transaction because it was only used to stop
the implicit animation, which PlatformCALayer will do for us.

(WebCore::TileController::~TileController):
Clear the owner of the PlatformCALayers which the TileController previously owned,
so they don't try to call back a destroyed TileController.

(WebCore::TileController::tileCacheLayerBoundsChanged):
(WebCore::TileController::setNeedsDisplay):
Straightforward adjustments towards use of PlatformCALayer.

(WebCore::TileController::setTileNeedsDisplayInRect):
Adjustments towards use of PlatformCALayer; we need FloatRects so we can
pass pointers to PlatformCALayer::setNeedsDisplay.

(WebCore::TileController::platformCALayerPaintContents):
Replace drawLayer with platformCALayerPaintContents, which will be called
back from our various WebSimpleLayers. If the PlatformCALayer is our
tiled scrolling debug indicator, paint that. Otherwise, it's a tile.
Make use of drawLayerContents() to paint the tile contents.
Make use of drawRepaintIndicator() to paint the repaint indicator if needed.
Move scrolling performance logging code that used to be in WebTileLayer here.

(WebCore::TileController::platformCALayerDeviceScaleFactor):
(WebCore::TileController::platformCALayerShowDebugBorders):
(WebCore::TileController::platformCALayerShowRepaintCounter):
Forward these to the owning GraphicsLayerCA, because it will have the right answers.

(WebCore::TileController::setScale):
Adjustments towards use of PlatformCALayer; remove some code that Simon
caused to be unused in 156291 but did not remove.

(WebCore::TileController::setAcceleratesDrawing):
(WebCore::TileController::setTilesOpaque):
(WebCore::TileController::setVisibleRect):
(WebCore::TileController::revalidateTiles):
(WebCore::TileController::setTileDebugBorderWidth):
(WebCore::TileController::setTileDebugBorderColor):
(WebCore::TileController::bounds):
(WebCore::TileController::blankPixelCount):
(WebCore::TileController::blankPixelCountForTiles):
(WebCore::queueTileForRemoval):
(WebCore::TileController::setNeedsRevalidateTiles):
(WebCore::TileController::ensureTilesForRect):
(WebCore::TileController::retainedTileBackingStoreMemory):
Straightforward adjustments towards use of PlatformCALayer.

(WebCore::TileController::updateTileCoverageMap):
Adjustments towards use of PlatformCALayer; rename backgroundColor
to visibleRectIndicatorColor, since it's actually a border, not a background.

(WebCore::TileController::tiledScrollingIndicatorLayer):
Create a LayerTypeSimpleLayer PlatformCALayer for the tiled scrolling indicator.
It will be asked to paint straightforwardly, like a CALayer would.
Create a LayerTypeLayer PlatformCALayer for the visible rect indicator.
It doesn't need to paint anything, so it doesn't get an owner.

(WebCore::TileController::createTileLayer):
When creating a new tile layer, adopt it by setting its owner.
Otherwise, straightforward adjustments towards use of PlatformCALayer.

(WebCore::TileController::platformCALayerIncrementRepaintCount):
Manage repaint counts for tiles in TileController now.

(WebCore::TileController::drawTileMapContents):
Adjustments towards use of PlatformCALayer.

* platform/graphics/ca/mac/WebTileLayer.h: Removed.
* platform/graphics/ca/mac/WebTileLayer.mm: Removed.
We don't need WebTileLayer anymore, tiles are now just WebSimpleLayers
owned by TileController. Its behavior has been moved into TileController.

* platform/graphics/ca/mac/WebTiledBackingLayer.h:
* platform/graphics/ca/mac/WebTiledBackingLayer.mm:
(-[WebTiledBackingLayer createTileController:]):
Add createTileController: so that the WebTiledBackingLayer's owner can
hand the TileController the PlatformCALayer for the WebTiledBackingLayer
without propagating additional usage of PlatformCALayer::platformCALayer(),
which we need to remove in light of the remote layer tree work.

(-[WebTiledBackingLayer setBorderColor:]):

* platform/graphics/ca/win/PlatformCALayerWin.h:
Add an empty implementation of setEdgeAntialiasingMask.
We'll probably want to implement it before adopting TileController on Windows.

* platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
(PlatformCALayerWinInternal::displayCallback):
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
* platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::LayerClient::platformCALayerPaintContents):
(WebCore::LayerClient::platformCALayerIncrementRepaintCount):
Adjust for new parameters on PlatformCALayerClient callbacks.

* platform/graphics/mac/WebLayer.h:
Add WebSimpleLayer, which inherits directly from CALayer, and make
our standard WebLayer (which is used for compositing layers in web content)
inherit from that.

* platform/graphics/mac/WebLayer.mm:
Move most of the behavior of WebLayer onto WebSimpleLayer, except for its
complex painting code. That stays as an override on WebLayer.

(WebCore::drawLayerContents):
Use the PlatformCALayer's PlatformLayer - if it exists - to extract
fine-grained repaint rects. If it doesn't, we'll just use the CGContext's
clip rect as our single repaint rect.
Rename platformLayer to platformCALayer for accuracy.
Remove special code for CATiledLayer since we ought not use it on Mac anymore.

(WebCore::drawRepaintIndicator):
Factor repaint indicator code out into its own function so that TileController
can use it. It can't be called from drawLayerContents for TileController, since
the PlatformCALayer that TileController passes in to drawLayerContents is actually
that of the tile cache's root layer, not the tile itself.
Also, add a custom background color parameter so TileController can override
the default green color with its own standard purple.

(-[WebLayer drawInContext:]):
(-[WebSimpleLayer drawInContext:]):
* platform/graphics/mac/WebTiledLayer.mm:
(-[WebTiledLayer drawInContext:]):
Removed a param from drawLayerContents because it's trivially acquirable
from the PlatformCALayer.

* FullscreenVideoController.cpp:
(FullscreenVideoController::LayerClient::platformCALayerPaintContents):
(FullscreenVideoController::LayerClient::platformCALayerIncrementRepaintCount):
Adjust for new parameters on PlatformCALayerClient callbacks.

* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::dump):
Support the new LayerTypes.

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::setEdgeAntialiasingMask):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
Add an empty implementation of setEdgeAntialiasingMask.

* WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
(RemoteLayerBackingStore::display):
Removed a parameter from drawLayerContents.

* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::updateDebugInfoLayer):
TiledCoreAnimationDrawingArea still operates in terms of CALayers, so
grab the PlatformLayer out from TileController's indicator.

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

7 years agoMove RenderBlock functions only used by RenderBlockFlow to RenderBlockFlow
weinig@apple.com [Mon, 28 Oct 2013 19:22:51 +0000 (19:22 +0000)]
Move RenderBlock functions only used by RenderBlockFlow to RenderBlockFlow
https://bugs.webkit.org/show_bug.cgi?id=123318

Reviewed by David Hyatt.

* rendering/LineLayoutState.h:
Move FloatWithRect from RenderBlock.

* rendering/RenderBlock.cpp:
* rendering/RenderBlock.h:
* rendering/RenderBlockFlow.cpp:
* rendering/RenderBlockFlow.h:
* rendering/RenderBlockLineLayout.cpp:
Move pagination and float functions.

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

7 years agoExpunge Lion and SnowLeopard from TestExpectations.
simon.fraser@apple.com [Mon, 28 Oct 2013 18:48:47 +0000 (18:48 +0000)]
Expunge Lion and SnowLeopard from TestExpectations.

* platform/mac/TestExpectations:

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

7 years agoSome test expectations for Mavericks.
simon.fraser@apple.com [Mon, 28 Oct 2013 18:46:07 +0000 (18:46 +0000)]
Some test expectations for Mavericks.

* platform/mac/TestExpectations:

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

7 years agoAdd additional Apple Mavericks test bots.
lforschler@apple.com [Mon, 28 Oct 2013 18:42:39 +0000 (18:42 +0000)]
Add additional Apple Mavericks test bots.

Unreviewed.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

7 years agoGet rid of InlineStart so that I don't have to implement it in FTL
fpizlo@apple.com [Mon, 28 Oct 2013 18:03:38 +0000 (18:03 +0000)]
Get rid of InlineStart so that I don't have to implement it in FTL
https://bugs.webkit.org/show_bug.cgi?id=123302

Reviewed by Geoffrey Garen.

InlineStart was a special instruction that we would insert at the top of inlined code,
so that the backend could capture the OSR state of arguments to an inlined call. It used
to be that only the backend had this information, so this instruction was sort of an ugly
callback from the backend for filling in some data structures.

But in the time since when that code was written (two years ago?), we rationalized how
variables work. It's now the case that variables that the runtime must know about are
treated specially in IR (they are "flushed") and we know how we will represent them even
before we get to the backend. The last place that makes changes to their representation
is the StackLayoutPhase.

So, this patch gets rid of InlineStart, but keeps around the special meta-data that the
instruction had. Instead of handling the bookkeeping in the backend, we handle it in
StackLayoutPhase. This means that the DFG and FTL can share code for handling this
bookkeeping. This also means that now the FTL can compile code blocks that had inlining.

Of course, giving the FTL the ability to handle code blocks that had inlining means that
we're going to have new bugs. Sure enough, the FTL's linker didn't handle inline call
frames. This patch also fixes that.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.h:
* dfg/DFGNode.h:
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStackLayoutPhase.cpp:
(JSC::DFG::StackLayoutPhase::run):
* ftl/FTLLink.cpp:
(JSC::FTL::link):

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

7 years ago[CSS Grid Layout] Add support for order inside grid items
svillar@igalia.com [Mon, 28 Oct 2013 17:35:52 +0000 (17:35 +0000)]
[CSS Grid Layout] Add support for order inside grid items
https://bugs.webkit.org/show_bug.cgi?id=123208

Reviewed by Antti Koivisto.

Source/WebCore:

Based on Blink r153457 and r153536 by <jchaffraix@chromium.org>

Added support for sorting grid items by using -webkit-order
property. Used OrderIterator to implement it so it had to be moved
out of RenderFlexibleBox to be shared with RenderGrid.

Tests: fast/css-grid-layout/grid-item-order-auto-flow-resolution.html
       fast/css-grid-layout/grid-item-order-paint-order.html

* CMakeLists.txt: Added new file.
* GNUmakefile.list.am: Ditto.
* WebCore.vcxproj/WebCore.vcxproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* rendering/OrderIterator.cpp: Added. Ripped out of RenderFlexibleBox.
(WebCore::OrderIterator::OrderIterator):
(WebCore::OrderIterator::setOrderValues): Use std::move semantics.
(WebCore::OrderIterator::first): Use an integer as iterator.
(WebCore::OrderIterator::next): Ditto.
(WebCore::OrderIterator::reset): Ditto.
* rendering/OrderIterator.h: Added.
(WebCore::OrderIterator::currentChild):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::RenderFlexibleBox):
(WebCore::RenderFlexibleBox::layoutBlock):
* rendering/RenderFlexibleBox.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::RenderGrid):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
(WebCore::RenderGrid::paintChildren):
* rendering/RenderGrid.h:

LayoutTests:

From Blink r153536 by <jchaffraix@chromium.org>

Added a couple of tests to verify that we respect the specified
order of grid items both in the auto-placement algorithm and in
the final painting.

* fast/css-grid-layout/grid-item-order-auto-flow-resolution-expected.txt: Added.
* fast/css-grid-layout/grid-item-order-auto-flow-resolution.html: Added.
* fast/css-grid-layout/grid-item-order-paint-order-expected.html: Added.
* fast/css-grid-layout/grid-item-order-paint-order.html: Added.

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

7 years agoThe GetById->GetByOffset AI-based optimization should actually do things
fpizlo@apple.com [Mon, 28 Oct 2013 17:20:07 +0000 (17:20 +0000)]
The GetById->GetByOffset AI-based optimization should actually do things
https://bugs.webkit.org/show_bug.cgi?id=123299

Reviewed by Oliver Hunt.

20% speed-up on Octane/gbemu.

* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFor): Actually finish filling in the Status by setting the state. Previously it would remain set to NoInformation, meaning that this whole method was a no-op.

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

7 years agoMethods on window.internals shouldn't pass a document.
commit-queue@webkit.org [Mon, 28 Oct 2013 16:15:45 +0000 (16:15 +0000)]
Methods on window.internals shouldn't pass a document.
https://bugs.webkit.org/show_bug.cgi?id=107301

Patch by Afonso R. Costa Jr. <afonso.costa@samsung.com> on 2013-10-28
Reviewed by Alexey Proskuryakov.

Each 'Internals' instance is associated with a 'Document'. So, it
is not necessary to pass a document as argument. Only nodesFromRect and
layerTreeAsText methods were kept because, in some Layout Tests, the
'Document' object is not the same used by Internals::contextDocument.

Source/WebCore:

* testing/Internals.cpp: Removed 'document' parameter.
(WebCore::Internals::animationsAreSuspended):
(WebCore::Internals::suspendAnimations):
(WebCore::Internals::resumeAnimations):
(WebCore::Internals::inspectorHighlightRects):
(WebCore::Internals::inspectorHighlightObject):
(WebCore::Internals::setScrollViewPosition):
(WebCore::Internals::setPagination):
(WebCore::Internals::configurationForViewport):
(WebCore::Internals::paintControlTints):
(WebCore::Internals::setDelegatesScrolling):
(WebCore::Internals::touchPositionAdjustedToBestClickableNode):
(WebCore::Internals::touchNodeAdjustedToBestClickableNode):
(WebCore::Internals::touchPositionAdjustedToBestContextMenuNode):
(WebCore::Internals::touchNodeAdjustedToBestContextMenuNode):
(WebCore::Internals::bestZoomableAreaForTouchPoint):
(WebCore::Internals::lastSpellCheckRequestSequence):
(WebCore::Internals::lastSpellCheckProcessedSequence):
(WebCore::Internals::wheelEventHandlerCount):
(WebCore::Internals::touchEventHandlerCount):
(WebCore::Internals::setBatteryStatus):
(WebCore::Internals::setNetworkInformation):
(WebCore::Internals::setDeviceProximity):
(WebCore::Internals::hasSpellingMarker):
(WebCore::Internals::hasAutocorrectedMarker):
(WebCore::Internals::isOverwriteModeEnabled):
(WebCore::Internals::toggleOverwriteModeEnabled):
(WebCore::Internals::consoleMessageArgumentCounts):
(WebCore::Internals::hasGrammarMarker):
(WebCore::Internals::numberOfScrollableAreas):
(WebCore::Internals::isPageBoxVisible):
(WebCore::Internals::repaintRectsAsText):
(WebCore::Internals::scrollingStateTreeAsText):
(WebCore::Internals::mainThreadScrollingReasons):
(WebCore::Internals::nonFastScrollableRects):
(WebCore::Internals::garbageCollectDocumentResources):
(WebCore::Internals::insertAuthorCSS):
(WebCore::Internals::insertUserCSS):
(WebCore::Internals::shortcutIconURLs):
(WebCore::Internals::allIconURLs):
(WebCore::Internals::setHeaderHeight):
(WebCore::Internals::setFooterHeight):
(WebCore::Internals::webkitWillEnterFullScreenForElement):
(WebCore::Internals::webkitDidEnterFullScreenForElement):
(WebCore::Internals::webkitWillExitFullScreenForElement):
(WebCore::Internals::webkitDidExitFullScreenForElement):
(WebCore::Internals::startTrackingRepaints):
(WebCore::Internals::stopTrackingRepaints):
(WebCore::Internals::getCurrentCursorInfo):
* testing/Internals.h:
(WebCore::Internals::setPagination):
* testing/Internals.idl:

LayoutTests:

* animations/added-while-suspended.html: Removed 'document' parameter.
* animations/play-state-suspend.html:
* animations/stop-animation-on-suspend.html:
* animations/suspend-resume-animation-events.html:
* animations/suspend-resume-animation.html:
* animations/suspend-transform-animation.html:
* batterystatus/resources/event-after-navigation-new.html:
* batterystatus/script-tests/add-listener-from-callback.js:
(firstListener):
* batterystatus/script-tests/basic-all-types-of-events.js:
* batterystatus/script-tests/basic-operation.js:
* batterystatus/script-tests/multiple-frames.js:
* batterystatus/script-tests/updates.js:
(setBatteryStatus):
* compositing/columns/ancestor-clipped-in-paginated.html:
* compositing/columns/clipped-in-paginated.html:
* compositing/columns/composited-columns-vertical-rl.html:
* compositing/columns/composited-in-paginated-rl.html:
* compositing/columns/composited-in-paginated-writing-mode-rl.html:
* compositing/columns/composited-in-paginated.html:
* compositing/columns/composited-lr-paginated-repaint.html:
* compositing/columns/composited-rl-paginated-repaint.html:
* compositing/columns/geometry-map-paginated-assert.html:
* compositing/columns/hittest-composited-in-paginated.html:
* compositing/columns/rotated-in-paginated.html:
* compositing/columns/untransformed-composited-in-paginated.html:
* compositing/iframes/iframe-composited-scrolling.html:
* compositing/layer-creation/fixed-position-in-view-dynamic.html:
* compositing/layer-creation/fixed-position-no-content-scroll-reason.html:
* compositing/layer-creation/fixed-position-out-of-view-dynamic.html:
* compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html:
* compositing/layer-creation/no-compositing-for-fixed-position-under-transform.html:
* compositing/overflow/dynamic-composited-scrolling-status.html:
* compositing/overflow/scrolling-without-painting.html:
* compositing/overflow/updating-scrolling-content.html:
* compositing/repaint/absolute-painted-into-composited-ancestor.html:
* compositing/repaint/fixed-background-scroll.html:
* compositing/repaint/invalidations-on-composited-layers.html:
* compositing/repaint/positioned-movement.html:
* compositing/repaint/repaint-on-layer-grouping-change.html:
* compositing/repaint/resize-repaint.html:
* compositing/repaint/scroll-fixed-layer-no-content.html:
* compositing/repaint/scroll-fixed-layer-out-of-view.html:
* editing/caret/selection-with-caret-type-progress.html:
* editing/execCommand/overtype.html:
* editing/selection/block-cursor-overtype-mode.html:
* editing/spelling/design-mode-spellcheck-off.html:
* editing/spelling/grammar-edit-word-expected.txt:
* editing/spelling/grammar-edit-word.html:
* editing/spelling/grammar-markers-hidpi.html:
* editing/spelling/grammar-markers.html:
* editing/spelling/grammar.html:
* editing/spelling/script-tests/spellcheck-paste.js:
(verifyMarker):
* editing/spelling/script-tests/spelling-attribute-at-child.js:
(childHasSpellingMarker):
* editing/spelling/script-tests/spelling-attribute-change.js:
(testSpellCheckingEnabled):
* editing/spelling/script-tests/spelling-backspace-between-lines.js:
(testWithDelete):
(testWithForwardDelete):
* editing/spelling/script-tests/spelling-hasspellingmarker.js:
(hasMarked):
* editing/spelling/spellcheck-async-mutation.html:
* editing/spelling/spellcheck-attribute-expected.txt:
* editing/spelling/spellcheck-attribute.html:
* editing/spelling/spellcheck-paste-continuous-disabled-expected.txt:
* editing/spelling/spellcheck-paste-continuous-disabled.html:
* editing/spelling/spellcheck-paste-disabled-expected.txt:
* editing/spelling/spellcheck-paste-disabled.html:
* editing/spelling/spellcheck-sequencenum.html:
* editing/spelling/spelling-attribute-change-expected.txt:
* editing/spelling/spelling-backspace-between-lines-expected.txt:
* editing/spelling/spelling-linebreak.html:
* fast/box-shadow/shadow-repaint.html:
* fast/css/webkit-mask-crash-fieldset-legend.html:
* fast/css/webkit-mask-crash-figure.html:
* fast/css/webkit-mask-crash-table.html:
* fast/css/webkit-mask-crash-td-2.html:
* fast/css/webkit-mask-crash-td.html:
* fast/dom/icon-url-change.html:
* fast/dom/icon-url-list-apple-touch.html:
* fast/dom/icon-url-list.html:
* fast/dom/icon-url-property.html:
* fast/events/mouse-cursor-change.html:
* fast/events/mouse-cursor-image-set.html:
* fast/events/mouse-cursor-multiframecur.html:
* fast/events/mouse-cursor-no-mousemove.html:
* fast/events/mouse-cursor.html:
* fast/events/touch/touch-handler-count-expected.txt:
* fast/events/touch/touch-handler-count.html:
* fast/events/touch/touch-input-element-change-documents-expected.txt:
* fast/events/touch/touch-input-element-change-documents.html:
* fast/multicol/hit-test-gap-between-pages-flipped.html:
* fast/multicol/hit-test-gap-between-pages.html:
* fast/multicol/pagination-h-horizontal-bt.html:
* fast/multicol/pagination-h-horizontal-tb.html:
* fast/multicol/pagination-h-vertical-lr.html:
* fast/multicol/pagination-h-vertical-rl.html:
* fast/multicol/pagination-v-horizontal-bt.html:
* fast/multicol/pagination-v-horizontal-tb.html:
* fast/multicol/pagination-v-vertical-lr.html:
* fast/multicol/pagination-v-vertical-rl.html:
* fast/multicol/pagination/BottomToTop-bt.html:
* fast/multicol/pagination/BottomToTop-lr.html:
* fast/multicol/pagination/BottomToTop-rl.html:
* fast/multicol/pagination/BottomToTop-tb.html:
* fast/multicol/pagination/LeftToRight-bt.html:
* fast/multicol/pagination/LeftToRight-lr.html:
* fast/multicol/pagination/LeftToRight-rl.html:
* fast/multicol/pagination/LeftToRight-tb.html:
* fast/multicol/pagination/RightToLeft-bt.html:
* fast/multicol/pagination/RightToLeft-lr.html:
* fast/multicol/pagination/RightToLeft-rl.html:
* fast/multicol/pagination/RightToLeft-tb.html:
* fast/multicol/pagination/TopToBottom-bt.html:
* fast/multicol/pagination/TopToBottom-lr.html:
* fast/multicol/pagination/TopToBottom-rl.html:
* fast/multicol/pagination/TopToBottom-tb.html:
* fast/multicol/shrink-to-column-height-for-pagination.html:
* fast/repaint/background-shorthand-with-gradient-and-height-changes.html:
* fast/repaint/obscured-background-no-repaint.html:
* fast/repaint/resources/text-based-repaint.js:
(runRepaintTest):
* fast/scrolling/resources/scrollable-area.js:
(end):
* fast/viewport/scroll-delegates-switch-on-page-with-no-composition-mode-asserts.html:
* fast/viewport/viewport-1.html:
* fast/viewport/viewport-10.html:
* fast/viewport/viewport-100.html:
* fast/viewport/viewport-101.html:
* fast/viewport/viewport-102.html:
* fast/viewport/viewport-103.html:
* fast/viewport/viewport-104.html:
* fast/viewport/viewport-105.html:
* fast/viewport/viewport-106.html:
* fast/viewport/viewport-107.html:
* fast/viewport/viewport-108.html:
* fast/viewport/viewport-109.html:
* fast/viewport/viewport-11.html:
* fast/viewport/viewport-110.html:
* fast/viewport/viewport-111.html:
* fast/viewport/viewport-112.html:
* fast/viewport/viewport-113.html:
* fast/viewport/viewport-114.html:
* fast/viewport/viewport-115.html:
* fast/viewport/viewport-116.html:
* fast/viewport/viewport-117.html:
* fast/viewport/viewport-118.html:
* fast/viewport/viewport-119.html:
* fast/viewport/viewport-12.html:
* fast/viewport/viewport-120.html:
* fast/viewport/viewport-121.html:
* fast/viewport/viewport-122.html:
* fast/viewport/viewport-123.html:
* fast/viewport/viewport-124.html:
* fast/viewport/viewport-125.html:
* fast/viewport/viewport-126.html:
* fast/viewport/viewport-127.html:
* fast/viewport/viewport-128.html:
* fast/viewport/viewport-129.html:
* fast/viewport/viewport-13.html:
* fast/viewport/viewport-130.html:
* fast/viewport/viewport-131.html:
* fast/viewport/viewport-132.html:
* fast/viewport/viewport-133.html:
* fast/viewport/viewport-134.html:
* fast/viewport/viewport-14.html:
* fast/viewport/viewport-15.html:
* fast/viewport/viewport-16.html:
* fast/viewport/viewport-17.html:
* fast/viewport/viewport-18.html:
* fast/viewport/viewport-19.html:
* fast/viewport/viewport-2.html:
* fast/viewport/viewport-20.html:
* fast/viewport/viewport-21.html:
* fast/viewport/viewport-22.html:
* fast/viewport/viewport-23.html:
* fast/viewport/viewport-24.html:
* fast/viewport/viewport-25.html:
* fast/viewport/viewport-26.html:
* fast/viewport/viewport-27.html:
* fast/viewport/viewport-28.html:
* fast/viewport/viewport-29.html:
* fast/viewport/viewport-3.html:
* fast/viewport/viewport-30.html:
* fast/viewport/viewport-31.html:
* fast/viewport/viewport-32.html:
* fast/viewport/viewport-33.html:
* fast/viewport/viewport-34.html:
* fast/viewport/viewport-35.html:
* fast/viewport/viewport-36.html:
* fast/viewport/viewport-37.html:
* fast/viewport/viewport-38.html:
* fast/viewport/viewport-39.html:
* fast/viewport/viewport-4.html:
* fast/viewport/viewport-40.html:
* fast/viewport/viewport-41.html:
* fast/viewport/viewport-42.html:
* fast/viewport/viewport-43.html:
* fast/viewport/viewport-44.html:
* fast/viewport/viewport-45.html:
* fast/viewport/viewport-46.html:
* fast/viewport/viewport-47.html:
* fast/viewport/viewport-48.html:
* fast/viewport/viewport-49.html:
* fast/viewport/viewport-5.html:
* fast/viewport/viewport-50.html:
* fast/viewport/viewport-51.html:
* fast/viewport/viewport-52.html:
* fast/viewport/viewport-53.html:
* fast/viewport/viewport-54.html:
* fast/viewport/viewport-55.html:
* fast/viewport/viewport-56.html:
* fast/viewport/viewport-57.html:
* fast/viewport/viewport-58.html:
* fast/viewport/viewport-59.html:
* fast/viewport/viewport-6.html:
* fast/viewport/viewport-60.html:
* fast/viewport/viewport-61.html:
* fast/viewport/viewport-62.html:
* fast/viewport/viewport-63.html:
* fast/viewport/viewport-64.html:
* fast/viewport/viewport-65.html:
* fast/viewport/viewport-66.html:
* fast/viewport/viewport-67.html:
* fast/viewport/viewport-68.html:
* fast/viewport/viewport-69.html:
* fast/viewport/viewport-7.html:
* fast/viewport/viewport-70.html:
* fast/viewport/viewport-71.html:
* fast/viewport/viewport-72.html:
* fast/viewport/viewport-73.html:
* fast/viewport/viewport-74.html:
* fast/viewport/viewport-75.html:
* fast/viewport/viewport-76.html:
* fast/viewport/viewport-77.html:
* fast/viewport/viewport-78.html:
* fast/viewport/viewport-79.html:
* fast/viewport/viewport-8.html:
* fast/viewport/viewport-80.html:
* fast/viewport/viewport-81.html:
* fast/viewport/viewport-82.html:
* fast/viewport/viewport-83.html:
* fast/viewport/viewport-84.html:
* fast/viewport/viewport-85.html:
* fast/viewport/viewport-86.html:
* fast/viewport/viewport-87.html:
* fast/viewport/viewport-88.html:
* fast/viewport/viewport-9.html:
* fast/viewport/viewport-90.html:
* fast/viewport/viewport-91.html:
* fast/viewport/viewport-legacy-handheldfriendly.html:
* fast/viewport/viewport-legacy-mobileoptimized-2.html:
* fast/viewport/viewport-legacy-mobileoptimized-3.html:
* fast/viewport/viewport-legacy-mobileoptimized.html:
* fast/viewport/viewport-legacy-ordering-1.html:
* fast/viewport/viewport-legacy-ordering-2.html:
* fast/viewport/viewport-legacy-ordering-3.html:
* fast/viewport/viewport-legacy-ordering-4.html:
* fast/viewport/viewport-legacy-ordering-5.html:
* fast/viewport/viewport-legacy-ordering-6.html:
* fast/viewport/viewport-legacy-ordering-7.html:
* fast/viewport/viewport-legacy-ordering-8.html:
* fast/viewport/viewport-legacy-ordering-9.html:
* fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype.html:
* fast/viewport/viewport-legacy-xhtmlmp-ordering.html:
* fast/viewport/viewport-legacy-xhtmlmp-remove-and-add.html:
* fast/viewport/viewport-legacy-xhtmlmp.html:
* fast/viewport/viewport-limits-adjusted-for-no-user-scale-control.html:
* fast/viewport/viewport-limits-adjusted-for-no-user-scale.html:
* fast/viewport/viewport-warnings-1.html:
* fast/viewport/viewport-warnings-2.html:
* fast/viewport/viewport-warnings-3.html:
* fast/viewport/viewport-warnings-4.html:
* fast/viewport/viewport-warnings-5.html:
* fast/viewport/viewport-warnings-6.html:
* fullscreen/video-cursor-auto-hide-expected.txt:
* fullscreen/video-cursor-auto-hide.html:
* http/tests/inspector-enabled/resources/console-clear-arguments-test.js:
(dumpConsoleMessageArgumentCounts):
* http/tests/inspector/elements-test.js:
* networkinformation/resources/event-after-navigation-new.html:
* networkinformation/script-tests/add-listener-from-callback.js:
(firstListener):
* networkinformation/script-tests/basic-all-types-of-events.js:
* networkinformation/script-tests/basic-operation.js:
* networkinformation/script-tests/multiple-frames.js:
* networkinformation/script-tests/updates.js:
(setNetworkInformation):
* platform/efl-wk2/editing/spelling/spellcheck-paste-continuous-disabled-expected.txt:
* platform/mac-wk2/tiled-drawing/clamp-out-of-bounds-scrolls.html:
* platform/mac-wk2/tiled-drawing/fixed/absolute-inside-fixed.html:
* platform/mac-wk2/tiled-drawing/fixed/absolute-inside-out-of-view-fixed.html:
* platform/mac-wk2/tiled-drawing/fixed/fixed-in-overflow.html:
* platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view-negative-zindex.html:
* platform/mac-wk2/tiled-drawing/fixed/fixed-position-out-of-view.html:
* platform/mac-wk2/tiled-drawing/fixed/four-bars-with-header-and-footer.html:
* platform/mac-wk2/tiled-drawing/fixed/four-bars-zoomed.html:
* platform/mac-wk2/tiled-drawing/fixed/four-bars.html:
* platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset-in-view.html:
* platform/mac-wk2/tiled-drawing/fixed/negative-scroll-offset.html:
* platform/mac-wk2/tiled-drawing/fixed/nested-fixed.html:
* platform/mac-wk2/tiled-drawing/fixed/percentage-inside-fixed.html:
* platform/mac-wk2/tiled-drawing/header-and-footer-hit-testing-in-frame.html:
* platform/mac-wk2/tiled-drawing/header-and-footer-hit-testing-with-page-scale.html:
* platform/mac-wk2/tiled-drawing/header-and-footer-hit-testing.html:
* platform/mac-wk2/tiled-drawing/scrolling-tree-after-scroll.html:
* platform/mac-wk2/tiled-drawing/scrolling-tree-slow-scrolling.html:
* platform/mac-wk2/tiled-drawing/slow-scrolling-background-toggle.html:
* platform/mac-wk2/tiled-drawing/slow-scrolling-hidden-background-toggle.html:
* platform/mac-wk2/tiled-drawing/slow-scrolling.html:
* platform/mac-wk2/tiled-drawing/sticky/negative-scroll-offset.html:
* platform/mac-wk2/tiled-drawing/sticky/sticky-horizontal.html:
* platform/mac-wk2/tiled-drawing/sticky/sticky-vertical.html:
* platform/mac/editing/spelling/autocorrection-blockquote-crash-expected.txt:
* platform/mac/editing/spelling/autocorrection-blockquote-crash.html:
* platform/mac/editing/spelling/delete-into-misspelled-word.html:
* platform/mac/editing/spelling/editing-multiple-words-with-markers.html:
* platform/mac/editing/spelling/editing-word-with-marker-1.html:
* platform/mac/editing/spelling/editing-word-with-marker-2.html:
* platform/mac/editing/spelling/move-cursor-around-misspelled-word.html:
* platform/win/editing/spelling/spelling-backspace-between-lines-expected.txt:
* printing/page-format-data-expected.txt:
* printing/page-format-data.html:
* proximity/add-listener-from-callback.html:
* proximity/basic-operation.html:
* proximity/multiple-frames.html:
* proximity/resources/event-after-navigation-new.html:
* proximity/updates.html:
* scrollingcoordinator/resources/non-fast-scrollable-region-testing.js:
(runNonFastScrollableRegionTest):
* touchadjustment/big-div.html:
* touchadjustment/event-triggered-widgets.html:
* touchadjustment/iframe.html:
* touchadjustment/nested-shadow-node.html:
* touchadjustment/resources/touchadjustment.js:
(testTouchPoint):
(testTouchPointContextMenu):
(adjustTouchPoint):
(adjustTouchPointContextMenu):
* touchadjustment/scroll-delegation/iframe-with-mainframe-scroll-offset.html:
* touchadjustment/scroll-offset.html:
* touchadjustment/search-cancel.html:
* touchadjustment/zoom-basic.html:
* touchadjustment/zoom-fatfinger.html:
* transitions/created-while-suspended.html:
* transitions/started-while-suspended.html:
* transitions/suspend-transform-transition.html:
* userscripts/insert-stylesheets.html:

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

7 years agoRemove HTMLMediaElement.startTime
calvaris@igalia.com [Mon, 28 Oct 2013 16:11:45 +0000 (16:11 +0000)]
Remove HTMLMediaElement.startTime
https://bugs.webkit.org/show_bug.cgi?id=123264

Reviewed by Eric Carlson.

Source/WebCore:

Patch based on one by: philipj@opera.com
Blink review URL: https://codereview.chromium.org/32583003

startTime has been removed from the HTMLMediaElement and its use
in the rest of components.

* Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.handleRewindButtonClicked):
(Controller.prototype.handleTimelineMouseMove):
(Controller.prototype.updateDuration):
(Controller.prototype.updateTime): Removed used of startTime().
* bindings/gobject/WebKitDOMCustom.cpp:
(webkit_dom_html_media_element_get_start_time):
* bindings/gobject/WebKitDOMCustom.h:
* bindings/gobject/WebKitDOMCustom.symbols: Added phony function.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
(WebCore::HTMLMediaElement::isBlockedOnMediaController): Removed
use of startTime()
* html/HTMLMediaElement.h:
* html/HTMLMediaElement.idl: Removed startTime()
* rendering/RenderThemeWinCE.cpp:
(WebCore::RenderThemeWinCE::paintSliderThumb): Removed use of
startTime()

LayoutTests:

Removed test about startTime.

Blink review URL: https://codereview.chromium.org/32583003

* media/media-startTime-expected.txt: Removed.
* media/media-startTime.html: Removed.

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

7 years agoRenderElement::m_style should be a Ref.
akling@apple.com [Mon, 28 Oct 2013 15:48:44 +0000 (15:48 +0000)]
RenderElement::m_style should be a Ref.
<https://webkit.org/b/123401>

Source/WebCore:

Made RenderElement::m_style a Ref. This codifies the fact that it
can never be null after construction.

Removed a couple of unnecessary null checks that were exposed as
compilation failures.

Reviewed by Antti Koivisto.

Source/WTF:

Added a Ref::replace() so we can Indiana Jones the new style in
RenderElement::setStyle() while keeping a handle on the old style
for a while longer.

Reviewed by Antti Koivisto.

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

7 years agoName all the GLib timeout sources
commit-queue@webkit.org [Mon, 28 Oct 2013 15:22:29 +0000 (15:22 +0000)]
Name all the GLib timeout sources
https://bugs.webkit.org/show_bug.cgi?id=123229

Patch by Bastien Nocera <hadess@hadess.net> on 2013-10-28
Reviewed by Anders Carlsson.

Source/WebCore:

Give a name to GLib timeout sources, this is helpful when
profiling WebKitGTK applications.

No new tests, no change in functionality.

Source/WebKit/gtk:

Give a name to GLib timeout sources, this is helpful when
profiling WebKitGTK applications.

Source/WebKit2:

Give a name to GLib timeout sources, this is helpful when
profiling WebKitGTK applications.

Tools:

Give a name to GLib timeout sources, this is helpful when
profiling WebKitGTK applications.

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

7 years agoMediaStreamTrackPrivate's m_client uninitialized
philn@webkit.org [Mon, 28 Oct 2013 15:16:04 +0000 (15:16 +0000)]
MediaStreamTrackPrivate's m_client uninitialized
https://bugs.webkit.org/show_bug.cgi?id=123403

Reviewed by Eric Carlson.

No new tests, no change in functionality.

* platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
Initialize the m_client member variable.

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

7 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Mon, 28 Oct 2013 13:44:49 +0000 (13:44 +0000)]
Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

* GNUmakefile.list.am: Add missing files to compilation.

Source/WebCore:

* GNUmakefile.am: Add crypto idl files to EXTRA_DIST and remove
css/fullscreenQuickTime.css that was removed.

Source/WebKit2:

* GNUmakefile.am: Add messages.in files in
UIProcess/Network/CustomProtocols/ to EXTRA_DIST.
* GNUmakefile.list.am: Remove
WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp from
compilation because it depends on code generated only when
database process is enabled.

Source/WTF:

* GNUmakefile.list.am: Remove unexistent file from compilation.

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

7 years agoPrepare simple line layout to support multiple runs per line
antti@apple.com [Mon, 28 Oct 2013 13:39:23 +0000 (13:39 +0000)]
Prepare simple line layout to support multiple runs per line
https://bugs.webkit.org/show_bug.cgi?id=123400

Reviewed by Andreas Kling.

Bunch of renaming and some refactoring for future support for text runs.

SimpleLineLayout::Lines -> SimpleLineLayout::Layout and becomes a class instead of a typedef.
SimpleLineLayout::Resolver::Line -> SimpleLineLayout::Resolver::Run
SimpleLineLayout::createLines() -> SimpleLineLayout::create()
RenderBlockFlow::simpleLines() -> RenderBlockFlow::simpleLineLayout()
RenderText::simpleLines() -> RenderText::simpleLineLayout()

Added resolver construction functions:

SimpleLineLayout::runResolver()
SimpleLineLayout::lineResolver()

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

7 years agoUnreviewed, EFL gardening.
gyuyoung.kim@samsung.com [Mon, 28 Oct 2013 12:32:33 +0000 (12:32 +0000)]
Unreviewed, EFL gardening.

fast/canvas/webgl/drawingbuffer-test.html is passing on efl-wk2.
Move it to efl-wk1 TestExpectations file.

* platform/efl-wk1/TestExpectations:
* platform/efl/TestExpectations:

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

7 years ago[WK2] [GTK] Allow running the web process with an arbitrary prefix command
berto@igalia.com [Mon, 28 Oct 2013 10:36:28 +0000 (10:36 +0000)]
[WK2] [GTK] Allow running the web process with an arbitrary prefix command
https://bugs.webkit.org/show_bug.cgi?id=123201

Reviewed by Carlos Garcia Campos.

Launch the web process using WEB_PROCESS_CMD_PREFIX as a
prefix. Useful for debugging the web process with gdb, valgrind,
etc.

* UIProcess/Launcher/ProcessLauncher.h:
* UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess):
* UIProcess/gtk/WebProcessProxyGtk.cpp:
(WebKit::WebProcessProxy::platformGetLaunchOptions):

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

7 years ago[GTK] Expose title and alternative text for links in image maps
mario@webkit.org [Mon, 28 Oct 2013 09:57:48 +0000 (09:57 +0000)]
[GTK] Expose title and alternative text for links in image maps
https://bugs.webkit.org/show_bug.cgi?id=84045

Reviewed by Chris Fleizach.

Source/WebCore:

Change the way we decide when the title attribute should be
used for the accessible description, by not relying in the
titleTagShouldBeUsedInDescriptionField() helper function but
in whether we have found a visible text for it or not.

This actually mimics what the Mac port does and so makes possible
to share both the layout test and its expected results.

* accessibility/atk/WebKitAccessibleUtil.cpp:
(accessibilityDescription): Update the method to determine
whether the title attribute should be used for the description.

LayoutTests:

Share test expectations among Mac, GTK and EFL ports and
remove expected failures for GTK and EFL.

* accessibility/image-map1-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/image-map1-expected.txt.
* platform/gtk/accessibility/image-map1-expected.txt: Removed.
* platform/efl/TestExpectations: Removed failure expectations.
* platform/gtk/TestExpectations: Ditto.

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

7 years agoReplace 0 timeouts g_timeout_add() by g_idle_add()
commit-queue@webkit.org [Mon, 28 Oct 2013 09:29:14 +0000 (09:29 +0000)]
Replace 0 timeouts g_timeout_add() by g_idle_add()
https://bugs.webkit.org/show_bug.cgi?id=123260

Patch by Bastien Nocera <hadess@hadess.net> on 2013-10-28
Reviewed by Carlos Garcia Campos.

A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
without the nagging feeling that the wrong API was used.

Source/WebCore:

No new tests, no change in functionality.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Use g_idle_add() instead
of 0-timer.
(WebCore::MediaPlayerPrivateGStreamer::videoChanged):
(WebCore::MediaPlayerPrivateGStreamer::audioChanged):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Ditto.
(WebCore::MediaPlayerPrivateGStreamerBase::volumeChanged):
(WebCore::MediaPlayerPrivateGStreamerBase::muteChanged):
* platform/gtk/GtkDragAndDropHelper.cpp: Ditto.
(WebCore::GtkDragAndDropHelper::handleDragLeave):

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp: Use g_idle_add() instead
of 0-timer.
(WebKit::ChromeClient::closeWindowSoon):
(WebKit::ChromeClient::widgetSizeChanged):
* WebCoreSupport/GtkAdjustmentWatcher.cpp: Ditto.
(WebKit::GtkAdjustmentWatcher::updateAdjustmentsFromScrollbarsLater):
* webkit/webkitwebview.cpp: Ditto.
(webkit_web_view_get_subresources):

Source/WTF:

* wtf/gtk/MainThreadGtk.cpp: Use g_idle_add() instead
of 0-timer.
(WTF::scheduleDispatchFunctionsOnMainThread):

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp: Use g_idle_add() instead
of 0-timer.
(topLoadingFrameLoadFinished):
* DumpRenderTree/gtk/EventSender.cpp: Ditto.
(scheduleAsynchronousClickCallback):
(scheduleAsynchronousKeyDownCallback):

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

7 years agoRe-enable simple line layout for GTK
zandobersek@gmail.com [Mon, 28 Oct 2013 07:29:21 +0000 (07:29 +0000)]
Re-enable simple line layout for GTK
https://bugs.webkit.org/show_bug.cgi?id=123388

Reviewed by Andreas Kling.

Source/WebCore:

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for the GTK port, so the port
can use the simple line layout.

Source/WTF:

* wtf/FeatureDefines.h: Enable the 8-bit TextRun support for the GTK port.

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

7 years agoWebIconDatabase can miss private browsing state changes.
beidson@apple.com [Mon, 28 Oct 2013 05:42:36 +0000 (05:42 +0000)]
WebIconDatabase can miss private browsing state changes.
<rdar://problem/15322318> and https://bugs.webkit.org/show_bug.cgi?id=123375

Reviewed by Alexey Proskuryakov.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::willStartUsingPrivateBrowsing): Call setAnyPageGroupMightHavePrivateBrowsingEnabled(true) on each context.
(WebKit::WebContext::willStopUsingPrivateBrowsing): Call setAnyPageGroupMightHavePrivateBrowsingEnabled(false) on each context.
(WebKit::WebContext::setPrivateBrowsingEnabled): In addition to notifying other processes about private browsing
  sessions, notify the context’s WebIconDatabase about the change in value.
* UIProcess/WebContext.h:

* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::setDatabasePath): Prime the IconDatabase with an initial private browsing value.
(WebKit::WebIconDatabase::setAnyPageGroupMightHavePrivateBrowsingEnabled):
* UIProcess/WebIconDatabase.h:

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

7 years agoFix 4 asserting SVG tests after r158097.
akling@apple.com [Mon, 28 Oct 2013 01:59:40 +0000 (01:59 +0000)]
Fix 4 asserting SVG tests after r158097.

RenderElement::setStyle() is, quite surprisingly, a virtual function
with a single override in RenderSVGBlock.
To match the old behavior, we have to rewrite the display type from
any inline type to block instead.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::initializeStyle):

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

7 years agoTone down overzealous assertion from r158097.
akling@apple.com [Mon, 28 Oct 2013 00:17:44 +0000 (00:17 +0000)]
Tone down overzealous assertion from r158097.

RenderElement::initializeStyle() really only cares that there are no
text renderers that we should be calling styleDidChange() on.

Tweak the code to only check that there are no text children.

* rendering/RenderElement.cpp:
(WebCore::RenderElement::initializeStyle):

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

7 years agoEnable center and right text alignment for simple lines
antti@apple.com [Sun, 27 Oct 2013 23:06:41 +0000 (23:06 +0000)]
Enable center and right text alignment for simple lines
https://bugs.webkit.org/show_bug.cgi?id=123398

Reviewed by Andreas Kling.

Support text-align:center and text-align:right on simple line layout path.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):

    text-align:justify is still not supported.

(WebCore::SimpleLineLayout::computeLineLeft):
(WebCore::SimpleLineLayout::createLines):

    Do a rounding dance that matches the line boxes.

* rendering/SimpleLineLayout.h:

    Add left position to lines.

* rendering/SimpleLineLayoutResolver.h:
(WebCore::SimpleLineLayout::Resolver::Line::rect):

    We now do rounding during layout.

(WebCore::SimpleLineLayout::Resolver::Line::baseline):

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

7 years agoRenderers should receive their style at construction.
akling@apple.com [Sun, 27 Oct 2013 22:54:07 +0000 (22:54 +0000)]
Renderers should receive their style at construction.
<https://webkit.org/b/123396>

Pass the RenderStyle to all non-text renderer constructors.
After construction, initializeStyle() must be called (as a stopgap
measure) until we are able to do style-derived initialization
without virtual function calls.

With this change, RenderElement::m_style is never null. Subsequent
patches will add enforcement for this and also make style() return
a RenderStyle&.

I'm adding three FIXME's in this patch:

    - createRendererIfNeeded() calls AnimationController to set up
      the initial style manually instead of asking RenderElement's
      setAnimatedStyle() to do it. This can probably be done in a
      nicer way, but it's not clear yet how.

    - ImageContentData::createRenderer() does a bit of unnecessary
      work. This should be easy to clean up but got too distracting
      to be part of this patch.

    - Document::createRenderTree() creates the RenderView with an
      initial dummy RenderStyle. I've done this because resolving
      the document style assumes we already have a RenderView.

For styleWillChange() implementations to detect that they are
reacting to the initial style, I've added a hasInitializedStyle()
function on RenderElement. This will return false until you've
called initializeStyle() on the renderer. This should go away
along with initializeStyle() eventually.

Reviewed by Antti Koivisto.

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

7 years ago[mac] Remove WebTiledLayer
timothy_horton@apple.com [Sun, 27 Oct 2013 02:36:49 +0000 (02:36 +0000)]
[mac] Remove WebTiledLayer
https://bugs.webkit.org/show_bug.cgi?id=123395

Reviewed by Anders Carlsson.

Source/WebCore:

Mac doesn't use CATiledLayer at all anymore. We have to keep
LayerTypeTiledLayer around for Windows, for now, but we can
get rid of WebTiledLayer and some related Mac-specific code.

No new tests, just removing dead code.

* WebCore.xcodeproj/project.pbxproj:
Remove WebTiledLayer.*

* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::PlatformCALayerMac):
Remove synchronouslyDisplayTilesInRect, which was only used for WebTiledLayer on Mac.
Remove WebTiledLayer instantiation and setup code.

* platform/graphics/mac/WebTiledLayer.h: Removed.
* platform/graphics/mac/WebTiledLayer.mm: Removed.

Source/WebKit2:

* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
Remove synchronouslyDisplayTilesInRect.

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

7 years agoMake new bug link in flakiness dashboard configurable
rniwa@webkit.org [Sun, 27 Oct 2013 00:48:54 +0000 (00:48 +0000)]
Make new bug link in flakiness dashboard configurable
https://bugs.webkit.org/show_bug.cgi?id=123386

Reviewed by Alexey Proskuryakov.

* config.json: Added Bugzilla as the default destination for new bugs.
* public/api/manifest.php: Include newBugLinks in the manifest.
* public/index.html:
(TestResultsView): Initialize _newBugLinks.
(TestResultsView.setNewBugLinks): Added.
(TestResultsView._populateTestPane):
(TestResultsView._createTestResultRow): Replaced the hard-coded Bugzilla URL by the code
to generate hyper-links based on _newBugLinks. Also added a nullity check while formatting
revision checks so that we don't blow up when some build doesn't contain all revision info.
(TestResultsView._populateBuilderPane):

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

7 years agoNew flakiness dashboard should support substring matching
rniwa@webkit.org [Sun, 27 Oct 2013 00:48:30 +0000 (00:48 +0000)]
New flakiness dashboard should support substring matching
https://bugs.webkit.org/show_bug.cgi?id=123393

Reviewed by Alexey Proskuryakov.

Addressed the use cases by
1. Always showing the candidate even when there is exactly one test matching the current value.
2. Adding all tests that match the current value upon the user pressing enter key.

* public/index.html:
(fetchManifest): Add all tests that match the current value. Confirm whether the user really
want to add all the tests when there are more than 15 tests to add.
* public/js/autocompleter.js:
(Autocompleter.prototype.filterCandidates): Extracted from _updateCandidates.
(Autocompleter.prototype._updateCandidates): Show the candidate window even when there is
exactly one test that matches the criteria so that the user can select this test.

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

7 years agoNew flakiness dashboard shouldn't treat tests with right expectations as failing
rniwa@webkit.org [Sun, 27 Oct 2013 00:47:21 +0000 (00:47 +0000)]
New flakiness dashboard shouldn't treat tests with right expectations as failing
https://bugs.webkit.org/show_bug.cgi?id=123385

Reviewed by Alexey Proskuryakov.

We define failing tests to be tests with wrong expectations whose actual results are not PASS
since tests with TEXT, IMAGE, etc... failures do not turn the bots red as long as the expectation
of the same type is specified in TestExpectation files.

* public/include/test-results.php:
(FailingResultsJSONWriter): Inherit from WrongExpectationsResultsJSONWriter.

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

7 years agoCrashy WebGL test is crashy.
simon.fraser@apple.com [Sat, 26 Oct 2013 20:42:28 +0000 (20:42 +0000)]
Crashy WebGL test is crashy.

* platform/mac/TestExpectations:

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

7 years ago[Cocoa] -[WKBackForwardList forwardItem] returns the back item
mitz@apple.com [Sat, 26 Oct 2013 20:23:57 +0000 (20:23 +0000)]
[Cocoa] -[WKBackForwardList forwardItem] returns the back item
https://bugs.webkit.org/show_bug.cgi?id=123391

Reviewed by Mark Rowe.

* UIProcess/Cocoa/WKBackForwardList.mm:
(-[WKBackForwardList forwardItem]): Changed back to forward.

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

7 years agoCTTE: RenderImageResourceStyleImage always has a StyleImage.
akling@apple.com [Sat, 26 Oct 2013 18:59:27 +0000 (18:59 +0000)]
CTTE: RenderImageResourceStyleImage always has a StyleImage.
<https://webkit.org/b/123390>

Codify the fact that RenderImageResourceStyleImage always wraps an
existing StyleImage object.

Reviewed by Antti Koivisto.

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

7 years agoSkip two WebGL tests that either crash or fail.
simon.fraser@apple.com [Sat, 26 Oct 2013 18:45:36 +0000 (18:45 +0000)]
Skip two WebGL tests that either crash or fail.

* platform/mac/TestExpectations:

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

7 years agoRevert some accidental changes.
antti@apple.com [Sat, 26 Oct 2013 18:39:22 +0000 (18:39 +0000)]
Revert some accidental changes.

* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData):
* css/CSSFontSelector.cpp:
* css/CSSFontSelector.h:

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

7 years agoUnreviewed, rolling out r158075.
commit-queue@webkit.org [Sat, 26 Oct 2013 17:09:31 +0000 (17:09 +0000)]
Unreviewed, rolling out r158075.
http://trac.webkit.org/changeset/158075
https://bugs.webkit.org/show_bug.cgi?id=123389

Broke WebKit2.PrivateBrowsingPushStateNoHistoryCallback API
test (Requested by ap on #webkit).

* UIProcess/WebContext.cpp:
(WebKit::WebContext::willStartUsingPrivateBrowsing):
(WebKit::WebContext::willStopUsingPrivateBrowsing):
* UIProcess/WebContext.h:
* UIProcess/WebIconDatabase.cpp:
* UIProcess/WebIconDatabase.h:

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

7 years agoGardening: fixed broken build.
mark.lam@apple.com [Sat, 26 Oct 2013 16:11:17 +0000 (16:11 +0000)]
Gardening: fixed broken build.
https://bugs.webkit.org/show_bug.cgi?id=123354.

* css/CSSFontSelector.h:

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

7 years agoSource/WebCore: fast/frames/seamless/seamless-nested-crash.html asserts on wk2 only
antti@apple.com [Sat, 26 Oct 2013 15:44:26 +0000 (15:44 +0000)]
Source/WebCore: fast/frames/seamless/seamless-nested-crash.html asserts on wk2 only
https://bugs.webkit.org/show_bug.cgi?id=123354

Reviewed by Andreas Kling.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::canUseFor):

    Don't enable simple line layout if the primary font is loading. The code expects
    to use the primary font metrics for all lines but those won't match the fallbacks
    when font is not loaded.

LayoutTests: fast/frames/seamless/seamless-nested-crash.html asserts on wk2 only
https://bugs.webkit.org/show_bug.cgi?id=123354

Reviewed by Andreas Kling.

* TestExpectations: Remove failure expectation

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

7 years agoRemove Coordinated Graphics bits from DrawingAreaProxyImpl
jae.park@company100.net [Sat, 26 Oct 2013 15:17:14 +0000 (15:17 +0000)]
Remove Coordinated Graphics bits from DrawingAreaProxyImpl
https://bugs.webkit.org/show_bug.cgi?id=123382

Reviewed by Anders Carlsson.

As of r156861, Coordinated Graphics does not use DrawingAreaProxyImpl.
So, Coordinated Graphics bits should be removed from DrawingAreaProxyImpl.

* UIProcess/DrawingAreaProxyImpl.h:

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

7 years ago[GTK] Deprecate public dispatch_event method in objects implementing EventTarget...
carlosgc@webkit.org [Sat, 26 Oct 2013 11:02:02 +0000 (11:02 +0000)]
[GTK] Deprecate public dispatch_event method in objects implementing EventTarget interface
https://bugs.webkit.org/show_bug.cgi?id=123261

Reviewed by Gustavo Noronha Silva.

The interface function should be used instead.

* bindings/scripts/CodeGeneratorGObject.pm:
(GetFunctionDeprecationInformation): Helper function to return the
version when the function was deprecated and the function
replacing the deprecated one.
(GenerateFunction): Check if the function is deprecated to mark it
as such in the header and API docs.
* bindings/scripts/gobject-generate-headers.pl: Replace the unused
WEBKIT_OBSOLETE_API macro with new macros to mark function as
deprecated, using the glib macros so that we don't need checks for
the platform.
* bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
* bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
* bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
* bindings/scripts/test/GObject/WebKitDOMTestException.h:
* bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
* bindings/scripts/test/GObject/WebKitDOMattribute.h:

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

7 years ago[Cocoa] clang static analyzer warns about object being autoreleased too many times...
mitz@apple.com [Sat, 26 Oct 2013 07:16:50 +0000 (07:16 +0000)]
[Cocoa] clang static analyzer warns about object being autoreleased too many times in +[WKNSArray web_arrayWithImmutableArray:]
https://bugs.webkit.org/show_bug.cgi?id=123384

Reviewed by Mark Rowe.

* Shared/Cocoa/WKNSArray.h: Annotated -web_initWithImmutableArray: as an init method.

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

7 years agoFix the ENABLE(CSS_FILTERS) && USE(COORDINATED_GRAPHICS) build after r157803
ossy@webkit.org [Sat, 26 Oct 2013 06:37:23 +0000 (06:37 +0000)]
Fix the ENABLE(CSS_FILTERS) && USE(COORDINATED_GRAPHICS) build after r157803
https://bugs.webkit.org/show_bug.cgi?id=123330

Reviewed by Darin Adler.

* Shared/WebCoreArgumentCoders.cpp:
* Shared/WebCoreArgumentCoders.h:

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

7 years agoBuild fix. The query results weren't sorted by the latest commit time,
rniwa@webkit.org [Sat, 26 Oct 2013 06:13:37 +0000 (06:13 +0000)]
Build fix. The query results weren't sorted by the latest commit time,
yielding wrong set of tests to be listed in the builder pane.

* public/include/test-results.php:

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

7 years agoLinks in new flakiness dashboard could benefit from tooltips
rniwa@webkit.org [Sat, 26 Oct 2013 05:50:03 +0000 (05:50 +0000)]
Links in new flakiness dashboard could benefit from tooltips
https://bugs.webkit.org/show_bug.cgi?id=123381

Reviewed by Alexey Proskuryakov.

Add title content attribute on each hyperlink in the builder pane.

* public/index.html:
(TestResultsView._populateBuilderPane):

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

7 years agoREGRESSION (r158069): platform/mac/fast/loader/file-url-mimetypes.html
ap@apple.com [Sat, 26 Oct 2013 05:41:36 +0000 (05:41 +0000)]
REGRESSION (r158069): platform/mac/fast/loader/file-url-mimetypes.html
is failing on all Mountain Lion bots.

* platform/mac-mountainlion/fast/loader/file-url-mimetypes-expected.txt: Removed.
* platform/mac-mountainlion/platform/mac/fast/loader/file-url-mimetypes-expected.txt: Copied from LayoutTests/platform/mac-mountainlion/fast/loader/file-url-mimetypes-expected.txt.
Mountain Lion results for platform/mac tests need to be in this crazy place apparently.

* platform/mac/fast/loader/file-url-mimetypes-expected.txt:
* platform/mac/platform/mac/fast/loader/file-url-mimetypes-expected.txt: Removed.
Mavericks results should be in platform/mac, not platform/mac/platform/mac.
Yes, the latter works and takes precedence, but it's wrong.

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

7 years agoCommit the right change.
rniwa@webkit.org [Sat, 26 Oct 2013 01:23:41 +0000 (01:23 +0000)]
Commit the right change.

* public/index.html:

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

7 years agoThe new flakiness dashboard should sort builder and test names
rniwa@webkit.org [Sat, 26 Oct 2013 01:19:35 +0000 (01:19 +0000)]
The new flakiness dashboard should sort builder and test names
https://bugs.webkit.org/show_bug.cgi?id=123363

Reviewed by Simon Fraser.

Sort the forgotten builders in the menu.

* public/index.html:

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

7 years agoWebIconDatabase can miss private browsing state changes.
beidson@apple.com [Sat, 26 Oct 2013 00:29:17 +0000 (00:29 +0000)]
WebIconDatabase can miss private browsing state changes.
<rdar://problem/15322318> and https://bugs.webkit.org/show_bug.cgi?id=123375

Reviewed by Beth Dakin.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::willStartUsingPrivateBrowsing): Call setPrivateBrowsingEnabled(true) on each context.
(WebKit::WebContext::willStopUsingPrivateBrowsing): Call setPrivateBrowsingEnabled(false) on each context.
(WebKit::WebContext::setPrivateBrowsingEnabled): In addition to notifying other processes, notify WebIconDatabase.
* UIProcess/WebContext.h:

* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::setPrivateBrowsingEnabled):
* UIProcess/WebIconDatabase.h:

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

7 years agoRefactor parser rollback logic
oliver@apple.com [Sat, 26 Oct 2013 00:25:08 +0000 (00:25 +0000)]
Refactor parser rollback logic
https://bugs.webkit.org/show_bug.cgi?id=123372

Reviewed by Brady Eidson.

Add a sane abstraction for rollbacks in the parser.

* parser/Parser.cpp:
(JSC::::parseSourceElements):
(JSC::::parseObjectLiteral):
* parser/Parser.h:
(JSC::Parser::createSavePoint):
(JSC::Parser::restoreSavePoint):

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

7 years agoWeb Inspector: PrettyPrinting tool should have save button
commit-queue@webkit.org [Fri, 25 Oct 2013 23:53:41 +0000 (23:53 +0000)]
Web Inspector: PrettyPrinting tool should have save button
https://bugs.webkit.org/show_bug.cgi?id=123371

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-10-25
Reviewed by Timothy Hatcher.

Add buttons to save as a URL to share or to save/clear to
localStorage for easier reloads testing local changes.

* Tools/PrettyPrinting/index.html:

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

7 years agoTweak some test expectations.
simon.fraser@apple.com [Fri, 25 Oct 2013 23:46:35 +0000 (23:46 +0000)]
Tweak some test expectations.

* platform/mac/TestExpectations:

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

7 years agoUnreviewed. Mark skipped webgl conformance tests as either flakey or failures.
roger_fong@apple.com [Fri, 25 Oct 2013 23:35:17 +0000 (23:35 +0000)]
Unreviewed. Mark skipped webgl conformance tests as either flakey or failures.

Also reorganize expectations for WebGL a bit.

* platform/mac/TestExpectations:

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

7 years agoAdd Mavericks-specific results for some tests.
simon.fraser@apple.com [Fri, 25 Oct 2013 23:33:35 +0000 (23:33 +0000)]
Add Mavericks-specific results for some tests.

* platform/mac-mountainlion/fast/loader/file-url-mimetypes-expected.txt: Added.
* platform/mac-mountainlion/http/tests/xmlhttprequest/head-redirection-expected.txt: Copied from LayoutTests/platform/mac/http/tests/xmlhttprequest/head-redirection-expected.txt.
* platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt: Added.
* platform/mac/http/tests/xmlhttprequest/head-redirection-expected.txt:
* platform/mac/js/dom/global-constructors-attributes-expected.txt: Added.
* platform/mac/platform/mac/fast/loader/file-url-mimetypes-expected.txt: Added.

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