WebKit-https.git
7 years ago[ANGLE] Use of uninitialized memory in ArrayBoundsClamper
mvujovic@adobe.com [Tue, 18 Dec 2012 19:47:22 +0000 (19:47 +0000)]
[ANGLE] Use of uninitialized memory in ArrayBoundsClamper
https://bugs.webkit.org/show_bug.cgi?id=105218

Reviewed by Dean Jackson.

TIntermBinary::addIndexClamp is uninitialized when the compile flag
SH_CLAMP_INDIRECT_ARRAY_BOUNDS is not set. Then, addIndexClamp is used in OutputGLSLBase.
CSS Shaders needs to do a first validation pass without the SH_CLAMP_INDIRECT_ARRAY_BOUNDS
flag and its effects. However, sometimes addIndexClamp is true, which inserts clamping code
that causes a shader to fail compilation at the WebGL level.

* src/compiler/intermediate.h:
(TIntermBinary::TIntermBinary):

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

7 years ago[chromium] Fix include style in WebTransformOperations.h
commit-queue@webkit.org [Tue, 18 Dec 2012 19:44:00 +0000 (19:44 +0000)]
[chromium] Fix include style in WebTransformOperations.h
https://bugs.webkit.org/show_bug.cgi?id=105259

Patch by James Robinson <jamesr@chromium.org> on 2012-12-18
Reviewed by Adrienne Walker.

Changes include of WebTransformationMatrix.h from '#include <public/..h>' to '#include "....h". The latter
always works, since #include "foo.h" always finds foo.h in the same directory, and doesn't require all
downstream users of this header to have Source/Platform/chromium/ on the include path.

* chromium/public/WebTransformOperations.h:

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

7 years agoUnreviewed build fix after http://trac.webkit.org/changeset/138041
timothy_horton@apple.com [Tue, 18 Dec 2012 19:29:30 +0000 (19:29 +0000)]
Unreviewed build fix after trac.webkit.org/changeset/138041

Need to cast int64_t to int32_t to avoid a warning on some compilers.

* platform/LayoutUnit.h:
(WebCore::boundedMultiply):

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

7 years agoRunning a skipped test with run-perf-tests could alert the user
rniwa@webkit.org [Tue, 18 Dec 2012 19:15:23 +0000 (19:15 +0000)]
Running a skipped test with run-perf-tests could alert the user
https://bugs.webkit.org/show_bug.cgi?id=105219

Reviewed by Eric Seidel.

Force run skipped performance tests explicitly specified in the command line.
Also warn the user when the specified paths don't exist.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.relative_test_filename):
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args):
(PerfTestsRunner._collect_tests):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(test_collect_tests_with_skipped_list_and_files):

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

7 years agoChrome Android java output is too verbose
commit-queue@webkit.org [Tue, 18 Dec 2012 19:12:28 +0000 (19:12 +0000)]
Chrome Android java output is too verbose
https://bugs.webkit.org/show_bug.cgi?id=105247

Patch by Yaron Friedman <yfriedman@chromium.org> on 2012-12-18
Reviewed by Tony Chang.

Pass -quiet to ant to suppress extraneous output.

Source/WebKit/chromium:

* WebKitUnitTests.gyp:

Tools:

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

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

7 years ago[CSS Exclusions] shape-inside layout fails to adjust first line correctly for writing...
commit-queue@webkit.org [Tue, 18 Dec 2012 19:08:41 +0000 (19:08 +0000)]
[CSS Exclusions] shape-inside layout fails to adjust first line correctly for writing-mode: vertical-rl
https://bugs.webkit.org/show_bug.cgi?id=104419

Patch by Hans Muller <hmuller@adobe.com> on 2012-12-18
Reviewed by Dirk Schulze.

Source/WebCore:

ExclusionShapes no longer maintain a private "internal" coordinate system,
they're now defined in logical coordinates. The createExclusionShape() method
now handles the one-time conversion from physical to logical coordinates.

Test: fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003.html

* rendering/ExclusionPolygon.cpp:
(WebCore::ExclusionPolygon::getExcludedIntervals): Removed logical to internal coordinate conversions.
(WebCore::ExclusionPolygon::getIncludedIntervals): Ditto.
(WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Ditto.
* rendering/ExclusionPolygon.h:
* rendering/ExclusionRectangle.cpp:
(WebCore::ExclusionRectangle::getExcludedIntervals): Removed logical to internal coordinate conversions.
(WebCore::ExclusionRectangle::getIncludedIntervals): Ditto.
(WebCore::ExclusionRectangle::firstIncludedIntervalLogicalTop): Ditto.
* rendering/ExclusionRectangle.h:
* rendering/ExclusionShape.cpp:
(WebCore::physicalRectToLogical): Convert a FloatRect defined with coordinates to logical coordinates.
(WebCore::physicalPointToLogical): Similar.
(WebCore::physicalSizeToLogical): Simlar.
(WebCore::ExclusionShape::createExclusionShape): Convert shapes from physical to logical coordinates.
* rendering/ExclusionShape.h:
(ExclusionShape): Removed internal to logical coordinate conversion utility methods.

LayoutTests:

For the vertical writing modes, verify that rounded rectangle shape-inside content is
adjusted in the logical down direction when it will not fit betwen the rounded corners.

* fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-rounded-rectangle-fit-003.html: Added.

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

7 years agoConsider removing --pause-before-testing option
rniwa@webkit.org [Tue, 18 Dec 2012 18:55:53 +0000 (18:55 +0000)]
Consider removing --pause-before-testing option
https://bugs.webkit.org/show_bug.cgi?id=105248

Reviewed by Eric Seidel.

Remove --pause-before-testing option.

* Tools/Scripts/webkitpy/layout_tests/port/driver.py:
(DriverProxy.start): Removed.
* Scripts/webkitpy/performance_tests/perftest.py:
(PerfTest.__init__):
(PerfTest.test_path): Renamed from path_or_url.
(PerfTest.run):
(PerfTest): Removed "driver" argument.
(PerfTest._run_with_driver):
(PerfTest.run_single):
(ChromiumStylePerfTest.__init__):
(PageLoadingPerfTest.__init__):
(PageLoadingPerfTest.run_single):
(PageLoadingPerfTest._run_with_driver): Renamed from run so that PerfTest.run can create a driver for us.
(ReplayPerfTest.__init__):
(ReplayPerfTest.prepare):
* Scripts/webkitpy/performance_tests/perftest_unittest.py:
(TestPageLoadingPerfTest.test_run):
(TestPageLoadingPerfTest.test_run_with_memory_output):
(TestPageLoadingPerfTest.test_run_with_bad_output):
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args):
(PerfTestsRunner._run_tests_set): Removed the code to create a driver and pause before running the test.
(PerfTestsRunner._run_single_test): Removed "driver" argument.
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(run_test):
(test_run_test_pause_before_testing): Removed.

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

7 years agoOptimize LayoutUnit::boundedMultiply
eae@chromium.org [Tue, 18 Dec 2012 18:46:10 +0000 (18:46 +0000)]
Optimize LayoutUnit::boundedMultiply
https://bugs.webkit.org/show_bug.cgi?id=105216

Reviewed by Levi Weintraub.

LayoutUnit::boundedMultiply is used for multiplication that's
prone to overflow and for all LayoutUnit multiplication if
SATURATED_LAYOUT_ARITHMETIC is enabled. The current approach is
quite inefficient.

Change it to use a more efficient saturated multiplication
implementation. As the implementation needs to use
kFixedPointDenominator it is implemented in LayoutUnit.h instead
of in wtf/SaturatedArithmetic.h.

Test: Covered by TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp

* platform/LayoutUnit.h:
(WebCore::boundedMultiply):

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

7 years ago[CSS Exclusions] Blocks should not re-use their parent's ExclusionShapeInsideInfo
commit-queue@webkit.org [Tue, 18 Dec 2012 18:43:38 +0000 (18:43 +0000)]
[CSS Exclusions] Blocks should not re-use their parent's ExclusionShapeInsideInfo
if they participate in inline layout
https://bugs.webkit.org/show_bug.cgi?id=104582

Patch by Bear Travis <betravis@adobe.com> on 2012-12-18
Reviewed by Julien Chaffraix.

Source/WebCore:

Blocks that participate in inline layout should not re-use a parent's
ExclusionShapeInsideInfo, as the parent and child would both use the info for
layout at the same time. This patch alters LayoutState to not include
ExclusionShapeInsideInfo if the current block participates in inline layout (ie,
it is a float, inline-block, or inline-table).

Test: fast/exclusions/shape-inside/shape-inside-recursive-layout.html

* rendering/ExclusionShapeInsideInfo.h:
(WebCore::ExclusionShapeInsideInfo::ownerBlock): Return the block associated with
the shape-inside style.
* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState): Do not re-use ExclusionShapeInsideInfo
on a block that participates in inline layout (floats and inline blocks).
* rendering/RenderBlock.h:
(WebCore::RenderBlock::allowsExclusionShapeInsideInfoSharing): Returns whether the
block can re-use an ExclusionShapeInsideInfo from its parent block.
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Adding an assert to make sure
we do not overwrite ExclusionShapeInsideInfo's state during a recursive layout.
* rendering/RenderView.h:
(WebCore::RenderView::pushLayoutState): Push a new LayoutState in the case that
ExclusionShapeInsideInfo exists but should not be propagated.

LayoutTests:

Test that recursive inline layouts work correctly.

* fast/exclusions/resources/simple-rectangle.js:
(createRectangleTest): Remove extra ':' from pseudo-element.
(createRectangleTestResult): Ditto.
* fast/exclusions/shape-inside/shape-inside-recursive-layout-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-recursive-layout.html: Added.

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 18 Dec 2012 18:35:42 +0000 (18:35 +0000)]
Unreviewed GTK gardening.

Removing failures for a bunch of tests that are now passing due to
various reasons.

* platform/gtk/TestExpectations:

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

7 years ago[GTK] Tests that time out are not considered as failures.
commit-queue@webkit.org [Tue, 18 Dec 2012 18:32:21 +0000 (18:32 +0000)]
[GTK] Tests that time out are not considered as failures.
https://bugs.webkit.org/show_bug.cgi?id=105318

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-18
Reviewed by Martin Robinson.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunGtkAPITests.commandComplete):
Consider log lines that end with TIMEOUT as errors.

* Scripts/run-gtk-tests:
(TestRunner.run_tests):
Consider timeouts as failures when returning the number of failed
tests.

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

7 years agoREGRESSION(r136324): flex items with percent heights not resizing
tony@chromium.org [Tue, 18 Dec 2012 18:23:15 +0000 (18:23 +0000)]
REGRESSION(r136324): flex items with percent heights not resizing
https://bugs.webkit.org/show_bug.cgi?id=105213

Reviewed by Ojan Vafai.

Source/WebCore:

We were missing some of the logic for when to relayout a flex child. Refactor
the code in RenderBlock::layoutBlockChildren so we can use it in RenderFlexibleBox.

Test: css3/flexbox/flexitem-percent-height-change.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateNeedsLayoutAndPreferredLogicalWidthsDirtyBeforeBlockChildLayout):
Pull out logic needed by RenderFlexibleBox.
(WebCore::RenderBlock::layoutBlockChildren): Use helper method.
* rendering/RenderBlock.h:
(RenderBlock): Add updateNeedsLayoutAndPreferredLogicalWidthsDirtyBeforeBlockChildLayout.
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Pass through relayoutChildren bool.
(WebCore::RenderFlexibleBox::layoutFlexItems): Pass through relayoutChildren and mark the child as needing
layout if it has a percent height.
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes): We need to always layout here since we're
trying to get the preferred size.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
* rendering/RenderFlexibleBox.h:

LayoutTests:

Add a test that changes the height of a flexbox with a percentage height child.

* css3/flexbox/flexitem-percent-height-change-expected.txt: Added.
* css3/flexbox/flexitem-percent-height-change.html: Added.

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

7 years agoFix position:-webkit-sticky behavior when zoomed
simon.fraser@apple.com [Tue, 18 Dec 2012 18:07:56 +0000 (18:07 +0000)]
Fix position:-webkit-sticky behavior when zoomed
https://bugs.webkit.org/show_bug.cgi?id=105251

Reviewed by Dean Jackson.

Source/WebCore:

Position sticky elements were misplaced when stickily-constrained, under zooming.
The cause was that some of the functions used to compute sticky position
took page scale into account, and some did not.

Fix by using localToContainerQuad(..., view()) to compute RenderView-relative
quads, which avoids page scale, so all the constraints math is done ignoring
page scale. This also requires that we compute a scale-free viewport rect
in stickyPositionOffset().

Test: fast/css/sticky/sticky-top-zoomed.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::computeStickyPositionConstraints):
(WebCore::RenderBoxModelObject::stickyPositionOffset):

LayoutTests:

Ref test for sticky elements in a zoomed page.

This test is marked as failing for WK1, because scrollbars always show on
zoomed pages and cannot be hidden there.

* fast/css/sticky/sticky-top-zoomed-expected.html: Added.
* fast/css/sticky/sticky-top-zoomed.html: Added.
* platform/mac-wk2/TestExpectations:
* platform/mac/TestExpectations:

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

7 years agoWeb Inspector: DataGrid cell values are "clipped" in editing mode.
commit-queue@webkit.org [Tue, 18 Dec 2012 18:06:09 +0000 (18:06 +0000)]
Web Inspector: DataGrid cell values are "clipped" in editing mode.
https://bugs.webkit.org/show_bug.cgi?id=105277

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Pavel Feldman.

UIUtils expects that "text-overflow" is not "ellipsis".

* inspector/front-end/dataGrid.css:
(.data-grid td.editing > div): Override text-overflow for editing mode.

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

7 years ago[Inspector] Add frameId for frame owner nodes.
commit-queue@webkit.org [Tue, 18 Dec 2012 18:04:41 +0000 (18:04 +0000)]
[Inspector] Add frameId for frame owner nodes.
https://bugs.webkit.org/show_bug.cgi?id=105317

Patch by Ken Kania <kkania@chromium.org> on 2012-12-18
Reviewed by Pavel Feldman.

This is needed to translate from a node ID to the execution context ID for
evaluating scripts in the associated frame.

* inspector/Inspector.json:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForNode):

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

7 years ago[EFL] Allow the build system to detect EGL support.
commit-queue@webkit.org [Tue, 18 Dec 2012 18:00:25 +0000 (18:00 +0000)]
[EFL] Allow the build system to detect EGL support.
https://bugs.webkit.org/show_bug.cgi?id=105287

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-18
Reviewed by Laszlo Gombos.

Currently, we don't have any way to determine if EGL is supported by the build.
This patch adds support for this. The patch doesn't make any changes to take this into
use. This will be done in another patch.

* Source/cmake/FindEGL.cmake:

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

7 years ago[Qt] Fix the ARMv7 build after r137976
msaboff@apple.com [Tue, 18 Dec 2012 17:55:41 +0000 (17:55 +0000)]
[Qt] Fix the ARMv7 build after r137976
https://bugs.webkit.org/show_bug.cgi?id=105270

Reviewed by Csaba Osztrogonác.

Add default value for Jump parameter to fix build.

* assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::Jump::Jump):

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

7 years agoUnreviewed, adding secondary email.
pravin.d@samsung.com [Tue, 18 Dec 2012 17:32:50 +0000 (17:32 +0000)]
Unreviewed, adding secondary email.

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

7 years ago[WinCairo] Compile fix.
commit-queue@webkit.org [Tue, 18 Dec 2012 17:29:54 +0000 (17:29 +0000)]
[WinCairo] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=105175

Patch by peavo@outlook.com <peavo@outlook.com> on 2012-12-18
Reviewed by Simon Fraser.

* rendering/RenderLayer.h: Compile fixes for USE(ACCELERATED_COMPOSITING) mismatch.

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

7 years agoUnreviewed, promoting myself to committer's list
pravin.d@samsung.com [Tue, 18 Dec 2012 17:19:12 +0000 (17:19 +0000)]
Unreviewed, promoting myself to committer's list

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

7 years ago[BlackBerry] Remove the visible tile buffer from the BackingStore.
jpetsovits@rim.com [Tue, 18 Dec 2012 17:18:00 +0000 (17:18 +0000)]
[BlackBerry] Remove the visible tile buffer from the BackingStore.
https://bugs.webkit.org/show_bug.cgi?id=105302
RIM PR 260232

Reviewed by George Staikos.

The visible tile buffer was introduced as an additional
buffering solution that was necessary because other
buffers would only cover part of the screen and could
only be swapped one by one, with long blocking calls
between each newly rendered tile. By carrying an old copy
of all tiles at once, we were avoiding checkerboard and
visual artifacts during load time when much zoom-to-fit
action is going on.

These days, the visual tile buffer hurts more than it helps,
not only taking up lots of memory but also requiring
complexity that we'd rather get rid of. Now that multiple
buffers are being swapped into the user interface thread
at once, the need for the visible tile buffer is no longer
there and can be exchanged for standard geometry behavior.

This patch simply deletes the visible tile buffer to use
existing other code instead. Differences in behavior are
non-existent or negligible.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::transformChanged):
(BlackBerry::WebKit::BackingStorePrivate::orientationChanged):
(BlackBerry::WebKit::BackingStorePrivate::createSurfaces):
* Api/BackingStore_p.h:
(BackingStorePrivate):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::SurfacePool):
(BlackBerry::WebKit::SurfacePool::initialize):
(BlackBerry::WebKit::SurfacePool::createBuffers):
(BlackBerry::WebKit::SurfacePool::releaseBuffers):
* WebKitSupport/SurfacePool.h:
(SurfacePool):

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

7 years ago[EFL] Unreviewed gardening.
thiago.santos@intel.com [Tue, 18 Dec 2012 17:00:31 +0000 (17:00 +0000)]
[EFL] Unreviewed gardening.

Added new baselines marked tests flaky due to Accessibility code
crashes.

* platform/efl-wk2/TestExpectations:
* platform/efl-wk2/editing/selection/move-by-character-6-expected.png: Added.
* platform/efl-wk2/editing/selection/move-by-character-6-expected.txt: Added.

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

7 years agoHave kFixedPointDenominator be constant across ports
eae@chromium.org [Tue, 18 Dec 2012 16:45:04 +0000 (16:45 +0000)]
Have kFixedPointDenominator be constant across ports
https://bugs.webkit.org/show_bug.cgi?id=104843

Source/WebCore:

Reviewed by Julien Chaffraix.

Currently the kFixedPointDenominator constant is set to either
64 or 1 depending on the SUBPIXEL_LAYOUT flag. As this constant
is used to limit the range of supported values this results in
inconsistencies across ports.

Change kFixedPointDenominator to always be 64 and introduce a
new constant (kEffectiveFixedPointDenominator) that varies.
This ensures that the same range of values are supported across
ports regardless of the SUBPIXEL_LAYOUT flag.

Covered by fast/css/large-numbers.html and fast/css/large-number-round-trip.html

* platform/LayoutUnit.h:
Add kEffectiveFixedPointDenominator constant and change
LayoutUnit code to use it instead of kFixedPointDenominator
which is now set to 64 regardless of the SUBPIXEL_LAYOUT flag.

LayoutTests:

Reviewed by Julien Chaffraix.

Unskip the following tests on efl, qt and gtk:
fast/css/large-number-round-trip.html
fast/css/large-numbers.html

Remove platform specific results for large-number-round-trip.html.

* fast/css/large-number-round-trip-expected.txt:
* platform/chromium/fast/css/large-number-round-trip-expected.txt: Removed.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/fast/css/large-number-round-trip-expected.txt: Removed.
* platform/qt/TestExpectations:

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

7 years agoUnreviewed, rolling out r137979.
commit-queue@webkit.org [Tue, 18 Dec 2012 16:39:15 +0000 (16:39 +0000)]
Unreviewed, rolling out r137979.
http://trac.webkit.org/changeset/137979
https://bugs.webkit.org/show_bug.cgi?id=105311

nodeName returned by the inspector protocol commands should
match one accessible fro JS (Requested by yurys_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-18

Source/WebCore:

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForNode):

LayoutTests:

* inspector/elements/shadow-dom-modify-chardata-expected.txt:
* inspector/elements/shadow-root-expected.txt:
* inspector/elements/shadow-root.html:

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

7 years ago[BlackBerry] Restructure the render queue to process multiple tiles at once.
jpetsovits@rim.com [Tue, 18 Dec 2012 16:37:16 +0000 (16:37 +0000)]
[BlackBerry] Restructure the render queue to process multiple tiles at once.
https://bugs.webkit.org/show_bug.cgi?id=105199
RIM PR 260232

Reviewed by George Staikos.
Internally reviewed by Arvid Nilsson.

Since my last big commit, r136442, the BackingStore's render()
function is able to fetch multiple back buffers and swap them
into the user interface thread in one go. However, it turns out
that this is not enough to actually render to all of the
available back buffers at once. The RenderQueue class was still
working with a model based on processing one rectangle after
another.

This commit rewrites large parts of RenderQueue to issue
render() calls for multiple tiles at once. As WebCore painting
gets cheaper and blocking becomes more of an issue, this commit
does away with paints smaller than tile size and always renders
whole tiles at once. This means the demise of RenderRect.
As an additional benefit, this means we can remove the
copyPreviousContentsToTileBuffer() function which caused
potential threading issues as it was accessing a buffer
now owned by the UI thread from the WebKit thread.

RenderQueue is also smarter than before in assigning batches,
it now takes into account the number of available back buffers
for rendering as well as excludes tiles outside contents
boundaries. Regular render jobs continue being tracked as
regions (and are being issued to didRenderContent()) with only
the changed content regions. Everything else switches over to
tile index lists from previously lists of rectangles.
By default, we render as many tiles at once as we can grab
back buffers, or until a given set of jobs is done.
For high-priority jobs, render() will be called in a loop.

To allow for the necessary changes in render() and improve
reliability in the same go, we now call render() almost
exclusively through RenderQueue. Other places would often
call renderVisibleContents() in situations where rendering
is not possible, geometries don't get updated, or content
rendered notifications would not get issued to the client.
By replacing renderVisibleContents() with a scheduled
high-priority queue that's immediately being processed
(but only if possible), these problems go away.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::repaint):
(BlackBerry::WebKit::BackingStorePrivate::slowScroll):
(BlackBerry::WebKit::BackingStorePrivate::renderJob):
(BlackBerry::WebKit::BackingStorePrivate::setBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
(BlackBerry::WebKit::BackingStorePrivate::indexesForBackingStoreRect):
(BlackBerry::WebKit::BackingStorePrivate::clearAndUpdateTileOfNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::isCurrentVisibleJob):
(BlackBerry::WebKit::BackingStorePrivate::renderDirectToWindow):
(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::renderAndBlitVisibleContentsImmediately):
(BlackBerry::WebKit::BackingStorePrivate::renderAndBlitImmediately):
(BlackBerry::WebKit::BackingStorePrivate::paintDefaultBackground):
(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):
(BlackBerry::WebKit::BackingStorePrivate::compositeContents):
(BlackBerry::WebKit::BackingStorePrivate::visibleTileIndexes):
(BlackBerry::WebKit::BackingStorePrivate::resetTiles):
(BlackBerry::WebKit::BackingStorePrivate::updateTilesForScrollOrNotRenderedRegion):
(BlackBerry::WebKit::BackingStorePrivate::updateTile):
(BlackBerry::WebKit::BackingStorePrivate::transformChanged):
(BlackBerry::WebKit::BackingStorePrivate::didRenderContent):
* Api/BackingStore_p.h:
(BackingStorePrivate):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::resumeBackingStore):
* Api/WebPageCompositor.cpp:
(BlackBerry::WebKit::WebPageCompositorPrivate::animationFrameChanged):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidLayout):
* WebKitSupport/RenderQueue.cpp:
(BlackBerry::WebKit::compareRectOneDirection):
(BlackBerry::WebKit::tileIndexIsLessThan):
(WebKit):
(BlackBerry::WebKit::tileIndexLessThanFunction):
(BlackBerry::WebKit::TileIndexLessThan::TileIndexLessThan):
(BlackBerry::WebKit::TileIndexLessThan::operator()):
(TileIndexLessThan):
(BlackBerry::WebKit::RenderQueue::reset):
(BlackBerry::WebKit::RenderQueue::isEmpty):
(BlackBerry::WebKit::RenderQueue::hasCurrentRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::hasCurrentVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::hasCurrentVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleZoomJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleZoomJobCompleted):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleScrollJob):
(BlackBerry::WebKit::RenderQueue::isCurrentVisibleScrollJobCompleted):
(BlackBerry::WebKit::RenderQueue::isCurrentRegularRenderJob):
(BlackBerry::WebKit::RenderQueue::tileIndexesIntersectingRegion):
(BlackBerry::WebKit::RenderQueue::tileIndexesFullyContainedInRegion):
(BlackBerry::WebKit::RenderQueue::tileRegion):
(BlackBerry::WebKit::RenderQueue::addToQueue):
(BlackBerry::WebKit::RenderQueue::addToRegularQueue):
(BlackBerry::WebKit::RenderQueue::addToScrollZoomQueue):
(BlackBerry::WebKit::RenderQueue::quickSort):
(BlackBerry::WebKit::RenderQueue::visibleContentChanged):
(BlackBerry::WebKit::RenderQueue::backingStoreRectChanging):
(BlackBerry::WebKit::RenderQueue::clear):
(BlackBerry::WebKit::RenderQueue::clearRegions):
(BlackBerry::WebKit::RenderQueue::clearTileIndexes):
(BlackBerry::WebKit::RenderQueue::render):
(BlackBerry::WebKit::RenderQueue::renderRegularRenderJobs):
(BlackBerry::WebKit::RenderQueue::renderScrollZoomJobs):
(BlackBerry::WebKit::RenderQueue::scrollZoomJobsCompleted):
* WebKitSupport/RenderQueue.h:
(WebKit):
(RenderQueue):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::numberOfAvailableBackBuffers):
(BlackBerry::WebKit::SurfacePool::takeBackBuffer):
* WebKitSupport/SurfacePool.h:
(SurfacePool):
* WebKitSupport/TileIndex.h:
(WebKit):

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

7 years ago[chromium] Unreviewed gardening: marking test as flaky on Linux Dbg bot.
wjmaclean@chromium.org [Tue, 18 Dec 2012 16:06:14 +0000 (16:06 +0000)]
[chromium] Unreviewed gardening: marking test as flaky on Linux Dbg bot.
http://webkit.org/b/86114

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: [Styles] Selector matches are not marked after property editing
apavlov@chromium.org [Tue, 18 Dec 2012 15:55:01 +0000 (15:55 +0000)]
Web Inspector: [Styles] Selector matches are not marked after property editing
https://bugs.webkit.org/show_bug.cgi?id=105284

Reviewed by Vsevolod Vlasov.

Once a property edit is committed, the selector markup is reset and needs to be re-applied.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylePropertiesSection.prototype.update):

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

7 years ago[EFL] ImageDiff does not build on WebKit2 only builds
thiago.santos@intel.com [Tue, 18 Dec 2012 15:49:25 +0000 (15:49 +0000)]
[EFL] ImageDiff does not build on WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=105288

Reviewed by Kenneth Rohde Christiansen.

Moved ImageDiff to the efl/ folder inside Tools/ (so we don't pollute
the folder with things which are EFL-specific.

ImageDiff will be built by default now regardless of WebKit API flavor
you choose.

* CMakeLists.txt:
* DumpRenderTree/efl/CMakeLists.txt:
* efl/ImageDiff/CMakeLists.txt: Added.
* efl/ImageDiff/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/efl/ImageDiff.cpp.

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

7 years agoAdd in-band text track cues only once
eric.carlson@apple.com [Tue, 18 Dec 2012 15:23:29 +0000 (15:23 +0000)]
Add in-band text track cues only once
https://bugs.webkit.org/show_bug.cgi?id=104593

Reviewed by Dean Jackson.

Source/WebCore:

Test: media/track/track-in-band-cues-added-once.html

* html/track/InbandTextTrack.cpp:
(WebCore::InbandTextTrack::hasCue): New.
* html/track/InbandTextTrack.h:

* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::setCueSettings): Remember the raw cue settings so they can be accessed later.
* html/track/TextTrackCue.h:

* platform/graphics/InbandTextTrackPrivateClient.h: Declare hasCue.

* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processCue): Early return if m_player has been cleared.
(WebCore::InbandTextTrackPrivateAVF::setMode): Ditto.

* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::seek): Clear the partially accumulated cue when the seek
    starts, not when it completes.
(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
(WebCore::MediaPlayerPrivateAVFoundation::flushCurrentCue): Don't add a cue if it is already in the
    text track cue list.
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::clearTextTracks): Drive-by cleanup, clear the track list completely.

LayoutTests:

Test to ensure that in-band text track cues are not added to the the cue list more than once.

* media/track/track-in-band-cues-added-once-expected.txt: Added.
* media/track/track-in-band-cues-added-once.html: Added.
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:

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

7 years agoWeb Inspector: [Network] Ordering of cookies displayed is nondeterministic.
commit-queue@webkit.org [Tue, 18 Dec 2012 15:01:02 +0000 (15:01 +0000)]
Web Inspector: [Network] Ordering of cookies displayed is nondeterministic.
https://bugs.webkit.org/show_bug.cgi?id=105272

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Vsevolod Vlasov.

This patch fixes double-selection of request and sets default ordering
of cookies.

* inspector/front-end/CookiesTable.js: By default sort by name.
* inspector/front-end/NetworkPanel.js: Do not fire "select" on
mouse-click in viewing-request mode.

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

7 years ago[EFL][WK2] When creating new windows, use the opener's context
kenneth@webkit.org [Tue, 18 Dec 2012 14:42:31 +0000 (14:42 +0000)]
[EFL][WK2] When creating new windows, use the opener's context
https://bugs.webkit.org/show_bug.cgi?id=105283

Reviewed by Laszlo Gombos.

Use the context of the opener if exists.

* MiniBrowser/efl/main.c:
(on_key_down):
(on_window_create):
(window_create):
(elm_main):

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

7 years ago[WK2] Unreviewed gardening.
thiago.santos@intel.com [Tue, 18 Dec 2012 13:53:45 +0000 (13:53 +0000)]
[WK2] Unreviewed gardening.

Fixed malformed entry on the WK2 expectations file.

* platform/wk2/TestExpectations:

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

7 years agoUnreviewed, rolling out r138011.
apavlov@chromium.org [Tue, 18 Dec 2012 13:42:51 +0000 (13:42 +0000)]
Unreviewed, rolling out r138011.
http://trac.webkit.org/changeset/138011
https://bugs.webkit.org/show_bug.cgi?id=105272

WebInspector: Broke request selection in the Network panel

* inspector/front-end/CookiesTable.js:
(WebInspector.CookiesTable):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkPanel.prototype._toggleGridMode):
(WebInspector.NetworkPanel.prototype._toggleViewingRequestMode):
(WebInspector.NetworkDataGridNode.prototype.createCells):
(WebInspector.NetworkDataGridNode.prototype.get selectable):

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

7 years agoREGRESSION (r137607): Cannot download files, stuck in “Preparing to download”
japhet@chromium.org [Tue, 18 Dec 2012 13:04:51 +0000 (13:04 +0000)]
REGRESSION (r137607): Cannot download files, stuck in “Preparing to download”
https://bugs.webkit.org/show_bug.cgi?id=105044

Reviewed by Antti Koivisto.

The work done by DocumentLoader::mainReceivedError() changed subtly in r137607,
such that it cancels the ResourceHandle. We want to treat switching to a download
like a failure, where WebCore assumes that the load is finished, and no
cancellation is required.

No new tests, tested manually by verifying that downloading files works in
Safari Mac.

* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::continueAfterContentPolicy):
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::cancel): Remove the workaround added in r137763.

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

7 years agoWeb Inspector: [Network] Ordering of cookies displayed is nondeterministic.
commit-queue@webkit.org [Tue, 18 Dec 2012 12:57:16 +0000 (12:57 +0000)]
Web Inspector: [Network] Ordering of cookies displayed is nondeterministic.
https://bugs.webkit.org/show_bug.cgi?id=105272

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Alexander Pavlov.

This patch fixes double-selection of request and sets default ordering
of cookies.

* inspector/front-end/CookiesTable.js: By default sort by name.
* inspector/front-end/NetworkPanel.js: Remove redundant member, make
rows "not-selectable", activate request selection on "mouse-down".

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

7 years agoUnreviewed rebaseline new test introdiced at r138003
loislo@chromium.org [Tue, 18 Dec 2012 12:49:10 +0000 (12:49 +0000)]
Unreviewed rebaseline new test introdiced at r138003

* inspector-protocol/media-query-listener-exception-expected.txt:
* platform/chromium/inspector-protocol/media-query-listener-exception-expected.txt: Copied from LayoutTests/inspector-protocol/media-query-listener-exception-expected.txt.

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

7 years ago[EFL] Unreviewed gardening
thiago.santos@intel.com [Tue, 18 Dec 2012 12:19:49 +0000 (12:19 +0000)]
[EFL] Unreviewed gardening

Skipped some accessibility because of missing bits on EFL.

* platform/efl-wk2/TestExpectations:

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

7 years ago[JSC] Refactoring CodeGeneratorJS.pm to simplify adding support for overloaded constr...
commit-queue@webkit.org [Tue, 18 Dec 2012 12:07:45 +0000 (12:07 +0000)]
[JSC] Refactoring CodeGeneratorJS.pm to simplify adding support for overloaded constructors
https://bugs.webkit.org/show_bug.cgi?id=105271

Patch by Tommy Widenflycht <tommyw@chromium.org> on 2012-12-18
Reviewed by Kentaro Hara.

This patch splits the very large function that generates constructor code into a few smaller ones.
No changes in actual generated code but some functions in the generated bindings code moves.

Existing tests cover patch.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
(GenerateConstructorDefinitions):
(GenerateConstructorDefinition):
(GenerateConstructorSupportDefinitions):
(IsCustomConstructable):
(IsConstructable):
* bindings/scripts/test/JS/JSFloat64Array.cpp:
(WebCore::JSFloat64ArrayConstructor::constructJSFloat64Array):
(WebCore):
(WebCore::toJS):
(WebCore::JSFloat64Array::indexSetter):
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore):
(WebCore::JSTestEventConstructorConstructor::JSTestEventConstructorConstructor):
(WebCore::JSTestEventConstructorConstructor::finishCreation):
(WebCore::JSTestEventConstructorConstructor::getOwnPropertySlot):
(WebCore::JSTestEventConstructorConstructor::getOwnPropertyDescriptor):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterfaceConstructor::constructJSTestInterface):
(WebCore):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore):
(WebCore::JSTestNamedConstructorNamedConstructor::JSTestNamedConstructorNamedConstructor):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
* bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::JSTestNodeConstructor::constructJSTestNode):
(WebCore):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObjConstructor::constructJSTestObj):
(WebCore):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
(WebCore):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
(WebCore):

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

7 years ago[EFL][WK2] Gardening of TestWebKitAPI tests
thiago.santos@intel.com [Tue, 18 Dec 2012 11:58:46 +0000 (11:58 +0000)]
[EFL][WK2] Gardening of TestWebKitAPI tests
https://bugs.webkit.org/show_bug.cgi?id=105268

Reviewed by Kenneth Rohde Christiansen.

Some tests were marked as failing but are passing and the newly added
LayoutUnit should have it's own binary because it conflicts with the
fixture used by KURL and is failing on the bots because of that.

* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformEfl.cmake:

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

7 years ago[BlackBerry] Add support for setMuted() for media
commit-queue@webkit.org [Tue, 18 Dec 2012 11:57:23 +0000 (11:57 +0000)]
[BlackBerry] Add support for setMuted() for media
https://bugs.webkit.org/show_bug.cgi?id=105254

Patch by Max Feil <mfeil@rim.com> on 2012-12-18
Reviewed by George Staikos.

Simply pass the API call through to the platform layer.

Covered by existing tests.

* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::setMuted):
(WebCore):
(WebCore::MediaPlayerPrivate::muted):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::supportsMuting):

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

7 years agoWeb Inspector: show cached images under MemoryCache -> Images section
yurys@chromium.org [Tue, 18 Dec 2012 11:46:05 +0000 (11:46 +0000)]
Web Inspector: show cached images under MemoryCache -> Images section
https://bugs.webkit.org/show_bug.cgi?id=105261

Reviewed by Pavel Feldman.

Source/WebCore:

Provided class name and name for several objects related to CachedImage.
Changed native memory snapsho view so that MemoryCache.Image section can
be expanded into individual images.

* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeSnapshotNode.prototype._addChildrenFromGraph):
(WebInspector.NativeHeapGraphEdge):
(WebInspector.NativeHeapGraphEdge.prototype.type):
(WebInspector.NativeHeapGraphEdge.prototype.name):
(WebInspector.NativeHeapGraphEdge.prototype.target):
(WebInspector.NativeHeapGraphEdge.prototype._getStringField):
(WebInspector.NativeHeapGraphEdge.prototype.toString):
(WebInspector.NativeHeapGraphNode.prototype.size):
(WebInspector.NativeHeapGraphNode.prototype.referencedNodes):
(WebInspector.NativeHeapGraphNode.prototype.outgoingEdges):
(WebInspector.NativeHeapGraphNode.prototype.targetOfEdge):
(WebInspector.NativeHeapGraphNode.prototype.targetsOfAllEdges):
(WebInspector.NativeHeapGraphNode.prototype._firstEdgePoistion):
(WebInspector.NativeHeapGraphNode.prototype._afterLastEdgePosition):
(WebInspector.NativeHeapGraphNode.prototype._getStringField):
(WebInspector.NativeHeapGraphNode.prototype.toString):
(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.rootNodes):
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraph.prototype._addDummyNode):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::reportMemoryUsage):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::reportMemoryUsage):
* loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::reportMemoryUsage):
* platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::reportMemoryUsage):
(WebCore::FrameData::reportMemoryUsage):
* platform/graphics/Image.cpp:
(WebCore::Image::reportMemoryUsage):
* platform/graphics/skia/MemoryInstrumentationSkia.cpp:
(reportMemoryUsage):

Source/WTF:

Use first provided name and class name. If one of the ancestors tries to overwrite
it just ignore the call.

* wtf/MemoryObjectInfo.h:
(WTF::MemoryObjectInfo::setClassName):
(WTF::MemoryObjectInfo::setName):

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

7 years agoWeb Inspector: Calculate "idle" time for CPU profiles.
caseq@chromium.org [Tue, 18 Dec 2012 11:43:35 +0000 (11:43 +0000)]
Web Inspector: Calculate "idle" time for CPU profiles.
https://bugs.webkit.org/show_bug.cgi?id=103120

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Pavel Feldman.

CPU profiles contain a very confusing "(program)" item.
It is time when there is no JS stack.
That could be either idle time, or time when browser is doing something.

To split "(program)" item to idle and really program time we are to
calculate idle time during profiling.

* bindings/js/ScriptProfile.cpp: Added "idleTime" getter.
* bindings/js/ScriptProfile.h: Ditto.
* bindings/js/ScriptProfiler.h:
Added getter of thread-local map of currently written profiles.
* bindings/v8/ScriptProfile.cpp: Added "idleTime" getter.
* bindings/v8/ScriptProfile.h: Ditto.
* bindings/v8/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::start): Put profile name to map.
(WebCore::ScriptProfiler::stop): Remove profile name from map;
pass idleTime to profile constructor.
* bindings/v8/ScriptProfiler.h:
Added getter of thread-local map of currently written profiles.
* inspector/Inspector.json: Added "idleTime" field to profile.
* inspector/InspectorController.cpp: Pass hooks to profiler agent.
* inspector/InspectorProfilerAgent.cpp:
Add idle time to currently written profiles.
* inspector/InspectorProfilerAgent.h:
Added member to hold reference to map of currently written profiles.
* inspector/InspectorTimelineAgent.h:
Cleanup.
* inspector/ScriptProfile.idl:
Add "idleTime" member.

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

7 years agoWeb Inspector: MediaQueryList listener silently catches errors
yurys@chromium.org [Tue, 18 Dec 2012 10:47:41 +0000 (10:47 +0000)]
Web Inspector: MediaQueryList listener silently catches errors
https://bugs.webkit.org/show_bug.cgi?id=105162

Reviewed by Alexander Pavlov.

Source/WebCore:

Drive-by: removed unused ScriptCallback::call(bool).
Test: inspector-protocol/media-query-listener-exception.html

* bindings/js/ScriptFunctionCall.cpp:
(WebCore::ScriptCallback::call):
* bindings/js/ScriptFunctionCall.h:
(ScriptCallback):
* bindings/v8/ScriptFunctionCall.cpp: report uncaught exception to the inspector
if it was thrown during the function call.
(WebCore::ScriptCallback::call):
* bindings/v8/ScriptFunctionCall.h:
(ScriptCallback):

LayoutTests:

Test that uncaught exception in MediaQueryListListener will be logged to the console.

* http/tests/inspector-protocol/resources/protocol-test.js:
(runTest):
* inspector-protocol/media-query-listener-exception-expected.txt: Added.
* inspector-protocol/media-query-listener-exception.html: Added.

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

7 years agowebaudio/oscillator* tests should use OfflineAudioContext
dominik.rottsches@intel.com [Tue, 18 Dec 2012 10:40:18 +0000 (10:40 +0000)]
webaudio/oscillator* tests should use OfflineAudioContext
https://bugs.webkit.org/show_bug.cgi?id=105174

Reviewed by Kentaro Hara.

webaudio/oscillator* tests were using the slower webkitAudioContext for output rendering.
Replacing the usage with webkitOfflineAudioContext allows for faster-than-realtime rendering
in testing. Also, it avoids a deprecation warning on the console.

* webaudio/resources/oscillator-testing.js: Replace usage of webkitAudioContext with webkitOfflineAudioContext
(generateExponentialOscillatorSweep):

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

7 years agoUnreviewed gardening.
ossy@webkit.org [Tue, 18 Dec 2012 10:07:53 +0000 (10:07 +0000)]
Unreviewed gardening.

* platform/qt-5.0-wk2/fast/text/zero-font-size-expected.txt: Updated.
* platform/wk2/TestExpectations: Skip a new failing test.

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

7 years agoWeb Inspector: Network: display JavaScript stack in case of script initiator.
commit-queue@webkit.org [Tue, 18 Dec 2012 10:03:20 +0000 (10:03 +0000)]
Web Inspector: Network: display JavaScript stack in case of script initiator.
https://bugs.webkit.org/show_bug.cgi?id=104899

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-18
Reviewed by Vsevolod Vlasov.

Show popup with navigavle stack-trace.

* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._getPopoverAnchor):
Added new target.
(WebInspector.NetworkLogView.prototype._showPopover):
Added case for new target.
(WebInspector.NetworkLogView.prototype._generateScriptInitiatedPopoverContent):
Generates table with stack trace items.
(WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
Added target marker, removed annoying titles.

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

7 years agoStyle fix to OpenCL SVG Filters
commit-queue@webkit.org [Tue, 18 Dec 2012 09:56:09 +0000 (09:56 +0000)]
Style fix to OpenCL SVG Filters
https://bugs.webkit.org/show_bug.cgi?id=105265

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-12-18
Reviewed by Zoltan Herczeg.

Inserted missing spaces and correct copyright text. There were no vital changes.

* platform/graphics/gpu/opencl/FilterContextOpenCL.cpp:
(WebCore):
* platform/graphics/gpu/opencl/FilterContextOpenCL.h:
(FilterContextOpenCL):
* platform/graphics/gpu/opencl/OpenCLFEColorMatrix.cpp:
(WebCore::FilterContextOpenCL::applyFEColorMatrix):
* platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp:
(WebCore):
(WebCore::FilterContextOpenCL::compileFETurbulence):
(WebCore::FilterContextOpenCL::applyFETurbulence):
(WebCore::FETurbulence::platformApplyOpenCL):
* platform/graphics/gpu/opencl/OpenCLHandle.h:

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

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Tue, 18 Dec 2012 09:42:37 +0000 (09:42 +0000)]
[Qt] Unreviewed gardening.

Rebaselining a test after r137953.

Patch by Szilard Ledan <szledan@inf.u-szeged.hu> on 2012-12-18

* platform/qt/editing/selection/move-by-character-6-expected.txt:

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

7 years ago[chromium] move webintent related methods to TestRunner library
jochen@chromium.org [Tue, 18 Dec 2012 09:05:03 +0000 (09:05 +0000)]
[chromium] move webintent related methods to TestRunner library
https://bugs.webkit.org/show_bug.cgi?id=105164

Reviewed by Darin Fisher.

Also deleted the unused deliveredIntentFailure and
deliveredIntentResult methods.

* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
* DumpRenderTree/chromium/TestRunner/public/WebTestDelegate.h:
(WebKit):
(WebTestRunner::WebTestDelegate::setCurrentWebIntentRequest):
(WebTestRunner::WebTestDelegate::currentWebIntentRequest):
* DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
(WebKit):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::registerIntentService):
(WebTestRunner::WebTestProxy::dispatchIntent):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::sendWebIntentResponse):
(WebTestRunner):
(WebTestRunner::TestRunner::deliverWebIntent):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner::WebTestProxyBase::registerIntentService):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::dispatchIntent):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::setCurrentWebIntentRequest):
(WebViewHost::currentWebIntentRequest):
* DumpRenderTree/chromium/WebViewHost.h:
(WebKit):
(WebViewHost):

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

7 years agoWeb Inspector: [WebGL] handle video elements used in WebGL
aandrey@chromium.org [Tue, 18 Dec 2012 09:02:09 +0000 (09:02 +0000)]
Web Inspector: [WebGL] handle video elements used in WebGL
https://bugs.webkit.org/show_bug.cgi?id=105170

Reviewed by Yury Semikhatsky.

Copy current image of video elements into a canvas to use it later in the replay.

* inspector/InjectedScriptCanvasModuleSource.js:
(.):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 18 Dec 2012 08:45:31 +0000 (08:45 +0000)]
Unreviewed GTK gardening.

Rebaselining a test after r137953.
Adding back failure expectations for SVG viewspec tests after the rollout in r137947.
Enhancing failure expectation for a slow HTTP multipart test that can pass,
fail or timeout.

* platform/gtk/TestExpectations:
* platform/gtk/editing/selection/move-by-character-6-expected.txt:

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

7 years agoImplement uncommitted memory for Linux.
commit-queue@webkit.org [Tue, 18 Dec 2012 08:37:24 +0000 (08:37 +0000)]
Implement uncommitted memory for Linux.
https://bugs.webkit.org/show_bug.cgi?id=65766

Patch by Uli Schlachter <psychon@znc.in> on 2012-12-18
Reviewed by Simon Hausmann.

The old approach used MAP_NORESERVE to allocate address space without
committing it. However, that flag gets ignored if
/proc/sys/vm/overcommit_memory is set to 2. The new approach uses a
mapping with PROT_NONE. This works because mappings which aren't even
readable don't get accounted as committed on Linux.

* wtf/OSAllocatorPosix.cpp:
(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::reserveAndCommit):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):

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

7 years ago[chromium] move editing callback dumping to the WebTestProxy
jochen@chromium.org [Tue, 18 Dec 2012 08:25:58 +0000 (08:25 +0000)]
[chromium] move editing callback dumping to the WebTestProxy
https://bugs.webkit.org/show_bug.cgi?id=105013

Reviewed by Darin Fisher.

To decide whether or not to dump the editing callbacks, the WebTestProxy
needs to query the TestRunner. For this purpose, I introduce a
WebTestRunner class that just exposes the shouldDumpEditingCallbacks
method. In contrast to e.g. WebEventSender, the WebTestRunner is just
an interface, and it is not owned by the WebTestInterfaces, but the
embedder of the TestRunner library must provide it. This will change
once all TestRunner methods are in the library.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/DRTTestRunner.cpp:
(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::reset):
* DumpRenderTree/chromium/DRTTestRunner.h:
(DRTTestRunner):
(DRTTestRunner::taskList):
(DRTTestRunner::WorkQueue::taskList):
* DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h:
(WebTestRunner):
(WebTestInterfaces):
* DumpRenderTree/chromium/TestRunner/public/WebTestProxy.h:
(WebKit):
(WebTestRunner):
(WebTestProxyBase):
(WebTestRunner::WebTestProxy::shouldBeginEditing):
(WebTestRunner::WebTestProxy::shouldEndEditing):
(WebTestRunner::WebTestProxy::shouldInsertNode):
(WebTestRunner::WebTestProxy::shouldInsertText):
(WebTestRunner::WebTestProxy::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxy::shouldDeleteRange):
(WebTestRunner::WebTestProxy::shouldApplyStyle):
(WebTestRunner::WebTestProxy::didBeginEditing):
(WebTestRunner::WebTestProxy::didChangeSelection):
(WebTestRunner::WebTestProxy::didChangeContents):
(WebTestRunner::WebTestProxy::didEndEditing):
* DumpRenderTree/chromium/TestRunner/public/WebTestRunner.h: Copied from Tools/DumpRenderTree/chromium/TestRunner/public/WebTestInterfaces.h.
(WebTestRunner):
(WebTestRunner::WebTestRunner::shouldDumpEditingCallbacks):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::~TestRunner):
(WebTestRunner):
(WebTestRunner::TestRunner::reset):
(WebTestRunner::TestRunner::shouldDumpEditingCallbacks):
(WebTestRunner::TestRunner::dumpEditingCallbacks):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestInterfaces.cpp:
(WebTestRunner::WebTestInterfaces::Internal::testRunner):
(WebTestRunner::WebTestInterfaces::Internal::setTestRunner):
(WebTestInterfaces::Internal):
(WebTestRunner::WebTestInterfaces::Internal::Internal):
(WebTestRunner::WebTestInterfaces::testRunner):
(WebTestRunner):
(WebTestRunner::WebTestInterfaces::setTestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:
(WebTestRunner::WebTestProxyBase::postAccessibilityNotification):
(WebTestRunner):
(WebTestRunner::WebTestProxyBase::shouldBeginEditing):
(WebTestRunner::WebTestProxyBase::shouldEndEditing):
(WebTestRunner::WebTestProxyBase::shouldInsertNode):
(WebTestRunner::WebTestProxyBase::shouldInsertText):
(WebTestRunner::WebTestProxyBase::shouldChangeSelectedRange):
(WebTestRunner::WebTestProxyBase::shouldDeleteRange):
(WebTestRunner::WebTestProxyBase::shouldApplyStyle):
(WebTestRunner::WebTestProxyBase::didBeginEditing):
(WebTestRunner::WebTestProxyBase::didChangeSelection):
(WebTestRunner::WebTestProxyBase::didChangeContents):
(WebTestRunner::WebTestProxyBase::didEndEditing):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::initialize):
(TestShell::createNewWindow):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::shouldBeginEditing):
(WebViewHost::shouldEndEditing):
(WebViewHost::shouldInsertNode):
(WebViewHost::shouldInsertText):
(WebViewHost::shouldChangeSelectedRange):
(WebViewHost::shouldDeleteRange):
(WebViewHost::shouldApplyStyle):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):

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

7 years ago[chromium] Fix methods in TestRunner that directly modify the settings instead of...
jochen@chromium.org [Tue, 18 Dec 2012 07:58:35 +0000 (07:58 +0000)]
[chromium] Fix methods in TestRunner that directly modify the settings instead of going through WebPreferences
https://bugs.webkit.org/show_bug.cgi?id=105154

Reviewed by Tony Chang.

If the settings are modified directly, the embedder can't keep track of
them and might accidentially override the changed settings.

* DumpRenderTree/chromium/TestRunner/public/WebPreferences.h:
(WebPreferences):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:
(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::setAsynchronousSpellCheckingEnabled):
(WebTestRunner):
(WebTestRunner::TestRunner::setMinimumTimerInterval):
(WebTestRunner::TestRunner::setTouchDragDropEnabled):
* DumpRenderTree/chromium/TestRunner/src/TestRunner.h:
(TestRunner):
* DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
(WebTestRunner::WebPreferences::reset):
(WebTestRunner::WebPreferences::applyTo):

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

7 years ago[BlackBerry] Editable text element can't be selected
commit-queue@webkit.org [Tue, 18 Dec 2012 07:34:20 +0000 (07:34 +0000)]
[BlackBerry] Editable text element can't be selected
https://bugs.webkit.org/show_bug.cgi?id=105240

Patch by Sean Wang <Xuewen.Wang@torchmobile.com.cn> on 2012-12-17
Reviewed by Rob Buis.
Internally reviewed by Genevieve Mak and Mike Fenton.

Internal PR266755
When the target is Text, we should allow it to collect text nodes in
the shadow tree of text editable elements.

* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getNodesFromRect):

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

7 years ago[Shadow] LargeDistributionWithLayout.html should be updated
shinyak@chromium.org [Tue, 18 Dec 2012 07:28:52 +0000 (07:28 +0000)]
[Shadow] LargeDistributionWithLayout.html should be updated
https://bugs.webkit.org/show_bug.cgi?id=105242

Reviewed by Ryosuke Niwa.

Since this test was written when distribution took O(N^2). However, now it's almost O(N), so this test finishes
in very short time. We should convert it unit to runs/s.

This test contains a some error to cause test failure, e.g. using obsolete API, so they also should be fixed.

* ShadowDOM/LargeDistributionWithLayout.html:

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

7 years agoWeb Inspector: paint inspector overlay on a transparency layer
caseq@chromium.org [Tue, 18 Dec 2012 07:14:18 +0000 (07:14 +0000)]
Web Inspector: paint inspector overlay on a transparency layer
https://bugs.webkit.org/show_bug.cgi?id=97659

Reviewed by Yury Semikhatsky.

Add a call to PlatformContextSkia::setDrawingToImageBuffer(true) to
fix wrong rendering of content on transparent background.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::paintPageOverlay):

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

7 years agoConstant fold !{number} in the parser
ggaren@apple.com [Tue, 18 Dec 2012 06:54:52 +0000 (06:54 +0000)]
Constant fold !{number} in the parser
https://bugs.webkit.org/show_bug.cgi?id=105232

Reviewed by Filip Pizlo.

Typically, we wait for hot execution and constant fold in the DFG.
However, !0 and !1 are common enough in minifiers that it can be good
to get them out of the way early, for faster/smaller parsing and startup.

* parser/ASTBuilder.h:
(JSC::ASTBuilder::createLogicalNot): !{literal} is super simple, especially
since there's no literal form of NaN or Inf.

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

7 years agoExposing querySelector function on WebNode
commit-queue@webkit.org [Tue, 18 Dec 2012 06:37:08 +0000 (06:37 +0000)]
Exposing querySelector function on WebNode
https://bugs.webkit.org/show_bug.cgi?id=105193

Patch by Alex Hutter <ahutter@chromium.org> on 2012-12-17
Reviewed by Darin Fisher.

This change is necessitated by the new autofill flows in chromium.

* public/WebNode.h:
* src/WebNode.cpp:
(WebKit::WebNode::querySelector):
(WebKit):

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

7 years agoUnreviewed unit test skipping.
jchaffraix@webkit.org [Tue, 18 Dec 2012 06:10:43 +0000 (06:10 +0000)]
Unreviewed unit test skipping.

Filed https://bugs.webkit.org/show_bug.cgi?id=105253 to re-enable them.

* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI):
(TestWebKitAPI::TEST):

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

7 years agoUnreviewed rebaseline after r137593.
loislo@chromium.org [Tue, 18 Dec 2012 05:53:50 +0000 (05:53 +0000)]
Unreviewed rebaseline after r137593.

* platform/chromium-linux-x86/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-linux/editing/selection/move-by-character-6-expected.png:
* platform/chromium-linux/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.png:
* platform/chromium-mac-lion/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac-snowleopard/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-mac/editing/selection/move-by-character-6-expected.png:
* platform/chromium-mac/editing/selection/move-by-character-6-expected.txt: Added.
* platform/chromium-win/editing/selection/move-by-character-6-expected.png:
* platform/chromium-win/editing/selection/move-by-character-6-expected.txt:

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

7 years agoAdd ASSERTions to ensure that CSSPropertys that are variables only ever refer to...
macpherson@chromium.org [Tue, 18 Dec 2012 05:35:34 +0000 (05:35 +0000)]
Add ASSERTions to ensure that CSSPropertys that are variables only ever refer to CSSValues that are variables.
https://bugs.webkit.org/show_bug.cgi?id=104876

Reviewed by Steve Block.

Add assertions to CSSProperty constructors to make that if it is initialized with CSSPropertyVariable that
the value type associated with it is also a variable. This is already asserted at read time, but ASSERTing
here will produce a more useful backtrace.

No new tests as functionality unchanged.

* css/CSSProperty.h:
(WebCore::CSSProperty::CSSProperty):

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

7 years agoWeb Inspector: Make inspector scripts sourceURL absolute.
vsevik@chromium.org [Tue, 18 Dec 2012 05:30:10 +0000 (05:30 +0000)]
Web Inspector: Make inspector scripts sourceURL absolute.
https://bugs.webkit.org/show_bug.cgi?id=105166

Reviewed by Yury Semikhatsky.

* inspector/front-end/utilities.js:

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

7 years agoREGRESSION(r137442): Crash because of an uninitialized member.
commit-queue@webkit.org [Tue, 18 Dec 2012 05:23:27 +0000 (05:23 +0000)]
REGRESSION(r137442): Crash because of an uninitialized member.
https://bugs.webkit.org/show_bug.cgi?id=105246

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Noam Rosenthal.

TextureMapperGL defines m_context although TextureMapper defines m_context.
r137442 removes the initialization code in TextureMapperGL, which is
what causes this regression. This patch removes the duplicated member
in TextureMapperGL.

No new tests. Covered by existing tests.

* platform/graphics/texmap/TextureMapper.cpp:
(WebCore::TextureMapper::TextureMapper):
* platform/graphics/texmap/TextureMapper.h:
(WebCore::TextureMapper::setGraphicsContext):
(WebCore::TextureMapper::graphicsContext):
(TextureMapper):
* platform/graphics/texmap/TextureMapperGL.h:
(WebCore):

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

7 years agoQueue container size requests while images are loading.
pdr@google.com [Tue, 18 Dec 2012 05:01:49 +0000 (05:01 +0000)]
Queue container size requests while images are loading.
https://bugs.webkit.org/show_bug.cgi?id=105097

Reviewed by Dean Jackson.

Source/WebCore:

We use CachedImage::setContainerSizeForRenderer(...) to notify images of requesting
container sizes. Unfortunately, if the image is not yet loaded we ignore this container
size information! This patch stores requesting container sizes made while the image is
not yet loaded.

This patch fixes a bug where SVG images would display incorrectly on the first load but
correctly thereafter. Additionally, this bug caused the SVGImageCache to not be used in many
real world scenarios.

This patch is loosely based on a patch by blambov in WK98403.

Test: http/tests/misc/svg-image-delayed-size-negotiation.html

* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::didRemoveClient):
(WebCore::CachedImage::allClientsRemoved):
(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::clear):
(WebCore::CachedImage::createImage):
* loader/cache/CachedImage.h:

    A new map has been added to track renderer -> size information before an image has
    loaded. Note that this affects all images (not just images that require container size
    information) but we cannot know the image type before the image has loaded.

LayoutTests:

I reused the embedded.svg and svg-slow.pl test files from a similar test for svg-as-object
size negotiation. svg-slow.pl simply delays the loading of the embedded.svg file.
Triggering this bug reliably using the local filesystem is too brittle.

* http/tests/misc/svg-image-delayed-size-negotiation-expected.html: Added.
* http/tests/misc/svg-image-delayed-size-negotiation.html: Added.

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

7 years agoDFG is too aggressive eliding overflow checks for additions involving large constants
fpizlo@apple.com [Tue, 18 Dec 2012 04:35:10 +0000 (04:35 +0000)]
DFG is too aggressive eliding overflow checks for additions involving large constants
https://bugs.webkit.org/show_bug.cgi?id=105239

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

If we elide overflow checks on an addition (or subtraction) involving a larger-than-2^32 immediate,
then make sure that the non-constant child of the addition knows that he's got to do an overflow
check, by flowing the UsedAsNumber property at him.

* dfg/DFGGraph.h:
(JSC::DFG::Graph::addSpeculationMode):
(Graph):
(JSC::DFG::Graph::addShouldSpeculateInteger):
(JSC::DFG::Graph::addImmediateShouldSpeculateInteger):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-int-overflow-large-constants-in-a-line-expected.txt: Added.
* fast/js/dfg-int-overflow-large-constants-in-a-line.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-int-overflow-large-constants-in-a-line.js: Added.
(foo):

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

7 years agoWeb Inspector: need to visually distinguish UA shadow roots
shinyak@chromium.org [Tue, 18 Dec 2012 04:33:40 +0000 (04:33 +0000)]
Web Inspector: need to visually distinguish UA shadow roots
https://bugs.webkit.org/show_bug.cgi?id=104877

Reviewed by Yury Semikhatsky.

Source/WebCore:

Now we have an option to show ShadowRoot in the Inspector. Since the Inspector has displayed UserAgent ShadowRoot and
Author ShadowRoot as the same #shadow-root, a user could not distinguish them.

We would like to show UserAgent ShadowRoot as #webkit-shadow-root.

Test: inspector/shadow-root.html

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForNode): Make nodeName of UserAgent ShadowRoot #webkit-shadow-root.
Since the correct nodeName of ShadowRoot is #document-fragment, we have to specify the nodeName of Author ShadowRoot
as #shadow-root here.

LayoutTests:

* inspector/elements/shadow-dom-modify-chardata-expected.txt:
* inspector/elements/shadow-root-expected.txt:
* inspector/elements/shadow-root.html: Adds <input> test.

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

7 years agofast/dom/shadow/host-wrapper-reclaimed.html is failing on EFL bots
tasak@google.com [Tue, 18 Dec 2012 04:28:42 +0000 (04:28 +0000)]
fast/dom/shadow/host-wrapper-reclaimed.html is failing on EFL bots
https://bugs.webkit.org/show_bug.cgi?id=103109

Reviewed by Kentaro Hara.

host-wrapper-reclaimed uses gc(), but the function gc is not defined
in all platforms, e.g. "ReferenceError: Can't find variable: gc".
So we should include js-test-pre.js, which defines gc.

* fast/dom/shadow/host-wrapper-reclaimed-expected.txt:
* fast/dom/shadow/host-wrapper-reclaimed.html:

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

7 years ago[BlackBerry] Prevent selection handles from being rendered after selection was canceled
commit-queue@webkit.org [Tue, 18 Dec 2012 04:19:25 +0000 (04:19 +0000)]
[BlackBerry] Prevent selection handles from being rendered after selection was canceled
https://bugs.webkit.org/show_bug.cgi?id=105203

Patch by Yongxin Dai <yodai@rim.com> on 2012-12-17
Reviewed by Rob Buis.

PR255438

Here is the explanation why handles occur without selection overlay.
1. Still touch at current selection (Selection A) initiated by touch-hold
2. Selection expanding (Selection B) is ongoing
3. Finger moves. In UI thread:
    1) SelectionHander::cancelSelection() gets called.
        a. Selection A is canceled immediately (clear selecting state and hide handles)
        b. Post a request to webkit thread to cancel Selection A.
4. In webkit thread:
    1) Selection B becomes active selection
        a. Show selection overlay for Selection B
        b. Dispatch Selection B to UI thread to show handles
    2) Handle the request of canceling Selection A. The selection A was gone. Instead the active Selection B is canceled.
    The visual change is Selection overlay for Selection B becomes invisible..
5. In UI thread:
    Selection B is rendered. The start handle and the end handle occur without selection overlay.

The fix is to notify client with a empty selection whenever the selection is canceled in webkit thread.

Reviewed Internally by Mike Fenton.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::cancelSelection):

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

7 years agoDFG: Refactor DFGCorrectableJumpPoint to reduce size of OSRExit data
msaboff@apple.com [Tue, 18 Dec 2012 03:51:07 +0000 (03:51 +0000)]
DFG: Refactor DFGCorrectableJumpPoint to reduce size of OSRExit data
https://bugs.webkit.org/show_bug.cgi?id=105237

Reviewed by Filip Pizlo.

Replaced DFGCorrectableJumpPoint with OSRExitCompilationInfo which is used and kept alive only while we are
compiling in the DFG.  Moved the patchable branch offset directly into OSRExit.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* assembler/AbstractMacroAssembler.h:
* dfg/DFGCorrectableJumpPoint.cpp: Removed.
* dfg/DFGCorrectableJumpPoint.h: Removed.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::appendExitJump):
(JITCompiler):
* dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::setPatchableCodeOffset):
(JSC::DFG::OSRExit::getPatchableCodeOffsetAsJump):
(JSC::DFG::OSRExit::codeLocationForRepatch):
(JSC::DFG::OSRExit::correctJump):
* dfg/DFGOSRExit.h:
(OSRExit):
* dfg/DFGOSRExitCompilationInfo.h: Added.
(OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::OSRExitCompilationInfo):
(JSC::DFG::OSRExitCompilationInfo::failureJump):
* dfg/DFGOSRExitCompiler.cpp:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):

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

7 years agoTry to fix the Mac build.
weinig@apple.com [Tue, 18 Dec 2012 03:44:54 +0000 (03:44 +0000)]
Try to fix the Mac build.

* NetworkProcess/mac/NetworkProcessMac.mm:

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

7 years ago[chromium] Add the GL_CHROMIUM_lose_context to WebGraphicsContext3D
danakj@chromium.org [Tue, 18 Dec 2012 03:30:27 +0000 (03:30 +0000)]
[chromium] Add the GL_CHROMIUM_lose_context to WebGraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=105238

Reviewed by James Robinson.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::loseContext):

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

7 years ago[EFL] Add ecore_imf_evas to FindEcore.cmake
commit-queue@webkit.org [Tue, 18 Dec 2012 02:39:54 +0000 (02:39 +0000)]
[EFL] Add ecore_imf_evas to FindEcore.cmake
https://bugs.webkit.org/show_bug.cgi?id=105159

Patch by Halton Huo <halton.huo@intel.com> on 2012-12-17
Reviewed by Laszlo Gombos.

.:

ecore_imf_evas is a separate library, we should add for EFL port as well.

* Source/cmake/FindEcore.cmake: Add finding FIND_EFL_LIBRARY for ecore_imf_evas

Source/WebKit2:

* PlatformEfl.cmake: Add ECORE_IMF_EVAS_LIBRARIES to WebProcess_LIBRARIES

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

7 years agoCoordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
commit-queue@webkit.org [Tue, 18 Dec 2012 02:38:10 +0000 (02:38 +0000)]
Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103959

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop() is used when class
methods cannot be called asynchronously by client. Updates of tiles are
committed as soon as all the events in event queue have been processed.
After this patch Frame sets m_commitTileUpdatesOnIdleEventLoop to true.

In addition, remove TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed()
which was introduced for Coordinated Graphics.

Refactoring covered by existing tests.

* page/Frame.cpp:
(WebCore::Frame::setTiledBackingStoreEnabled):
* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTrajectoryVector):
  Separate setting a trajectory vector from coverWithTilesIfNeeded().
(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):
(WebCore::TiledBackingStore::setCommitTileUpdatesOnIdleEventLoop):
* platform/graphics/TiledBackingStoreClient.h:
(WebCore::TiledBackingStoreClient::tiledBackingStoreHasPendingTileCreation):
    If TiledBackingStore does not create all tiles, TiledBackingStore
    notifies a client of needing to create tiles more, when
    m_commitTileUpdatesOnIdleEventLoop is false.

Source/WebKit2:

Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
It has two problem.
1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent
TiledBackingStore from asynchronously sending UpdateTile message to UI
Process.
2. CreateTile and RemoveTile message can be sent to UI Process at any time.

This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
It means only during flushing layer states, CoordinatedGraphicsLayer
calls methods of TiledBackingStore, which indirectly call createTile(),
updateTile() and removeTile().

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
(WebCore::CoordinatedGraphicsLayer::setContentsScale):
(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
(WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
(WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
(WebCore::CoordinatedGraphicsLayer::createTile):
(WebCore::CoordinatedGraphicsLayer::updateTile):
(WebCore::CoordinatedGraphicsLayer::removeTile):
(WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
(WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
(WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
(WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
(CoordinatedGraphicsLayer):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
(WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
(WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

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

7 years agoCan't visit sites with untrusted certs with the NetworkProcess.
beidson@apple.com [Tue, 18 Dec 2012 02:22:51 +0000 (02:22 +0000)]
Can't visit sites with untrusted certs with the NetworkProcess.
<rdar://problem/12885641> and https://bugs.webkit.org/show_bug.cgi?id=105235

Reviewed by Sam Weinig.

For Mac the missing functionality is being able to tell the network layer in the
NetworkProcess to temporarily accept a certificate chain for the given host.

This patch adds some SPI supporting the way this works on Mac.

Add a message and Mac implementation for "allowSpecificHTTPSCertificateForHost":
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:
* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):

Add SPI for the embedding app"
* UIProcess/API/C/WKContext.cpp:
(WKContextAllowSpecificHTTPSCertificateForHost):
* UIProcess/API/C/WKContextPrivate.h:

* UIProcess/WebContext.cpp:
(WebKit::WebContext::allowSpecificHTTPSCertificateForHost):
* UIProcess/WebContext.h:

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

7 years agoTrack menu should be sorted
dino@apple.com [Tue, 18 Dec 2012 01:56:28 +0000 (01:56 +0000)]
Track menu should be sorted
https://bugs.webkit.org/show_bug.cgi?id=105229

Reviewed by Eric Carlson.

Source/WebCore:

Make sure that the <li> elements in the track menu are correctly
sorted as they are built. This uses insertion sort, but it shouldn't
be horrible given that we don't expect a huge number of tracks.

Test: media/video-controls-captions-trackmenu-sorted.html

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::insertTextTrackMenuItemIntoSortedContainer): New function that calls insertBefore with
the correct parameters to ensure the <ul> is correctly sorted.
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
* html/shadow/MediaControlElements.h:
(MediaControlClosedCaptionsTrackListElement): Rename menuItems to m_menuItems for consistency.

LayoutTests:

New test to make sure we sort the menu of available tracks.

* media/video-controls-captions-trackmenu-sorted-expected.txt: Added.
* media/video-controls-captions-trackmenu-sorted.html: Added.
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:

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

7 years agoUnreviewed. Add Silvia Pfeiffer to contributor list.
dino@apple.com [Tue, 18 Dec 2012 01:48:03 +0000 (01:48 +0000)]
Unreviewed. Add Silvia Pfeiffer to contributor list.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agoRegression causing DOM objects to have unstable NPObject* references with v8 bindings
commit-queue@webkit.org [Tue, 18 Dec 2012 01:43:21 +0000 (01:43 +0000)]
Regression causing DOM objects to have unstable NPObject* references with v8 bindings
https://bugs.webkit.org/show_bug.cgi?id=104921

Source/WebCore:

Patch by Matthew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Fix regression introduced by changeset 135804 resulting in
unstable NPObject* references for v8 objects.  In the iter !=
v8NPObjectMap->end() code path, objectVector was left unassigned
if the for loop terminated without returning.

Also, V8Object::GetIdentityHash() is documented as not being guaranteed
as unique.  As such, don't ASSERT() that two objects with the same hash
must therefor be the same object.

Tests: plugins/npruntime/embed-property-iframe-equality.html

* bindings/v8/NPV8Object.cpp:
(WebCore::npCreateV8ScriptObject): Fix.

LayoutTests:

Patch by Mathew Dempsky <mdempsky@google.com> on 2012-12-17
Reviewed by Kentaro Hara.

Add variant of embed-property-equality test to verify that the
test still passes when the object being tested for equality
has already been remembered by a plugin from a different
JavaScript context.

* plugins/npruntime/embed-property-iframe-equality.html: Added.
* plugins/npruntime/embed-property-iframe-equality-expected.txt: Added.

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

7 years agoDFG is too aggressive with eliding overflow checks in loops
fpizlo@apple.com [Tue, 18 Dec 2012 01:35:13 +0000 (01:35 +0000)]
DFG is too aggressive with eliding overflow checks in loops
https://bugs.webkit.org/show_bug.cgi?id=105226

Reviewed by Mark Hahnenberg and Oliver Hunt.

Source/JavaScriptCore:

If we see a variable's live range cross basic block boundaries, conservatively assume that it may
be part of a data-flow back-edge, and as a result, we may have entirely integer operations that
could lead to the creation of an integer that is out of range of 2^52 (the significand of a double
float). This does not seem to regress any of the benchmarks we care about, and it fixes the bug.

In future we may want to actually look at whether or not there was a data-flow back-edge instead
of being super conservative about it. But we have no evidence, yet, that this would help us on
real code.

* dfg/DFGNodeFlags.h:
(DFG):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-int-overflow-in-loop-expected.txt: Added.
* fast/js/dfg-int-overflow-in-loop.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-int-overflow-in-loop.js: Added.
(foo):

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

7 years agoSeamless iframe should not announce a new browsing context
cfleizach@apple.com [Tue, 18 Dec 2012 01:21:55 +0000 (01:21 +0000)]
Seamless iframe should not announce a new browsing context
https://bugs.webkit.org/show_bug.cgi?id=86317

Reviewed by Eric Seidel.

Source/WebCore:

Introduce a new role for seamless frames so that the platforms can decide what to do
with this kind of object. For the mac, it's exposed as a group.

Test: platform/mac/accessibility/seamless-iframe.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isWebArea):
(WebCore::AccessibilityObject::isSeamlessWebArea):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::parentObjectIfExists):
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::boundingBoxRect):
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(createAccessibilityRoleMap):

Source/WebKit/chromium:

* public/WebAccessibilityRole.h:
* src/AssertMatchingEnums.cpp:

LayoutTests:

* platform/mac/accessibility/seamless-iframe-expected.txt: Added.
* platform/mac/accessibility/seamless-iframe.html: Added.

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

7 years agoButterfly::growArrayRight shouldn't be called on null Butterfly objects
mhahnenberg@apple.com [Tue, 18 Dec 2012 01:03:54 +0000 (01:03 +0000)]
Butterfly::growArrayRight shouldn't be called on null Butterfly objects
https://bugs.webkit.org/show_bug.cgi?id=105221

Reviewed by Filip Pizlo.

Currently we depend upon the fact that Butterfly::growArrayRight works with null Butterfly
objects purely by coincidence. We should add a new static function that null checks the old
Butterfly object and creates a new one if it's null, or calls growArrayRight if it isn't for
use in the couple of places in JSObject that expect such behavior to work.

* runtime/Butterfly.h:
(Butterfly):
* runtime/ButterflyInlines.h:
(JSC::Butterfly::createOrGrowArrayRight):
(JSC):
* runtime/JSObject.cpp:
(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createArrayStorage):

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

7 years agoPercentage width replaced element incorrectly rendered when intrinsic size changed
commit-queue@webkit.org [Tue, 18 Dec 2012 00:59:26 +0000 (00:59 +0000)]
Percentage width replaced element incorrectly rendered when intrinsic size changed
https://bugs.webkit.org/show_bug.cgi?id=102784

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-17
Reviewed by Tony Chang.

Source/WebCore:

To make relayout when the image dimension is changed,
and if the logical width is percent type and the containing block fits to it.
In this case, the containing block's width need to be updated first,
because the 'newWidth' was calculated from the 'old containing block width'.

Test: fast/css/percent-width-img-src-change.html

* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageDimensionsChanged):

LayoutTests:

Add test to check when the source of images with percentage width is changed.

* fast/css/percent-width-img-src-change.html: Added.
* fast/css/percent-width-img-src-change-expected.txt: Added.

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

7 years agoDidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since
bdakin@apple.com [Tue, 18 Dec 2012 00:44:40 +0000 (00:44 +0000)]
DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since
that varies
https://bugs.webkit.org/show_bug.cgi?id=105116
-and corresponding-
<rdar://problem/12889449>

Reviewed by Geoff Garen.

DidHitRelevantRepaintedObjectsAreaThreshold should not use the viewRect since that
varies depending on window size. This can lead to a huge amount of variability in
the heuristic which is not desired. Instead, we should use a hard-coded rect.
* page/Page.cpp:
(WebCore::relevantViewRect):
(WebCore):
(WebCore::Page::addRelevantRepaintedObject):
(WebCore::Page::addRelevantUnpaintedObject):

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

7 years ago[CoordinatedGraphics] Assertion hit in WebKit::LayerTreeRenderer::setLayerState()
commit-queue@webkit.org [Tue, 18 Dec 2012 00:26:50 +0000 (00:26 +0000)]
[CoordinatedGraphics] Assertion hit in WebKit::LayerTreeRenderer::setLayerState()
https://bugs.webkit.org/show_bug.cgi?id=104518

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-17
Reviewed by Noam Rosenthal.

CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly() must perform
only during flushing pending layer changes in CoordinatedLayerTreeHost.
RenderLayerCompositor can call GraphicsLayer::flushCompositingState() regardless
of CoordinatedLayerTreeHost and it breaks our assumption. It means that
CoordinatedGraphicsLayer can send messages although m_waitingForUIProcess in
CoordinatedLayerTreeHost is true.

Assertion hits because of the same reason. If RenderLayerCompositor calls
flushCompositingState() before the first CoordinatedLayerTreeHost::flushPendingLayerChanges(),
SetCompositingLayerState message can be prior to SetRootCompositingLayer message.

We fix this by ensuring that we perform the layer flush only in the code
path originating from CoordinatedLayerTreeHost.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::flushCompositingState):
(WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayerClient):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

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

7 years agoFix repositioning of fixed elements on zooming
simon.fraser@apple.com [Tue, 18 Dec 2012 00:26:31 +0000 (00:26 +0000)]
Fix repositioning of fixed elements on zooming
https://bugs.webkit.org/show_bug.cgi?id=105223

Reviewed by Beth Dakin.

Source/WebCore:

When zoomed, scrolling would move the layers of fixed-position
elements oddly. This happened because on the scrolling thread we
passed a scale of 1, rather than the actual page scale to
scrollOffsetForFixedPosition().

Fix by plumbing the page scale through the scrolling state node
to the scrolling node.

Test: platform/mac/tiled-drawing/fixed/four-bars-zoomed.html

* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateScrollingNode::dumpProperties):
* page/scrolling/ScrollingStateScrollingNode.h:
(WebCore::ScrollingStateScrollingNode::frameScaleFactor):
(ScrollingStateScrollingNode):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):
(WebCore::ScrollingTreeScrollingNode::update):
* page/scrolling/ScrollingTreeScrollingNode.h:
(WebCore::ScrollingTreeScrollingNode::frameScaleFactor):
(ScrollingTreeScrollingNode):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
(ScrollParameters):
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorMac::setScrollParametersForNode):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

LayoutTests:

Testcase that zoomed with fixed-position elements.

* platform/mac/tiled-drawing/fixed/four-bars-zoomed-expected.txt: Added.
* platform/mac/tiled-drawing/fixed/four-bars-zoomed.html: Added.

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

7 years agobuild.webkit.org - add more google windows bots
dpranke@chromium.org [Tue, 18 Dec 2012 00:05:40 +0000 (00:05 +0000)]
build.webkit.org - add more google windows bots
https://bugs.webkit.org/show_bug.cgi?id=105225

Reviewed by Eric Seidel.

Adds two more windows bots (google-windows-3, a builder, and
google-windows-4, a tester) for the Chromium configs.

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

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

7 years agoImplement matching cue by the class name with ::cue pseudo element
commit-queue@webkit.org [Tue, 18 Dec 2012 00:01:39 +0000 (00:01 +0000)]
Implement matching cue by the class name with ::cue pseudo element
https://bugs.webkit.org/show_bug.cgi?id=104191

Patch by Dima Gorbik <dgorbik@apple.com> on 2012-12-17
Reviewed by Antti Koivisto.

Source/WebCore:

Implemented the ::cue() pseudo-element with an argument that may hold a simple selector list.
This enables matching cue objects by the class name.

Test: media/track/track-css-matching.html

* css/CSSGrammar.y.in: support parsing the ::cue() with an argument.
* css/CSSParser.cpp:
(WebCore::CSSParser::detectFunctionTypeToken): tokenize the 'cue'.
(WebCore::CSSParser::updateSpecifiersWithElementName): do not set the tag for the cue pseudo-element because
the ::cue may match elements with different tags.
(WebCore::CSSParser::updateSpecifiers): the behavior for the PseudoCue selector should be same as for
unknown pseudo elements - the pseudo-element should stay on top of the selector chain.
* css/CSSSelector.cpp: added the type detection for the new selector.
(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::extractPseudoType):
* css/CSSSelector.h:
* css/RuleSet.cpp: add a new list to hold all the rulesets for the new pseudo element.
(WebCore::RuleSet::reportMemoryUsage):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::shrinkToFit):
* css/RuleSet.h:
(RuleSet):
(WebCore::RuleSet::cuePseudoRules):
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOneSelector):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRules):
* dom/Element.cpp: an addition to the rare data to be able to find out if the node is a webvtt node.
(WebCore):
(WebCore::Element::isWebVTTNode):
(WebCore::Element::setIsWebVTTNode):
(WebCore::Element::cloneDataFromElement):
* dom/Element.h:
(Element):
* dom/ElementRareData.h:
(ElementRareData):
* dom/NodeRareData.h:
(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
(WebCore::NodeRareData::isWebVTTNode):
(WebCore::NodeRareData::setIsWebVTTNode):
* html/track/TextTrackCue.cpp:
(WebCore::TextTrackCue::markNodesAsWebVTTNodes): mark the cloned nodes as WebVTT nodes.
(WebCore):
(WebCore::TextTrackCue::getCueAsHTML):
* html/track/TextTrackCue.h:
(TextTrackCue):
* html/track/WebVTTParser.cpp:
(WebCore::WebVTTParser::constructTreeFromToken):
* rendering/style/RenderStyleConstants.h:

LayoutTests:

Verify that ::cue pseudo-element accepts a simple-selector list that matches cue objects by the a class.

* media/track/captions-webvtt/styling.vtt:
* media/track/track-css-matching-expected.txt: Added.
* media/track/track-css-matching.html: Added.

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

7 years agoIndexedDB: Don't use strings to represent serialized values
commit-queue@webkit.org [Mon, 17 Dec 2012 23:59:47 +0000 (23:59 +0000)]
IndexedDB: Don't use strings to represent serialized values
https://bugs.webkit.org/show_bug.cgi?id=104354

Patch by Michael Pruett <michael@68k.org> on 2012-12-17
Reviewed by Kentaro Hara.

Use Vector<uint8_t> rather than String to represent serialized values
in IndexedDB. This change is necessary to implement IndexedDB for JSC.

Tests: storage/indexeddb/*

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::getRecord):
(WebCore::IDBBackingStore::putRecord):
(WebCore::ObjectStoreKeyCursorImpl::value):
(WebCore::ObjectStoreKeyCursorImpl::ObjectStoreKeyCursorImpl):
(WebCore::ObjectStoreCursorImpl::value):
(ObjectStoreCursorImpl):
(WebCore::ObjectStoreCursorImpl::loadCurrentRow):
(WebCore::IndexKeyCursorImpl::value):
(WebCore::IndexCursorImpl::value):
(WebCore::IndexCursorImpl::IndexCursorImpl):
(IndexCursorImpl):
(WebCore::IndexCursorImpl::loadCurrentRow):
* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
(Cursor):
* Modules/indexeddb/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):
* Modules/indexeddb/IDBCursorBackendImpl.h:
(WebCore::IDBCursorBackendImpl::value):
* Modules/indexeddb/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::IndexReferencedValueRetrievalOperation::perform):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreRetrievalOperation::perform):
(WebCore::IDBObjectStoreBackendImpl::ObjectStoreStorageOperation::perform):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::SerializedScriptValue):
(WebCore):
* bindings/js/SerializedScriptValue.h:
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::createFromWireBytes):
(WebCore):
(WebCore::SerializedScriptValue::toWireBytes):
* bindings/v8/SerializedScriptValue.h:
(SerializedScriptValue):

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

7 years agoLayout Test editing/selection/move-by-character-crash-test-textarea.html is flaky
rniwa@webkit.org [Mon, 17 Dec 2012 23:54:18 +0000 (23:54 +0000)]
Layout Test editing/selection/move-by-character-crash-test-textarea.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=104951

Reviewed by Eric Seidel.

The problem was that editing/selection/move-by-character-6.html was running editing commands
in a timer without making the test runner wait. Fixed the bug by calling waitUntilDone and
notifyDone at appropriate places in editing.js.

We don't need to rebaseline other tests since this is the only test that uses commandDelay.

* editing/editing.js:
(setSelectionCommand):
(transposeCharactersCommand):
(moveSelectionLeftByCharacterCommand):
(moveSelectionRightByCharacterCommand):
(extendSelectionLeftByCharacterCommand):
(extendSelectionRightByCharacterCommand):
(moveSelectionForwardByCharacterCommand):
(extendSelectionForwardByCharacterCommand):
(moveSelectionForwardByWordCommand):
(extendSelectionForwardByWordCommand):
(moveSelectionForwardBySentenceCommand):
(extendSelectionForwardBySentenceCommand):
(moveSelectionForwardByLineCommand):
(extendSelectionForwardByLineCommand):
(moveSelectionForwardByLineBoundaryCommand):
(extendSelectionForwardByLineBoundaryCommand):
(moveSelectionBackwardByCharacterCommand):
(extendSelectionBackwardByCharacterCommand):
(moveSelectionBackwardByWordCommand):
(extendSelectionBackwardByWordCommand):
(moveSelectionBackwardBySentenceCommand):
(extendSelectionBackwardBySentenceCommand):
(moveSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineCommand):
(extendSelectionBackwardByLineBoundaryCommand):
(moveSelectionBackwardByLineBoundaryCommand):
(boldCommand):
(underlineCommand):
(fontNameCommand):
(fontSizeCommand):
(fontSizeDeltaCommand):
(italicCommand):
(justifyCenterCommand):
(justifyLeftCommand):
(justifyRightCommand):
(insertHTMLCommand):
(insertImageCommand):
(insertLineBreakCommand):
(insertParagraphCommand):
(insertNewlineInQuotedContentCommand):
(typeCharacterCommand):
(selectAllCommand):
(strikethroughCommand):
(undoCommand):
(redoCommand):
(changeRootSize):
(cutCommand):
(copyCommand):
(pasteCommand):
(createLinkCommand):
(unlinkCommand):
(pasteAndMatchStyleCommand):
(deleteCommand):
(forwardDeleteCommand):
(backColorCommand):
(foreColorCommand):
(executeCommand):
* platform/mac/editing/selection/move-by-character-6-expected.txt: Rebaselined.

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

7 years agoCleanup --profiler=perf code a little and allow up to 1000 report files (instead...
eric@webkit.org [Mon, 17 Dec 2012 23:28:08 +0000 (23:28 +0000)]
Cleanup --profiler=perf code a little and allow up to 1000 report files (instead of 100)
https://bugs.webkit.org/show_bug.cgi?id=105217

Reviewed by Dirk Pranke.

Previously --profile would fail strangely if find_unused_filename returned None
(which would happen as soon as we had 100 report files).
Now we'll search through 1000 filenames before giving up (and assert if we failed to find one).
I also made some minor cleanups to the output of perf, and tried to make the
commands more self-documenting by using long-names for args.

* Scripts/webkitpy/common/system/profiler.py:
(SingleFileOutputProfiler.__init__):
(Perf.attach_to_pid):
(Perf.profile_after_exit):

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

7 years agojavascript integer overflow
fpizlo@apple.com [Mon, 17 Dec 2012 23:10:41 +0000 (23:10 +0000)]
javascript integer overflow
https://bugs.webkit.org/show_bug.cgi?id=104967

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Fix PutScopedVar backward flow.

* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):

LayoutTests:

* fast/js/dfg-put-scoped-var-backward-flow-expected.txt: Added.
* fast/js/dfg-put-scoped-var-backward-flow.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-put-scoped-var-backward-flow.js: Added.
(sum):

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

7 years agoChange SET_VAR, SET_BORDERVALUE_COLOR macro to require semicolon(;) at the end of...
commit-queue@webkit.org [Mon, 17 Dec 2012 23:08:20 +0000 (23:08 +0000)]
Change SET_VAR, SET_BORDERVALUE_COLOR macro to require semicolon(;) at the end of the line
https://bugs.webkit.org/show_bug.cgi?id=104774

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-12-17
Reviewed by Eric Seidel.

Remove the last ; in SET_VAR, SET_BORDERVALUE_COLOR macro definition.
Add the omitted ; in RenderStyle.h | .cpp

No new tests, just style change.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setColor):
(WebCore::RenderStyle::setVisitedLinkColor):
(WebCore::RenderStyle::setHorizontalBorderSpacing):
(WebCore::RenderStyle::setVerticalBorderSpacing):
* rendering/style/RenderStyle.h:

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

7 years ago[BlackBerry] Deadlock caused by PluginViewPrivate::destroyBuffers()
yoli@rim.com [Mon, 17 Dec 2012 22:43:26 +0000 (22:43 +0000)]
[BlackBerry] Deadlock caused by PluginViewPrivate::destroyBuffers()
https://bugs.webkit.org/show_bug.cgi?id=105215

Reviewed by Rob Buis.
Also internally reviewed by George Staikos.

PR# 266443
It should release mutexes before sending sync message.

* plugins/blackberry/PluginViewPrivateBlackBerry.cpp:
(WebCore::PluginViewPrivate::destroyBuffers):

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

7 years agoChromium rebaseline fast/gradients/css3-linear-angle-gradients.html
commit-queue@webkit.org [Mon, 17 Dec 2012 22:42:35 +0000 (22:42 +0000)]
Chromium rebaseline fast/gradients/css3-linear-angle-gradients.html
https://bugs.webkit.org/show_bug.cgi?id=105211

Patch by Tab Atkins <jackalmage@gmail.com> on 2012-12-17
Reviewed by Dean Jackson.

* platform/chromium-mac-lion/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/gradients/css3-linear-angle-gradients-expected.png: Removed.
* platform/chromium-mac/fast/gradients/css3-linear-angle-gradients-expected.png:
* platform/chromium-win/fast/gradients/css3-linear-angle-gradients-expected.png:

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

7 years agoUnreviewed, rolling out r137198.
commit-queue@webkit.org [Mon, 17 Dec 2012 22:36:16 +0000 (22:36 +0000)]
Unreviewed, rolling out r137198.
http://trac.webkit.org/changeset/137198
https://bugs.webkit.org/show_bug.cgi?id=105212

This patch is causing API behavior compatibility problems
(Requested by zdobersek on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-17

Source/WebCore:

* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateFromSoupMessage):

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(willSendRequestCallback):

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

7 years agoAX: textUnderElement should consider alt text, but skip links and controls
dmazzoni@google.com [Mon, 17 Dec 2012 22:24:03 +0000 (22:24 +0000)]
AX: textUnderElement should consider alt text, but skip links and controls
https://bugs.webkit.org/show_bug.cgi?id=101650

Reviewed by Chris Fleizach.

Source/WebCore:

Getting inner text from an element now ignores focusable descendants
and containers, but uses alternative text.  The computation of
textUnderElement is now recursive and doesn't depend on text
iterators, which might not do the right thing for accessibility
anyways.

For GTK, the old behavior is retained so that support for
the object replacement character is still there. Filed a new
bug (105214) for GTK folks to look at this.

Test: accessibility/button-title-uses-inner-img-alt.html
Test: accessibility/focusable-div.html

* accessibility/AccessibilityNodeObject.cpp:
(WebCore):
(WebCore::shouldUseAccessiblityObjectInnerText):
(WebCore::AccessibilityNodeObject::textUnderElement):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textUnderElement):

LayoutTests:

Adds new tests to show that getting inner text from an element
now ignores focusable descendants and containers, but uses alternative
text.

Updates and rebaselines several tests to reflect the new logic.
Skips these tests on GTK until support for the object replacement
character can be added.

* accessibility/button-title-uses-inner-img-alt-expected.txt: Added.
* accessibility/button-title-uses-inner-img-alt.html: Added.
* accessibility/focusable-div-expected.txt: Extended with more test cases.
* accessibility/focusable-div.html: Extended with more test cases.
* platform/chromium/TestExpectations: Un-skip test that now passes.
* platform/chromium/accessibility/image-link-expected.txt: Rebaseline
* platform/mac/accessibility/image-link-expected.txt: Rebaseline
* platform/mac/accessibility/internal-link-anchors2-expected.txt: Rebaseline
* platform/mac/accessibility/static-text-role-uses-text-under-element-expected.txt: Rebaseline
* platform/mac/accessibility/static-text-role-uses-text-under-element.html: Fix
* platform/mac/accessibility/table-with-aria-role-expected.txt: Rebaseline
* platform/gtk/TestExpectations: Skip these tests until this feature is implemented for GTK.

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

7 years agoConvert sub-pixel iframe-copy-on-scroll tests to use Mock scrollbars
leviw@chromium.org [Mon, 17 Dec 2012 22:17:42 +0000 (22:17 +0000)]
Convert sub-pixel iframe-copy-on-scroll tests to use Mock scrollbars
https://bugs.webkit.org/show_bug.cgi?id=105210

Reviewed by Emil A Eklund.

Converting the iframe tests in sub-pixel/ to use mock scrollbars. These tests needed to
be rebaselined following r137847 anyways. Best to make this change before that.

* fast/sub-pixel/sub-pixel-iframe-copy-on-scroll.html:
* fast/sub-pixel/transformed-iframe-copy-on-scroll.html:
* platform/chromium-linux/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png:
* platform/chromium-linux/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
* platform/chromium/TestExpectations:

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

7 years agoUnreviewed. Adding myself to committers list.
esprehn@chromium.org [Mon, 17 Dec 2012 22:02:22 +0000 (22:02 +0000)]
Unreviewed. Adding myself to committers list.

* Scripts/webkitpy/common/config/committers.py:

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

7 years agonrwt: shuffle code around for cleanup in run_webkit_tests.py
dpranke@chromium.org [Mon, 17 Dec 2012 21:55:27 +0000 (21:55 +0000)]
nrwt: shuffle code around for cleanup in run_webkit_tests.py
https://bugs.webkit.org/show_bug.cgi?id=105078

Reviewed by Ojan Vafai.

This patch reorders functions so that run_webkit_tests can be
understood in a top-down matter better, and to make things slightly
more sensible when I merge manager.py into it.

Also, this adds tests for the actual main() routine, which had several
bugs get through testing a week or two ago.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
(parse_args):
(_set_up_derived_options):
(run):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest):
(RunTest.test_no_http_tests):
(PortTest.disabled_test_mac_lion):
(MainTest):
(MainTest.test_exception_handling):
(MainTest.test_exception_handling.interrupting_run):
(MainTest.test_exception_handling.successful_run):
(MainTest.test_exception_handling.successful_run.FakeRunDetails):
(MainTest.test_exception_handling.exception_raising_run):

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

7 years agowebkitpy: move --lint-test-files code into its own module
dpranke@chromium.org [Mon, 17 Dec 2012 21:50:27 +0000 (21:50 +0000)]
webkitpy: move --lint-test-files code into its own module
https://bugs.webkit.org/show_bug.cgi?id=105077

Reviewed by Eric Seidel.

It really didn't need to be in run_webkit_tests.py anymore.
This patch adds a new lint-test-expectations scripts to Tools/Scripts;
rwt --lint-test-files is still supported for backwards compatibility
for now.

* Scripts/lint-test-expectations: Added.
* Scripts/webkitpy/layout_tests/lint_test_expectations.py: Added.
(lint):
(main):
* Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Added.
(FakePort):
(FakePort.__init__):
(FakePort.test_configuration):
(FakePort.expectations_dict):
(FakePort.skipped_layout_tests):
(FakePort.all_test_configurations):
(FakePort.configuration_specifier_macros):
(FakePort.get_option):
(FakeFactory):
(FakeFactory.__init__):
(FakeFactory.get):
(FakeFactory.all_port_names):
(LintTest):
(LintTest.test_all_configurations):
(LintTest.test_lint_test_files):
(LintTest.test_lint_test_files__errors):
(MainTest):
(MainTest.test_success):
(MainTest.test_success.interrupting_lint):
(MainTest.test_success.successful_lint):
(MainTest.test_success.exception_raising_lint):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(StreamTestingMixin.assertNotEmpty):

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