WebKit-https.git
9 years agoVersioning.
lforschler@apple.com [Thu, 26 Apr 2012 21:08:22 +0000 (21:08 +0000)]
Versioning.

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

9 years agoObjcClass::methodsNamed() can leak if buffer is dynamically allocated
benjamin@webkit.org [Thu, 26 Apr 2012 21:07:56 +0000 (21:07 +0000)]
ObjcClass::methodsNamed() can leak if buffer is dynamically allocated
https://bugs.webkit.org/show_bug.cgi?id=84668

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-26
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Change ObjcClass::methodsNamed() to be based on a vector instead of managing
the memory manually.

Tests: platform/mac/plugins/bindings-objc-long-method-name.html
       platform/mac/plugins/bindings-objc-method-name-conversion.html

* bridge/objc/objc_class.mm:
(Bindings):
(JSC::Bindings::convertJSMethodNameToObjc):
(JSC::Bindings::ObjcClass::methodsNamed):

Tools:

Extend ObjCPlugin to support the new layout tests of the Objective-C bridge.

* DumpRenderTree/mac/ObjCPlugin.m:
(+[ObjCPlugin isSelectorExcludedFromWebScript:]):
(+[ObjCPlugin webScriptNameForSelector:]):
(-[ObjCPlugin methodMappedToLongName]):
(-[ObjCPlugin testConversionColon:]):
(-[ObjCPlugin _:]):

LayoutTests:

Extend the test coverage to accessor with very long name. Add coverage for the
JavaScript to Objective-C method name conversion.

* platform/mac/plugins/bindings-objc-long-method-name-expected.txt: Added.
* platform/mac/plugins/bindings-objc-long-method-name.html: Added.
* platform/mac/plugins/bindings-objc-method-name-conversion-expected.txt: Added.
* platform/mac/plugins/bindings-objc-method-name-conversion.html: Added.

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

9 years ago[Chromium] media/video-currentTime-set.html is flaky
dglazkov@chromium.org [Thu, 26 Apr 2012 21:01:35 +0000 (21:01 +0000)]
[Chromium] media/video-currentTime-set.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=85003

* platform/chromium/test_expectations.txt: Added expectation of flakiness.

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

9 years ago[Chromium] Single buffered canvas layers with the threaded compositor
jamesr@google.com [Thu, 26 Apr 2012 20:58:08 +0000 (20:58 +0000)]
[Chromium] Single buffered canvas layers with the threaded compositor
https://bugs.webkit.org/show_bug.cgi?id=80540

Patch by Justin Novosad <junov@chromium.org> on 2012-04-26
Reviewed by James Robinson.

Source/WebCore:

Tests:
CCLayerTreeHostTestWriteLayersRedraw
CCLayerTreeHostTestWriteLayersAfterVisible
Canvas2DLayerChromiumTest.testFullLifecycleSingleThreadDeferred
Canvas2DLayerChromiumTest.testFullLifecycleThreadDeferred
CCSchedulerTest.VisibilitySwitchWithTextureAcquisition
CCSchedulerTest.TextureAcquisitionCollision

Disable double buffering and rate limiting on accelerated canvas
when the threaded compositor and deferred canvas are enabled.
Concurrent access to the layer texture by the main renderer thread and
the compositor thread is avoided by enforcing a lock. The state of the
lock is maintained by CCSchedulerStateMachine. Write access by the main
thread is acquired through a signal round trip to the compositor thread,
which may block the main thread in the event that one or more committed
layers need to be protected until the compositor completes the requested
draw. Draws on the impl thread are cancelled if the main thread has
obtained write access to the texture.  The write access is relinquished
by the main thread upon commit completion.  The scheduler state machine
is responsible for preventing the texture lock from causing deadlocks by
detecting and resolving problematic states.

* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::create):
(WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):
(WebCore::Canvas2DLayerChromium::~Canvas2DLayerChromium):
(WebCore::Canvas2DLayerChromium::drawingIntoImplThreadTexture):
(WebCore):
(WebCore::Canvas2DLayerChromium::setTextureId):
(WebCore::Canvas2DLayerChromium::setNeedsDisplayRect):
(WebCore::Canvas2DLayerChromium::update):
(WebCore::Canvas2DLayerChromium::layerWillDraw):
(WebCore::Canvas2DLayerChromium::pushPropertiesTo):
* platform/graphics/chromium/Canvas2DLayerChromium.h:
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::acquireLayerTextures):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCScheduler.cpp:
(WebCore::CCScheduler::setMainThreadNeedsLayerTextures):
(WebCore):
(WebCore::CCScheduler::processScheduledActions):
* platform/graphics/chromium/cc/CCScheduler.h:
(CCSchedulerClient):
(CCScheduler):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
(WebCore::CCSchedulerStateMachine::CCSchedulerStateMachine):
(WebCore::CCSchedulerStateMachine::drawSuspendedUntilCommit):
(WebCore):
(WebCore::CCSchedulerStateMachine::scheduledToDraw):
(WebCore::CCSchedulerStateMachine::shouldDraw):
(WebCore::CCSchedulerStateMachine::shouldAcquireLayerTexturesForMainThread):
(WebCore::CCSchedulerStateMachine::nextAction):
(WebCore::CCSchedulerStateMachine::updateState):
(WebCore::CCSchedulerStateMachine::setMainThreadNeedsLayerTextures):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
(CCSchedulerStateMachine):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
(WebCore):
(WebCore::CCThreadProxy::acquireLayerTextures):
(WebCore::CCThreadProxy::acquireLayerTexturesForMainThreadOnImplThread):
(WebCore::CCThreadProxy::scheduledActionAcquireLayerTexturesForMainThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore):
(WebCore::AcceleratedDeviceContext::AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::prepareForDraw):
(AcceleratedDeviceContext):
(WebCore::createAcceleratedCanvas):
(WebCore::ImageBuffer::context):

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::AcquireLayerTextures):
(CCLayerTreeHostTest):
(WTF::CCLayerTreeHostTest::dispatchAcquireLayerTextures):
(WTF::TEST_F):
(WTF):
(CCLayerTreeHostTestWriteLayersRedraw):
(WTF::CCLayerTreeHostTestWriteLayersRedraw::CCLayerTreeHostTestWriteLayersRedraw):
(WTF::CCLayerTreeHostTestWriteLayersRedraw::beginTest):
(WTF::CCLayerTreeHostTestWriteLayersRedraw::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestWriteLayersRedraw::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestWriteLayersRedraw::afterTest):
(CCLayerTreeHostTestWriteLayersAfterVisible):
(WTF::CCLayerTreeHostTestWriteLayersAfterVisible::CCLayerTreeHostTestWriteLayersAfterVisible):
(WTF::CCLayerTreeHostTestWriteLayersAfterVisible::beginTest):
(WTF::CCLayerTreeHostTestWriteLayersAfterVisible::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestWriteLayersAfterVisible::afterTest):
* tests/CCSchedulerTest.cpp:
(WebKitTests::TEST):
(WebKitTests):
* tests/Canvas2DLayerChromiumTest.cpp:
(Canvas2DLayerChromiumTest::fullLifecycleTest):

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

9 years agoUnreviewed, rolling out r115342.
robert@webkit.org [Thu, 26 Apr 2012 20:53:53 +0000 (20:53 +0000)]
Unreviewed, rolling out r115342.
http://trac.webkit.org/changeset/115342

r115340 was rolled out

* platform/qt/test_expectations.txt:

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

9 years agoUnreviewed, rolling out r115349.
dglazkov@chromium.org [Thu, 26 Apr 2012 20:50:25 +0000 (20:50 +0000)]
Unreviewed, rolling out r115349.
http://trac.webkit.org/changeset/115349

Patch that required this change was reverted.

* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed, rolling out r115340.
dglazkov@chromium.org [Thu, 26 Apr 2012 20:47:23 +0000 (20:47 +0000)]
Unreviewed, rolling out r115340.
http://trac.webkit.org/changeset/115340
https://bugs.webkit.org/show_bug.cgi?id=83048

Does not work with Windows.

Tools:

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_reftest):
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(copy_file):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port._parse_reftest_list):
(Port.reference_files):
(Port._real_tests):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_reference_files):
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumDriverTest.test_write_command_and_read_line):

LayoutTests:

* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004a-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004b-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004c-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004c-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004d-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004d-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004e-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004e-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-004f-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-004f-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005a-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-005a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005b-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-005b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005c-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-005c-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-005d-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-005d-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009a-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009a-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009b-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009b-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009e-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009e-expected.txt: Added.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.png: Added.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.txt: Added.
* css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
* css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
* css2.1/20110323/background-016.htm: Removed.
* css2.1/20110323/block-replaced-width-001.htm: Added.
* css2.1/20110323/empty-inline-001.htm:
* css2.1/20110323/reftest.list: Removed.
* css2.1/reference/ref-filled-green-100px-square.htm: Removed.
* css2.1/reference/ref-filled-green-100px-square.xht: Removed.
* css2.1/reference/ref-if-there-is-no-red.htm: Removed.
* css2.1/reference/ref-if-there-is-no-red.xht: Removed.
* css2.1/reference/ref-nothing-below.htm: Removed.
* css2.1/reference/ref-nothing-below.xht: Removed.
* css2.1/reference/ref-this-text-should-be-green.htm: Removed.
* css2.1/reference/ref-this-text-should-be-green.xht: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/chromium-linux/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/chromium-mac-leopard/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/chromium-mac-snowleopard/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/chromium-mac/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/chromium-win/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/chromium-win/css2.1/20110323/empty-inline-001-expected.txt: Added.
* platform/chromium/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Added.
* platform/chromium/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
* platform/efl/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/efl/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
* platform/gtk/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Added.
* platform/mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Added.
* platform/mac-snowleopard/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Added.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
* platform/mac/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/mac/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
* platform/mac/css2.1/20110323/empty-inline-001-expected.png: Added.
* platform/mac/css2.1/20110323/empty-inline-001-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Added.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Added.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Added.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Added.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Added.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Added.
* platform/qt/css2.1/20110323/block-replaced-width-001-expected.png: Added.
* platform/qt/css2.1/20110323/block-replaced-width-001-expected.txt: Added.
* platform/qt/css2.1/20110323/empty-inline-001-expected.txt: Added.

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

9 years ago[V8] Pass Isolate to toV8() in SerializedScriptValue.cpp
haraken@chromium.org [Thu, 26 Apr 2012 20:41:20 +0000 (20:41 +0000)]
[V8] Pass Isolate to toV8() in SerializedScriptValue.cpp
https://bugs.webkit.org/show_bug.cgi?id=84918

Reviewed by Nate Chapin.

This is the last step to pass Isolate around in
SerializedScriptValue.cpp. This patch passes Isolate
to toV8().

No tests. No change in behavior.

* bindings/v8/SerializedScriptValue.cpp:

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

9 years ago[V8] Pass Isolate to wrapSlow()
haraken@chromium.org [Thu, 26 Apr 2012 20:34:09 +0000 (20:34 +0000)]
[V8] Pass Isolate to wrapSlow()
https://bugs.webkit.org/show_bug.cgi?id=84919

Reviewed by Nate Chapin.

The objective is to pass Isolate around in V8 bindings.
In this bug, we pass Isolate to wrapSlow().

Test: bindings/scripts/test/TestObj.idl etc

* bindings/scripts/CodeGeneratorV8.pm: Modified as described above.
(GenerateHeader):
(GenerateToV8Converters):

* bindings/scripts/test/V8/V8Float64Array.cpp: Updated run-bindings-tests.
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
(WebCore::V8Float64Array::wrap):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
(WebCore::V8TestActiveDOMObject::wrap):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::wrapSlow):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
(WebCore::V8TestCustomNamedGetter::wrap):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
(WebCore::V8TestEventConstructor::wrap):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
(WebCore::V8TestEventTarget::wrap):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
(WebCore::V8TestInterface::wrap):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
(WebCore::V8TestMediaQueryListListener::wrap):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructor):
(WebCore::V8TestNamedConstructor::wrap):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
(WebCore::V8TestNode::wrap):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
(WebCore::V8TestObj::wrap):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
(WebCore::V8TestSerializedScriptValueInterface::wrap):

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

9 years ago[Chromium] Remove expectation of a test failure after the test itself was removed...
dglazkov@chromium.org [Thu, 26 Apr 2012 20:17:01 +0000 (20:17 +0000)]
[Chromium] Remove expectation of a test failure after the test itself was removed in r115340.

* platform/chromium/test_expectations.txt: Removed failure expectation.

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

9 years ago[BlackBerry] properly disable DRAG_SUPPORT
tonikitoo@webkit.org [Thu, 26 Apr 2012 20:15:17 +0000 (20:15 +0000)]
[BlackBerry] properly disable DRAG_SUPPORT
https://bugs.webkit.org/show_bug.cgi?id=84952

Reviewed by Daniel Bates.
Patch by Antonio Gomes <agomes@rim.com>

.:

Add CMake build options to toggle DRAG_SUPPORT on/off,
and set its value for BlackBerry port.

* Source/cmake/OptionsBlackBerry.cmake: Set it OFF by default.
* Source/cmake/OptionsEFL.cmake: Set it ON by default.
* Source/cmake/OptionsWinCE.cmake: Set it OFF by default.
* Source/cmake/OptionsWindows.cmake: Set it ON by default.
* Source/cmakeconfig.h.cmake:

Source/WTF:

* wtf/Platform.h: Remove the line that disables drag support from here.

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

9 years agoAdd ScrollAnimatorBlackBerry as an extension to ScrollAnimatorNone
tonikitoo@webkit.org [Thu, 26 Apr 2012 20:15:07 +0000 (20:15 +0000)]
Add ScrollAnimatorBlackBerry as an extension to ScrollAnimatorNone
https://bugs.webkit.org/show_bug.cgi?id=84625

Reviewed by Anders Carlsson.
Patch by Antonio Gomes <agomes@rim.com>

Patch adds ScrollAnimatorBlackBerry class as an extension to of
ScrollAnimatorNone. The main goal here is extending the later to allow
overscrolling while the animation runs.

Once the animation finishes, the flag gets reseted and
ScrollableArea::constrainsScrollingtoContentEdge is set back to the value
it had before, so this method has to be explicitly called anytime it is wanted.

* CMakeLists.txt:
* platform/ScrollAnimator.h:
(WebCore::ScrollAnimator::animationWillStart):
(WebCore::ScrollAnimator::animationDidFinish):
(ScrollAnimator):
* platform/ScrollAnimatorNone.cpp:
(WebCore):
(WebCore::ScrollAnimatorNone::scroll):
(WebCore::ScrollAnimatorNone::animationTimerFired):
* platform/blackberry/ScrollAnimatorBlackBerry.cpp: Added.
(WebCore):
(WebCore::ScrollAnimator::create):
(WebCore::ScrollAnimatorBlackBerry::ScrollAnimatorBlackBerry):
(WebCore::ScrollAnimatorBlackBerry::animationWillStart):
(WebCore::ScrollAnimatorBlackBerry::animationDidFinish):
(WebCore::ScrollAnimatorBlackBerry::setDisableConstrainsScrollingToContentEdgeWhileAnimating):
* platform/blackberry/ScrollAnimatorBlackBerry.h: Added.
(WebCore):
(ScrollAnimatorBlackBerry):

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

9 years ago[BlackBerry] Add smooth_scrolling options to CMAKE and enable it for Blackberry
tonikitoo@webkit.org [Thu, 26 Apr 2012 20:14:54 +0000 (20:14 +0000)]
[BlackBerry] Add smooth_scrolling options to CMAKE and enable it for Blackberry
https://bugs.webkit.org/show_bug.cgi?id=84954

Reviewed by Daniel Bates.
Patch by Antonio Gomes <agomes@rim.com>

.:

* Source/cmakeconfig.h.cmake: Make it possible for CMake builds to
  toggle SMOOTH_SCROLLING on/off
* Source/cmake/OptionsBlackBerry.cmake: ... and set it to ON by defualt
  for the Blackberry port.

Source/WebCore:

Add the default scroll animator to the build system (ScrollAnimatorNone.cpp)

* CMakeLists.txt:

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

9 years agoMake ScrollView::scrollSize scrollbar-independent
tonikitoo@webkit.org [Thu, 26 Apr 2012 20:14:41 +0000 (20:14 +0000)]
Make ScrollView::scrollSize scrollbar-independent
https://bugs.webkit.org/show_bug.cgi?id=84873

Reviewed by Anders Carlsson.
Patch by Antonio Gomes <agomes@rim.com>

For ports that disable scrollbars creation at FrameView creation time
ScrollView::scrollSize should still return the scrollable ammount of
content (if any) if scrolling is not prohibted.

No new test, but it makes ScrollAnimator work for the BlackBerry port.

* platform/ScrollView.cpp:
(WebCore::ScrollView::scrollSize):

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

9 years agoThe tile cache should know if a frame view can ever have scrollbars
andersca@apple.com [Thu, 26 Apr 2012 20:01:44 +0000 (20:01 +0000)]
The tile cache should know if a frame view can ever have scrollbars
https://bugs.webkit.org/show_bug.cgi?id=84888

Reviewed by Andreas Kling.

If a frame view has overflow: hidden on its body element we know that the document will most
likely never be scrolled. The tile cache should know about this so we can optimize.

* page/FrameView.cpp:
(WebCore::FrameView::performPostLayoutTasks):
* platform/graphics/TiledBacking.h:
(TiledBacking):
* platform/graphics/ca/mac/TileCache.h:
(TileCache):
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):
(WebCore::TileCache::setCanHaveScrollbars):
(WebCore):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking):

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

9 years agoCrash from removal of line break object after layout
commit-queue@webkit.org [Thu, 26 Apr 2012 19:59:05 +0000 (19:59 +0000)]
Crash from removal of line break object after layout
https://bugs.webkit.org/show_bug.cgi?id=75461

Source/WebCore:

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-04-26
Reviewed by David Hyatt.

There is a condition where objects can get removed from underneath
inlines while they represent a line break object in a RootInlineBox
of an ancestor block. If an intermediary inline has already been
marked as needing layout, then the line box will not get dirtied
because dirtyLineFromChangedChild thinks it already has been.

This patch introduces a new set in RenderObject to indicate whether
an ancestral line box corresponding to the current line has been
marked dirty or not. dirtyLinesFromChangedChild() can use this set
rather than m_selfNeedsLayout, so it will not be confused if a
container was dirtied for some other reason that did not affect the
line box.

* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild): Use the new
set rather than m_selfNeedsLayout in the container to determine
whether to continue propagating upward.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::s_ancestorLineboxDirtySet): Instantiate the
static member.
(WebCore::RenderObject::willBeDestroyed): Clears the object from the
linebox set when it is being destroyed.
* rendering/RenderObject.h:
(WebCore::RenderObject::s_ancestorLineboxDirtySet): Added static
member set.
(WebCore::RenderObject::setNeedsLayout): Clears the
object from the linebox set when layout bits are getting cleared.
(WebCore::RenderObject::ancestorLineBoxDirty): Added.
(WebCore::RenderObject::setAncestorLineBoxDirty): Added.

LayoutTests:

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-04-25
Reviewed by David Hyatt.

Test exercising crashing condition in bug 75461.

* fast/block/line-layout/line-break-obj-removal-crash-expected.txt: Added
* fast/block/line-layout/line-break-obj-removal-crash.html: Added

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

9 years agoUpdate Qt expectations after r115340
robert@webkit.org [Thu, 26 Apr 2012 19:54:35 +0000 (19:54 +0000)]
Update Qt expectations after r115340

css2.1/20110323/abspos-replaced-width-margin-000.htm fails the reftest due to
scrollbar artefacts.

Unreviewed.

* platform/qt/test_expectations.txt:

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

9 years ago[EFL] Enable VIDEO_TRACK feature
commit-queue@webkit.org [Thu, 26 Apr 2012 19:48:31 +0000 (19:48 +0000)]
[EFL] Enable VIDEO_TRACK feature
https://bugs.webkit.org/show_bug.cgi?id=84830

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-26
Reviewed by Gustavo Noronha Silva.

.:

Enable VIDEO_TRACK feature by default on EFL port.

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:

Source/WebCore:

Enable support for VIDEO_TRACK feature by default for EFL port.

* UseJSC.cmake:
* bindings/generic/RuntimeEnabledFeatures.cpp:
(WebCore):

Source/WebKit:

Enable VIDEO_TRACK feature by default for EFL port.

* PlatformEfl.cmake:

Source/WebKit/efl:

Add functions on the ewk_view to toggle runtime support for text
tracks in HTML5 video.

* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_should_display_subtitles_get):
(ewk_view_setting_should_display_subtitles_set):
(ewk_view_setting_should_display_captions_get):
(ewk_view_setting_should_display_captions_set):
(ewk_view_setting_should_display_text_descriptions_get):
(ewk_view_setting_should_display_text_descriptions_set):
* ewk/ewk_view.h:

Tools:

Enable VIDEO_TRACK by default on EFL port whenever build-webkit is
used.

* Scripts/build-webkit:

LayoutTests:

Unskip test cases which requires the VIDEO_TRACK feature now that it
is enabled by default for EFL port.

* platform/efl/Skipped:

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

9 years agonew-webkit-run-tests: handle ref tests from the CSS test suite
robert@webkit.org [Thu, 26 Apr 2012 19:21:22 +0000 (19:21 +0000)]
new-webkit-run-tests: handle ref tests from the CSS test suite
https://bugs.webkit.org/show_bug.cgi?id=83048

Reviewed by Ryosuke Niwa.

Tools:

This allows new-run-webkit-tests to run reference tests created for the CSS test suite. It removes a big swathe
of pixel and text results that are no longer required now that the reference results are used and adds in the support
files from the CSS test suite that allow the ref tests to run.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_reftest): Assert that the reference result exists. Previously the test would
 run without it and report a pass!
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(copy_file): ensure the output directory exists, it may not if the reference test is
  contained in a folder that contains nothing but reference tests.
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.available_reference_files): Add as a helper. Handle embedded relative paths, e.g: some/../path
(Port.reference_files): Only return reference results in the reftest list that actually exist on
  disk. Also, don't ignore potential reference results on disk that are not in the reftest list, and
  don't ignore them just because we have a reftest list for the test's directory.
(Port._real_tests): ignore anything that looks like a test in a 'support' directory, this semantic
  is used by the CSS 2.1 test suite.
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_reference_files_when_reftestlist_and_reference_file_present): Ensure that a test with a reference result
  on disk but no reference result listed in the directory's reftest list picks up its reference result.
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
(ChromiumDriverTest.test_strip_uri): Test that some/test.html and some/other/../test.html are treated
 as the same file.

LayoutTests:

Add some of the reference infrastructure from the CSS 2.1 test suite.

* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004-ref-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004a-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004a-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004b-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004b-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004c-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004c-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004d-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004d-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004e-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004e-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-004f-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-004f-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-005-ref-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-005a-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-005a-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-005b-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-005b-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-005c-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-005c-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-005d-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-005d-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-009-ref-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-009a-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-009a-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-009b-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-009b-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-009e-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-009e-expected.txt: Removed.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.png: Removed.
* css2.1/20110323/abspos-containing-block-initial-009f-expected.txt: Removed.
* css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Removed.
* css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Removed.
  These results are superseded by the reference results.

* css2.1/20110323/background-016.htm: Added to prove the CSS test suite reference results work.

* css2.1/20110323/block-replaced-width-001.htm: Removed. This test does not pass its reference result.
  It regressed at some point.

* css2.1/20110323/empty-inline-001.htm: The test has been updated from the CSS test suite.

* css2.1/20110323/reftest.list: Added.
* css2.1/reference/ref-filled-green-100px-square.htm: Added.
* css2.1/reference/ref-filled-green-100px-square.xht: Added.
* css2.1/reference/ref-if-there-is-no-red.htm: Added.
* css2.1/reference/ref-if-there-is-no-red.xht: Added.
* css2.1/reference/ref-nothing-below.htm: Added.
* css2.1/reference/ref-nothing-below.xht: Added.
* css2.1/reference/ref-this-text-should-be-green.htm: Added.
* css2.1/reference/ref-this-text-should-be-green.xht: Added.

  Ref test infrastructure from the CSS test suite.

* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/chromium-linux/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/chromium-mac-leopard/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/chromium-mac-leopard/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/chromium-mac-snowleopard/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/chromium-mac/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/chromium-win/css2.1/20110323/empty-inline-001-expected.txt: Removed.
* platform/chromium/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.png: Removed.
* platform/chromium/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Removed.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Removed.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Removed.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Removed.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/efl/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/efl/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/efl/css2.1/20110323/block-replaced-width-001-expected.txt: Removed.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Removed.
* platform/gtk/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Removed.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/gtk/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/gtk/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/gtk/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/gtk/css2.1/20110323/block-replaced-width-001-expected.txt: Removed.
* platform/gtk/css2.1/20110323/empty-inline-001-expected.txt: Removed.
* platform/mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-001-expected.png: Removed.
* platform/mac-snowleopard/css2.1/20110323/abspos-containing-block-initial-007-expected.png: Removed.
* platform/mac-snowleopard/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-containing-block-initial-007-ref-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/mac/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-expected.txt: Removed.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/mac/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/mac/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/mac/css2.1/20110323/block-replaced-width-001-expected.txt: Removed.
* platform/mac/css2.1/20110323/empty-inline-001-expected.png: Removed.
* platform/mac/css2.1/20110323/empty-inline-001-expected.txt: Removed.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-expected.txt: Removed.
* platform/qt/css2.1/20110323/abspos-containing-block-initial-001-ref-expected.txt: Removed.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-expected.png: Removed.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.png: Removed.
* platform/qt/css2.1/20110323/abspos-non-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-expected.png: Removed.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.png: Removed.
* platform/qt/css2.1/20110323/abspos-replaced-width-margin-000-ref-expected.txt: Removed.
* platform/qt/css2.1/20110323/block-replaced-width-001-expected.png: Removed.
* platform/qt/css2.1/20110323/block-replaced-width-001-expected.txt: Removed.
* platform/qt/css2.1/20110323/empty-inline-001-expected.txt: Removed.

  These results are superseded by the reference results.

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

9 years ago[Chromium] IndexedDB: Use WebIDBKeyPath type for key paths in WebKit API
jsbell@chromium.org [Thu, 26 Apr 2012 19:19:58 +0000 (19:19 +0000)]
[Chromium] IndexedDB: Use WebIDBKeyPath type for key paths in WebKit API
https://bugs.webkit.org/show_bug.cgi?id=84631

Reviewed by James Robinson.

WebIDBKeyPath was previously a utility class for parsing key paths into components,
but the API exposed key paths only as nullable strings. To support array-type keypaths,
WebIDBKeyPath becomes a value class with type flags. For landing, several legacy methods
are retained but will be cleaned up after all callers have been updated, tracked as
the bug: http://webkit.org/b/84207

* public/WebIDBDatabase.h:
(WebKit::WebIDBDatabase::createObjectStore): Add WebIDBKeyPath overload; WebString overload delegates so implementers can switch.
* public/WebIDBIndex.h:
(WebKit::WebIDBIndex::keyPath): Calls keyPathString if not overridden.
(WebKit::WebIDBIndex::keyPathString): Comment change.
* public/WebIDBKeyPath.h:
(WebKit::WebIDBKeyPath::create): Overload added for creating array-type key paths.
(WebKit::WebIDBKeyPath::array): Accessor for array-type key paths.
(WebKit::WebIDBKeyPath::operator const WebString ): Temporary, for compatibility.
* public/WebIDBObjectStore.h:
(WebKit::WebIDBObjectStore::keyPath): Calls keyPathString if not overridden.
(WebKit::WebIDBObjectStore::keyPathString): Comment change.
(WebKit::WebIDBObjectStore::createIndex): Add WebIDBKeyPath overload; WebString overload delegates so implementers can switch.
* public/platform/WebKitPlatformSupport.h:
(WebKitPlatformSupport): WebIDBKeyPath overloads for these methods added, delegate to WebString version until implementers are updated.
(WebKit::WebKitPlatformSupport::createIDBKeysFromSerializedValuesAndKeyPath):
(WebKit::WebKitPlatformSupport::injectIDBKeyIntoSerializedValue):
* src/IDBIndexBackendProxy.cpp:
(WebKit::IDBIndexBackendProxy::keyPath): Returns the string version until WebCore is updated.
* src/IDBObjectStoreBackendProxy.cpp:
(WebKit::IDBObjectStoreBackendProxy::keyPath): Returns the string version until WebCore is updated.
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl): Add createObjectStore overload for WebIDBKeyPath type, delegates to WebString version until callers are updated.
* src/WebIDBIndexImpl.cpp:
(WebKit::WebIDBIndexImpl::keyPath): Implements the new WebIDBKeyPath return type.
(WebKit):
* src/WebIDBIndexImpl.h:
(WebIDBIndexImpl): Implements the new WebIDBKeyPath return type.
* src/WebIDBKeyPath.cpp:
(WebKit::WebIDBKeyPath::create): Support null key path types.
(WebKit::WebIDBKeyPath::createNull): New API.
(WebKit):
(WebKit::WebIDBKeyPath::isValid): New API.
(WebKit::WebIDBKeyPath::type): New API.
(WebKit::WebIDBKeyPath::string): New API (value accessor).
(WebKit::WebIDBKeyPath::WebIDBKeyPath):
(WebKit::WebIDBKeyPath::assign): This API will be removed.
(WebKit::WebIDBKeyPath::operator const WTF::Vector<WTF::String, 0>&): Ensure it is non-null - only used in copy constructor which guards against this.
* src/WebIDBObjectStoreImpl.cpp:
(WebKit::WebIDBObjectStoreImpl::keyPath): Implement the new WebIDBKeyPath return type.
(WebKit):
* src/WebIDBObjectStoreImpl.h:
(WebIDBObjectStoreImpl): Add createIndex overload for WebIDBKeyPath type, delegates to WebString version until callers are updated.

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

9 years agoUnreviewed. Fix GTK+ build after r115314.
carlosgc@webkit.org [Thu, 26 Apr 2012 19:01:49 +0000 (19:01 +0000)]
Unreviewed. Fix GTK+ build after r115314.

For some reason it fails while bulding GtkVersioning for WTR, but
it didn't fail neither in EWS nor in my laptop. We don't really
need GtkVersioning in WTR since it already depends on GTK+3
unconditionally.

* WebKitTestRunner/GNUmakefile.am: Remove GtkVersioning.c from
compilation.
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::createMouseButtonEvent): Use GTK+ 3 API
directly instead of getDefaultGDKPointerDevice() helper.
(WTR::EventSenderProxy::keyDown): Ditto.
(WTR::EventSenderProxy::mouseMoveTo): Ditto.

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

9 years agoShow flakiness dashboard data in garden-o-matic
ojan@chromium.org [Thu, 26 Apr 2012 18:47:18 +0000 (18:47 +0000)]
Show flakiness dashboard data in garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=83716

Reviewed by Dimitri Glazkov.

Put an iframe below the expected/actual results in the Results view.
Size the iframe to it's height.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/run-unittests.html:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:

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

9 years agoImplement StyleSheetInternal copying
antti@apple.com [Thu, 26 Apr 2012 18:44:30 +0000 (18:44 +0000)]
Implement StyleSheetInternal copying
https://bugs.webkit.org/show_bug.cgi?id=84969

Reviewed by Andreas Kling.

We need to be able to copy stylesheets to cache them. Copying is already implement for
most of the stylesheet data types but StyleSheetInternal::copy() is still missing.

Preparation for stylesheet caching. The copying code is not used yet.

* css/CSSNamespace.h:

    Instead of making it copyable, remove CSSNamespace class.

* css/CSSParser.cpp:
(WebCore::operator==):
(WebCore):
(WebCore::CSSParser::addNamespace):

    Avoid ping-ponging to StyleSheetInternal and back to set the default namespace.

* css/CSSParserMode.h:
(WebCore):
(WebCore::operator!=):

    Add equality comparison operator to CSSParseMode. This will be needed to determine
    if a cached copy can be used.

* css/CSSStyleSheet.cpp:
(WebCore::StyleSheetInternal::StyleSheetInternal):
(WebCore):
(WebCore::StyleSheetInternal::isCacheable):
(WebCore::StyleSheetInternal::parserAddNamespace):
(WebCore::StyleSheetInternal::determineNamespace):

    Use HashMap instead of iterating a linked list of CSSNamespaces.

(WebCore::StyleSheetInternal::styleSheetChanged):

    Add mutation bit.

* css/CSSStyleSheet.h:
(WebCore):
(StyleSheetInternal):
(WebCore::StyleSheetInternal::copy):

    Copy constructor. It only usable for cacheable stylesheets.

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

9 years agoFix Skia's SkPathContainsPoint to work with sub-pixel accuracy
pdr@google.com [Thu, 26 Apr 2012 18:24:48 +0000 (18:24 +0000)]
Fix Skia's SkPathContainsPoint to work with sub-pixel accuracy
https://bugs.webkit.org/show_bug.cgi?id=84117

Reviewed by Eric Seidel.

Source/WebCore:

Because we do hit testing in object-space (i.e., we may see a 0.1px*0.1px path) we
need to support sub-pixel hit testing in Skia. Skia does not provide analytical
path hit testing, so hit tests are done by rasterizing a path and checking if a
specific pixel is drawn. SkPathContainsPoint did not work with sub-pixel values
because this rasterization was sometimes very small which did not give enough
resolution to check if the hit test pixel was drawn.

This patch scales the path to a very large size during hit testing so that Skia's
raster-based hit testing will work properly. Because Skia avoids unnecessary
path rasterization, this is actually inexpensive.

Below is a summary of a performance test on simple and complex paths:
                                         (before patch, after patch)
Skia/Chrome 10,000 hit tests on a simple path:  (229ms, 238ms)
Skia/Chrome 10,000 hit tests on a complex path: (701ms, 704ms)
For comparison, CG/Safari takes 236ms on the simple path and 466ms on the complex path.

Therefore, this patch introduces small but measurable regression in hit testing
performance due to scaling the path.

Test: svg/hittest/svg-small-path.xhtml

* platform/graphics/skia/SkiaUtils.cpp:
(WebCore::SkPathContainsPoint):

LayoutTests:

* svg/hittest/svg-small-path-expected.txt: Added.
* svg/hittest/svg-small-path.xhtml: Added.

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

9 years agoUnreviewed, rolling out r115323.
commit-queue@webkit.org [Thu, 26 Apr 2012 18:20:32 +0000 (18:20 +0000)]
Unreviewed, rolling out r115323.
http://trac.webkit.org/changeset/115323
https://bugs.webkit.org/show_bug.cgi?id=84975

Bad test, breaks all builds (Requested by apavlov1 on
#webkit).

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

Source/WebCore:

* inspector/Inspector.json:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
* inspector/InspectorPageAgent.h:
* inspector/front-end/Settings.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
* inspector/front-end/inspector.js:

LayoutTests:

* inspector/debugger/disable-script-expected.txt: Removed.
* inspector/debugger/disable-script.html: Removed.

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

9 years agoIndexedDB: cursor does not correctly iterate over keys added and removed during iteration
commit-queue@webkit.org [Thu, 26 Apr 2012 18:12:40 +0000 (18:12 +0000)]
IndexedDB: cursor does not correctly iterate over keys added and removed during iteration
https://bugs.webkit.org/show_bug.cgi?id=84467

Patch by Douglas Stockwell <dstockwell@chromium.org> on 2012-04-26
Reviewed by Ojan Vafai.

Source/WebCore:

Ensure that the iterator over the tree of cached adds/removes always points at
the current key, or if the db iterator is current, the next key:

- When refreshing the tree iterator after a mutation, always seek unless the
tree iterator is current.

- When handing conflicts and delete markers, only advance the tree iterator as
far as the db iterator.

Remove the expensive (and now redundant) logic that issued a get() to check
whether an item had been deleted.

Test: storage/indexeddb/cursor-added-bug.html

* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore):
* platform/leveldb/LevelDBTransaction.cpp:
(WebCore::LevelDBTransaction::TransactionIterator::refreshTreeIterator):
(WebCore::LevelDBTransaction::TransactionIterator::handleConflictsAndDeletes):

LayoutTests:

New test for keys added in reverse order during cursor iteration.

* storage/indexeddb/cursor-added-bug-expected.txt: Added.
* storage/indexeddb/cursor-added-bug.html: Added.
* storage/indexeddb/resources/cursor-added-bug.js: Added.
(test):
(openSuccess):
(setVersionSuccess):
(openCursor):
(cursorSuccess):

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

9 years ago[EFL] [DRT] LayoutTestController needs implementation of setJavaScriptProfilingEnabled
commit-queue@webkit.org [Thu, 26 Apr 2012 18:09:01 +0000 (18:09 +0000)]
[EFL] [DRT] LayoutTestController needs implementation of setJavaScriptProfilingEnabled
https://bugs.webkit.org/show_bug.cgi?id=84576

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-26
Reviewed by Martin Robinson.

Source/WebKit/efl:

Add missing implementation setJavaScriptProfilingEnabled to EFL's
DumpRenderTreeSupport. This setting allows layout tests to start
JavaScript profiling.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::setJavaScriptProfilingEnabled):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Add missing implementation setJavaScriptProfilingEnabled to EFL's
LayoutTestController in order to unskip tests rely on this setting.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setJavaScriptProfilingEnabled):

LayoutTests:

Unskip test cases which rely on LayoutTestController's
setJavaScriptProfilingEnabled implementation.

* platform/efl/Skipped:

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

9 years agoAdd Jing Zhao, Min Qin, Tien-Ren Chen and Hao Zheng into contributors list.
wangxianzhu@chromium.org [Thu, 26 Apr 2012 17:52:29 +0000 (17:52 +0000)]
Add Jing Zhao, Min Qin, Tien-Ren Chen and Hao Zheng into contributors list.

Not reviewed.

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

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

9 years ago[Chromium] webaudio/audioparam-exponentialRampToValueAtTime.html is occasionally...
dglazkov@chromium.org [Thu, 26 Apr 2012 17:01:00 +0000 (17:01 +0000)]
[Chromium] webaudio/audioparam-exponentialRampToValueAtTime.html is occasionally crashing
https://bugs.webkit.org/show_bug.cgi?id=84972

* platform/chromium/test_expectations.txt: Marked as flaky.

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

9 years agoPlaceholder view is immediately removed from hosting window upon entering full screen.
jer.noble@apple.com [Thu, 26 Apr 2012 16:52:13 +0000 (16:52 +0000)]
Placeholder view is immediately removed from hosting window upon entering full screen.
https://bugs.webkit.org/show_bug.cgi?id=84916

Reviewed by Darin Adler.

Correct a mistake added in r114567.  When swapping view for otherView, add otherView and
remove view (rather than adding otherView and removing otherView).

Source/WebKit/mac:

* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _swapView:with:]):

Source/WebKit2:

* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController _swapView:with:]):

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

9 years agoWeb Inspector: Implement the "Disable JavaScript" option in the settings dialog
apavlov@chromium.org [Thu, 26 Apr 2012 16:44:46 +0000 (16:44 +0000)]
Web Inspector: Implement the "Disable JavaScript" option in the settings dialog
https://bugs.webkit.org/show_bug.cgi?id=84946

Source/WebCore:

Based on user actions in the Inspector frontend, InspectorPageAgent invokes Settings::setScriptEnabled()
for the associated page to switch the script execution therein.

Reviewed by Yury Semikhatsky.

Test: inspector/debugger/disable-script.html

* inspector/Inspector.json:
* inspector/InspectorPageAgent.cpp:
(PageAgentState):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::getScriptExecutionStatus):
(WebCore):
(WebCore::InspectorPageAgent::setScriptExecutionDisabled):
* inspector/InspectorPageAgent.h:
* inspector/front-end/Settings.js:
* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen):
(WebInspector.SettingsScreen.prototype.get _updateScriptDisabledCheckbox):
(WebInspector.SettingsScreen.prototype._javaScriptDisabledChanged):
* inspector/front-end/inspector.js:

LayoutTests:

Reviewed by Yury Semikhatsky.

* inspector/debugger/disable-script-expected.txt: Added.
* inspector/debugger/disable-script.html: Added.

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

9 years ago[GTK] Test TestWebKitAPI/WebKit2/TestNewFirstVisuallyNonEmptyLayout times out
carlosgc@webkit.org [Thu, 26 Apr 2012 16:19:41 +0000 (16:19 +0000)]
[GTK] Test TestWebKitAPI/WebKit2/TestNewFirstVisuallyNonEmptyLayout times out
https://bugs.webkit.org/show_bug.cgi?id=84957

Reviewed by Martin Robinson.

* Scripts/run-gtk-tests:
(TestRunner): Unskip TestNewFirstVisuallyNonEmptyLayout and
TestNewFirstVisuallyNonEmptyLayoutForImages.
* TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
(TestWebKitAPI::PlatformWebView::PlatformWebView): Show the
toplevel window containing the web view to make sure events are
received.

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

9 years ago[cairo] CairoGraphicsContext fillRect (with Color) overrides composite operator
commit-queue@webkit.org [Thu, 26 Apr 2012 16:13:41 +0000 (16:13 +0000)]
[cairo] CairoGraphicsContext fillRect (with Color) overrides composite operator
https://bugs.webkit.org/show_bug.cgi?id=84848

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-04-26
Reviewed by Martin Robinson.

Source/WebCore:

FillRectWithColor used to be called fillRectSourceOver before r89314
where this operator still made sense. The way this function is used
these days doesn't expect the composite operator to be overridden anymore.

No new tests, covered by existing tests, e.g.
svg/filters/feDropShadow.svg

* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::fillRectWithColor):

LayoutTests:

Unskipping and baselining feDropShadow test,
now works because of composite operator fix.
Fixed png baseline result for drop shadow test on GTK.

* platform/efl/svg/filters/feDropShadow-expected.png: Added.
* platform/efl/svg/filters/feDropShadow-expected.txt: Added.
* platform/efl/test_expectations.txt:
* platform/gtk/svg/filters/feDropShadow-expected.png:

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

9 years agoFix additive by animations for most SMIL list types
zimmermann@webkit.org [Thu, 26 Apr 2012 15:51:58 +0000 (15:51 +0000)]
Fix additive by animations for most SMIL list types
https://bugs.webkit.org/show_bug.cgi?id=84968

Reviewed by Antti Koivisto.

Source/WebCore:

Unify SMIL list animation code, to correctly respect the underlying from value for by-animations.
Add lots of new tests covering by-animations for all primitives (except AnimatedPath/TransformList).
AnimatedTransformList is not working correctly yet, and will be covered in a follow-up patch.
AnimatdPath by-animations are complex, and thus also handled in another follow-up patch.

Tests: svg/animations/additive-type-by-animation.html
       svg/animations/length-list-animation-expected.svg
       svg/animations/length-list-animation.svg
       svg/animations/svglength-additive-by-1.html
       svg/animations/svglength-additive-by-2.html
       svg/animations/svglength-additive-by-3.html
       svg/animations/svglength-additive-by-4.html
       svg/animations/svglength-additive-by-5.html
       svg/animations/svglength-additive-by-6.html
       svg/animations/svglength-additive-from-by-1.html
       svg/animations/svglength-additive-from-by-2.html
       svg/animations/svglength-additive-from-by-3.html
       svg/animations/svglength-additive-from-by-4.html

* svg/SVGAnimatedLengthList.cpp:
(WebCore::SVGAnimatedLengthListAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumberList.cpp:
(WebCore::SVGAnimatedNumberListAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedPointList.cpp:
(WebCore::SVGAnimatedPointListAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedPointListAnimator::calculateAnimatedValue):
* svg/SVGAnimationElement.h:
(WebCore::SVGAnimationElement::adjustFromToListValues):

LayoutTests:

Add lots of new tests covering SMIL by-animations on all primitives.

* svg/animations/additive-type-by-animation-expected.txt: Added.
* svg/animations/additive-type-by-animation.html: Added.
* svg/animations/length-list-animation-expected.svg: Added.
* svg/animations/length-list-animation.svg: Added.
* svg/animations/non-additive-type-by-animation-expected.txt:
* svg/animations/resources/additive-type-by-animation.svg: Added.
* svg/animations/resources/non-additive-type-by-animation.svg:
* svg/animations/resources/svglength-additive-by-1.svg: Added.
* svg/animations/resources/svglength-additive-by-2.svg: Added.
* svg/animations/resources/svglength-additive-by-3.svg: Added.
* svg/animations/resources/svglength-additive-by-4.svg: Added.
* svg/animations/resources/svglength-additive-by-5.svg: Added.
* svg/animations/resources/svglength-additive-by-6.svg: Added.
* svg/animations/resources/svglength-additive-from-by-1.svg: Added.
* svg/animations/resources/svglength-additive-from-by-2.svg: Added.
* svg/animations/resources/svglength-additive-from-by-3.svg: Added.
* svg/animations/resources/svglength-additive-from-by-4.svg: Added.
* svg/animations/script-tests/additive-type-by-animation.js: Added.
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(executeTest):
* svg/animations/script-tests/non-additive-type-by-animation.js:
(sample):
* svg/animations/script-tests/svglength-additive-by-1.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(executeTest):
* svg/animations/script-tests/svglength-additive-by-2.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(executeTest):
* svg/animations/script-tests/svglength-additive-by-3.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-by-4.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-by-5.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-by-6.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-from-by-1.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(executeTest):
* svg/animations/script-tests/svglength-additive-from-by-2.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-from-by-3.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/script-tests/svglength-additive-from-by-4.js: Added.
(sample1):
(sample2):
(sample3):
(sample4):
(sample5):
(sample6):
(executeTest):
* svg/animations/svglength-additive-by-1-expected.txt: Added.
* svg/animations/svglength-additive-by-1.html: Added.
* svg/animations/svglength-additive-by-2-expected.txt: Added.
* svg/animations/svglength-additive-by-2.html: Added.
* svg/animations/svglength-additive-by-3-expected.txt: Added.
* svg/animations/svglength-additive-by-3.html: Added.
* svg/animations/svglength-additive-by-4-expected.txt: Added.
* svg/animations/svglength-additive-by-4.html: Added.
* svg/animations/svglength-additive-by-5-expected.txt: Added.
* svg/animations/svglength-additive-by-5.html: Added.
* svg/animations/svglength-additive-by-6-expected.txt: Added.
* svg/animations/svglength-additive-by-6.html: Added.
* svg/animations/svglength-additive-from-by-1-expected.txt: Added.
* svg/animations/svglength-additive-from-by-1.html: Added.
* svg/animations/svglength-additive-from-by-2-expected.txt: Added.
* svg/animations/svglength-additive-from-by-2.html: Added.
* svg/animations/svglength-additive-from-by-3-expected.txt: Added.
* svg/animations/svglength-additive-from-by-3.html: Added.
* svg/animations/svglength-additive-from-by-4-expected.txt: Added.
* svg/animations/svglength-additive-from-by-4.html: Added.

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

9 years agoAdd copy constructor to CSSSelector
antti@apple.com [Thu, 26 Apr 2012 15:43:45 +0000 (15:43 +0000)]
Add copy constructor to CSSSelector
https://bugs.webkit.org/show_bug.cgi?id=84956

Reviewed by Anders Carlsson.

To copy CSSSelectorLists correctly CSSSelector needs a copy constructor.

This will be needed to implement stylesheet caching. The code is not used yet.

* css/CSSSelector.cpp:
(WebCore::CSSSelector::createRareData):
* css/CSSSelector.h:
(CSSSelector):
(WebCore::CSSSelector::RareData::create):
(RareData):

    Refcount RareData to make copying easier. This has no significant memory impact, rare data is rare.

(WebCore::CSSSelector::CSSSelector):
(WebCore):
(WebCore::CSSSelector::~CSSSelector):
* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::CSSSelectorList):

    Use copy constructor instead of memcpy (which doesn't work).

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

9 years ago[EFL] Fix the build with DRAG_SUPPORT disabled.
rakuco@webkit.org [Thu, 26 Apr 2012 15:15:43 +0000 (15:15 +0000)]
[EFL] Fix the build with DRAG_SUPPORT disabled.
https://bugs.webkit.org/show_bug.cgi?id=84963

Reviewed by Antonio Gomes.

No new tests, build system-related change.

EventHandlerEfl.cpp always assumed DRAG_SUPPORT was enabled and lacked
the proper #if ENABLED() checks for some member variables and methods
conditionally defined in EventHandler.h.

* page/efl/EventHandlerEfl.cpp:
(WebCore):

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

9 years agoWeb Inspector: remove stackTrace property from requestWillBeSent - it is already...
pfeldman@chromium.org [Thu, 26 Apr 2012 15:14:27 +0000 (15:14 +0000)]
Web Inspector: remove stackTrace property from requestWillBeSent - it is already a part of the initiator.
https://bugs.webkit.org/show_bug.cgi?id=84964

Reviewed by Yury Semikhatsky.

* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::willSendRequest):
* inspector/front-end/ConsoleMessage.js:
(WebInspector.ConsoleMessageImpl.prototype._formatMessage):
* inspector/front-end/NetworkManager.js:
(WebInspector.NetworkDispatcher.prototype.requestWillBeSent):
(WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):
(WebInspector.NetworkDispatcher.prototype._appendRedirect):
(WebInspector.NetworkDispatcher.prototype._createNetworkRequest):
(get WebInspector):

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

9 years agoSVG FEConvolveMatrix does not check for invalid property values
schenney@chromium.org [Thu, 26 Apr 2012 15:06:01 +0000 (15:06 +0000)]
SVG FEConvolveMatrix does not check for invalid property values
https://bugs.webkit.org/show_bug.cgi?id=84363

Reviewed by Dirk Schulze.

Source/WebCore:

Adding code to check for valid input values on SVG feConvolveMatrix properties.
And adding some of the first effective error reporting for SVG elements.

Tests: svg/filters/feConvolveMatrix-invalid-targetX-expected.svg
       svg/filters/feConvolveMatrix-invalid-targetX.svg
       svg/filters/feConvolveMatrix-invalid-targetY-expected.svg
       svg/filters/feConvolveMatrix-invalid-targetY.svg
       svg/filters/feConvolveMatrix-negative-kernelUnitLengthX-expected.svg
       svg/filters/feConvolveMatrix-negative-kernelUnitLengthX.svg
       svg/filters/feConvolveMatrix-negative-kernelUnitLengthY-expected.svg
       svg/filters/feConvolveMatrix-negative-kernelUnitLengthY.svg
       svg/filters/feConvolveMatrix-negative-orderX-expected.svg
       svg/filters/feConvolveMatrix-negative-orderX.svg
       svg/filters/feConvolveMatrix-negative-orderY-expected.svg
       svg/filters/feConvolveMatrix-negative-orderY.svg
       svg/filters/feConvolveMatrix-non-integral-order-expected.svg
       svg/filters/feConvolveMatrix-non-integral-order.svg
       svg/filters/feConvolveMatrix-zero-divisor-expected.svg
       svg/filters/feConvolveMatrix-zero-divisor.svg

* platform/graphics/filters/FEConvolveMatrix.cpp:
(WebCore::FEConvolveMatrix::FEConvolveMatrix):
(WebCore::FEConvolveMatrix::setKernelSize):
(WebCore::FEConvolveMatrix::setDivisor):
(WebCore::FEConvolveMatrix::setKernelUnitLength):
* svg/SVGFEConvolveMatrixElement.cpp:
(WebCore::SVGFEConvolveMatrixElement::parseAttribute):
(WebCore::SVGFEConvolveMatrixElement::build):

LayoutTests:

Adding code to check for valid input values on SVG feConvolveMatrix properties.

* platform/chromium-linux-x86/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/chromium-linux/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/chromium-win-vista/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/chromium-win-xp/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/chromium-win/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/efl/svg/filters/feConvolveFilter-y-bounds-expected.txt:
* platform/gtk/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/gtk/svg/custom/convolution-crash-expected.txt:
* platform/gtk/svg/filters/feConvolveFilter-y-bounds-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/mac/svg/custom/convolution-crash-expected.txt:
* platform/mac/svg/filters/feConvolveFilter-y-bounds-expected.txt:
* platform/qt/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
* platform/qt/svg/custom/convolution-crash-expected.txt:
* platform/qt/svg/filters/feConvolveFilter-y-bounds-expected.txt:
* svg/filters/feConvolveMatrix-invalid-targetX-expected.svg: Added.
* svg/filters/feConvolveMatrix-invalid-targetX.svg: Added.
* svg/filters/feConvolveMatrix-invalid-targetY-expected.svg: Added.
* svg/filters/feConvolveMatrix-invalid-targetY.svg: Added.
* svg/filters/feConvolveMatrix-negative-kernelUnitLengthX-expected.svg: Added.
* svg/filters/feConvolveMatrix-negative-kernelUnitLengthX.svg: Added.
* svg/filters/feConvolveMatrix-negative-kernelUnitLengthY-expected.svg: Added.
* svg/filters/feConvolveMatrix-negative-kernelUnitLengthY.svg: Added.
* svg/filters/feConvolveMatrix-negative-orderX-expected.svg: Added.
* svg/filters/feConvolveMatrix-negative-orderX.svg: Added.
* svg/filters/feConvolveMatrix-negative-orderY-expected.svg: Added.
* svg/filters/feConvolveMatrix-negative-orderY.svg: Added.
* svg/filters/feConvolveMatrix-non-integral-order-expected.svg: Added.
* svg/filters/feConvolveMatrix-non-integral-order.svg: Added.
* svg/filters/feConvolveMatrix-zero-divisor-expected.svg: Added.
* svg/filters/feConvolveMatrix-zero-divisor.svg: Added.

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

9 years agoUnreviewed. Add bug numbers to skipped tests.
carlosgc@webkit.org [Thu, 26 Apr 2012 15:01:04 +0000 (15:01 +0000)]
Unreviewed. Add bug numbers to skipped tests.

* Scripts/run-gtk-tests:
(TestRunner):

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

9 years ago[GTK] Build and run TestWebKitAPI WebKit2 unit tests
carlosgc@webkit.org [Thu, 26 Apr 2012 14:47:39 +0000 (14:47 +0000)]
[GTK] Build and run TestWebKitAPI WebKit2 unit tests
https://bugs.webkit.org/show_bug.cgi?id=84446

Reviewed by Philippe Normand.

Source/ThirdParty:

* gtest/GNUmakefile.am: Do not build libgtestmain anymmore since
all tests use now a custom main to make sure WTF threads are
initialized.

Source/WebKit2:

* UIProcess/API/C/WKNativeEvent.h: Define WKNativeEventPtr as
GdkEvent for the GTK+ port.

Tools:

* Scripts/run-gtk-tests:
(TestRunner): Add TestWebKitAPI/WebKit2 to the list of directories
containing tests. Unskip FunctionalTest.RefCountedStorage, since
we are now using a custom main that initializes WTF threading.
(TestRunner._setup_testing_environment): Set environment variables
required to run WebKit2 tests.
* TestWebKitAPI/GNUmakefile.am:
* TestWebKitAPI/JavaScriptTest.cpp: Use
JavaScriptCore/JSContextRef.h instead of
JavaScriptCore/JavaScriptCore.h since it includes JSStringRefCF.h
unconditionally.
* TestWebKitAPI/PlatformWebView.h: Define PlatformWKView and
PlatformWindow for GTK.
* TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp: Remove
unneded header that breaks the build of GTK port.
* TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp: Use
JavaScriptCore/JSContextRef.h instead of
JavaScriptCore/JavaScriptCore.h since it includes JSStringRefCF.h
unconditionally.
* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
(TestWebKitAPI::TEST): Add expected values for GTK+ port.
* TestWebKitAPI/gtk/InjectedBundleControllerGtk.cpp:
(TestWebKitAPI):
(TestWebKitAPI::InjectedBundleController::platformInitialize):
* TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp: Added.
(TestWebKitAPI::Util::checkTestFinished):
(TestWebKitAPI::Util::run):
(TestWebKitAPI::Util::sleep):
(TestWebKitAPI::Util::getFilenameFromEnvironmentVariableAsUTF8):
(TestWebKitAPI::Util::createInjectedBundlePath):
(TestWebKitAPI::Util::createURLForResource):
(TestWebKitAPI::Util::URLForNonExistentResource):
(TestWebKitAPI::Util::isKeyDown):
* TestWebKitAPI/gtk/PlatformWebViewGtk.cpp: Added.
(TestWebKitAPI::PlatformWebView::PlatformWebView):
(TestWebKitAPI::PlatformWebView::~PlatformWebView):
(TestWebKitAPI::PlatformWebView::page):
(TestWebKitAPI::PlatformWebView::resizeTo):
(TestWebKitAPI::doKeyStroke):
(TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
(TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
(TestWebKitAPI::doMouseButtonEvent):
(TestWebKitAPI::PlatformWebView::simulateRightClick):
(TestWebKitAPI::PlatformWebView::simulateMouseMove):
* TestWebKitAPI/gtk/main.cpp:
(main):

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

9 years ago[GTK] run-gtk-tests: Use a timeout per test instead of a global timeout
carlosgc@webkit.org [Thu, 26 Apr 2012 14:45:10 +0000 (14:45 +0000)]
[GTK] run-gtk-tests: Use a timeout per test instead of a global timeout
https://bugs.webkit.org/show_bug.cgi?id=84695

Reviewed by Philippe Normand.

It also adds a command line option to be able to pass a custom
timeout value, instead of hard-coding it. The default timeout is 10
seconds if no other value is passed to the script.

* Scripts/run-gtk-tests:
(TestTimeout): Exception raised when a test times out.
(TestRunner._get_child_pid_from_test_output): Helper function to
get the pid of the running test from gtester output.
(TestRunner._kill_process): Helper funtion ot kill a process
ignoring exceptions if the process is already died.
(TestRunner._run_test_command): Run the test command raising
TestTimeout exception if the test doesn't finish before the given
timeout in seconds.
(TestRunner._run_test_command.alarm_handler): Alarm handler that
raises TestTimeout exception.
(TestRunner._run_test_glib): Use _run_test_command() to run the test.
(TestRunner._run_test_google): Ditto.
(TestRunner.run_tests): Add current test to the list of timed out
test if TestTimeout exception is raised. Show the list of timed
out test at the end.

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

9 years agoMove WebKit1 specific conversion of touch-events to WebKit1.
commit-queue@webkit.org [Thu, 26 Apr 2012 14:30:17 +0000 (14:30 +0000)]
Move WebKit1 specific conversion of touch-events to WebKit1.
https://bugs.webkit.org/show_bug.cgi?id=84951

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-26
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

No change in functionality. No new tests.

* Target.pri:
* platform/PlatformTouchEvent.h:
(PlatformTouchEvent):
* platform/PlatformTouchPoint.h:
(PlatformTouchPoint):
* platform/qt/PlatformTouchEventQt.cpp: Removed.
* platform/qt/PlatformTouchPointQt.cpp: Removed.

Source/WebKit/qt:

* Api/qwebpage.cpp:
(QWebPagePrivate::touchEvent):
* WebCoreSupport/WebEventConversion.cpp:
(WebKitPlatformTouchEvent):
(WebKitPlatformTouchPoint):
(WebCore::WebKitPlatformTouchEvent::WebKitPlatformTouchEvent):
(WebCore::WebKitPlatformTouchPoint::WebKitPlatformTouchPoint):
(WebCore::convertTouchEvent):
* WebCoreSupport/WebEventConversion.h:

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

9 years ago[Qt][WK2] Tap highlight should have a delay not to interfere with panning
abecsi@webkit.org [Thu, 26 Apr 2012 14:11:44 +0000 (14:11 +0000)]
[Qt][WK2] Tap highlight should have a delay not to interfere with panning
https://bugs.webkit.org/show_bug.cgi?id=84948

Reviewed by Kenneth Rohde Christiansen.

Start the tap highlight animation after a slight delay so that pan
gestures do not result in flashing highlight rects which slow down
flicking, especially during continuous pan gestures.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::update):
(WebKit::QtTapGestureRecognizer::highlightTimeout):
(WebKit):
(WebKit::QtTapGestureRecognizer::reset):
(WebKit::QtTapGestureRecognizer::timerEvent):
* UIProcess/qt/QtTapGestureRecognizer.h:
(QtTapGestureRecognizer):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(WebKit::QtWebPageEventHandler::doneWithTouchEvent):

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

9 years agoMake it possible to use accelerated compositing for page overlay fading
commit-queue@webkit.org [Thu, 26 Apr 2012 14:06:39 +0000 (14:06 +0000)]
Make it possible to use accelerated compositing for page overlay fading
https://bugs.webkit.org/show_bug.cgi?id=82336

Patch by Lars Knudsen <lars.knudsen@nokia.com> on 2012-04-26
Reviewed by Noam Rosenthal.

Page overlay fading will use AC where possible.  Otherwise, it will
fall back to the previous method of redrawing each frame in the animation.

* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::setPageOverlayOpacity):
(DrawingArea):
(WebKit::DrawingArea::pageOverlayShouldApplyFadeWhenPainting):
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::setPageOverlayOpacity):
(WebKit):
(WebKit::DrawingAreaImpl::pageOverlayShouldApplyFadeWhenPainting):
* WebProcess/WebPage/DrawingAreaImpl.h:
(DrawingAreaImpl):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setPageOverlayOpacity):
(WebKit::LayerTreeHost::pageOverlayShouldApplyFadeWhenPainting):
* WebProcess/WebPage/PageOverlay.cpp:
(WebKit::PageOverlay::PageOverlay):
(WebKit::PageOverlay::setPage):
(WebKit::PageOverlay::fadeAnimationTimerFired):
* WebProcess/WebPage/PageOverlay.h:
* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::drawRect):
* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::setPageOverlayOpacity):
(WebKit):
* WebProcess/WebPage/qt/LayerTreeHostQt.h:
(LayerTreeHostQt):
(WebKit::LayerTreeHostQt::pageOverlayShouldApplyFadeWhenPainting):

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

9 years ago[EFL][DRT] Unskip media tests that were already fixed in r113178
commit-queue@webkit.org [Thu, 26 Apr 2012 14:05:42 +0000 (14:05 +0000)]
[EFL][DRT] Unskip media tests that were already fixed in r113178
https://bugs.webkit.org/show_bug.cgi?id=84947

Unreviewed, EFL gardening.

Patch by Dominik Röttsches <dominik.rottsches@linux.intel.com> on 2012-04-26

* platform/efl/Skipped: Removed a group of media tests.

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

9 years ago[BlackBerry] A quick fix to the previous patch r115245.
commit-queue@webkit.org [Thu, 26 Apr 2012 13:55:31 +0000 (13:55 +0000)]
[BlackBerry] A quick fix to the previous patch r115245.
https://bugs.webkit.org/show_bug.cgi?id=84862

Patch by Yong Li <yoli@rim.com> on 2012-04-26
Reviewed by Antonio Gomes.

Fix an obvious bug in previous patch: DeferredTaskLoadManualScript
was using a wrong flag.

* Api/WebPage.cpp:
* Api/WebPage_p.h:
(WebPagePrivate):

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

9 years ago[EFL] [DRT] LayoutTestController needs implementation of addOriginAccessWhitelistEntr...
commit-queue@webkit.org [Thu, 26 Apr 2012 13:43:08 +0000 (13:43 +0000)]
[EFL] [DRT] LayoutTestController needs implementation of addOriginAccessWhitelistEntry and removeOriginAccessWhitelistEntry
https://bugs.webkit.org/show_bug.cgi?id=83880

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-04-26
Reviewed by Antonio Gomes.

Tools:

Add missing implementation addOriginAccessWhitelistEntry and
removeOriginAccessWhitelistEntry to EFL's LayoutTestController
in order to unskip tests which rely on this.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::addOriginAccessWhitelistEntry):
(LayoutTestController::removeOriginAccessWhitelistEntry):

LayoutTests:

Unskip test cases which rely on LayoutTestController's addOriginAccessWhitelistEntry
and removeOriginAccessWhitelistEntry implementation.

* platform/efl/Skipped:

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

9 years ago[EFL] WebGL support ewk_view setting
commit-queue@webkit.org [Thu, 26 Apr 2012 13:34:04 +0000 (13:34 +0000)]
[EFL] WebGL support ewk_view setting
https://bugs.webkit.org/show_bug.cgi?id=84534

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-04-26
Reviewed by Antonio Gomes.

Exporting new ewk_view setting: webGLEnabled - enbles/disables WebGL support.

* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_enable_webgl_get):
(ewk_view_setting_enable_webgl_set):
* ewk/ewk_view.h:

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

9 years agoShare code used to animate numbers types between all animators
zimmermann@webkit.org [Thu, 26 Apr 2012 13:14:34 +0000 (13:14 +0000)]
Share code used to animate numbers types between all animators
https://bugs.webkit.org/show_bug.cgi?id=84945

Reviewed by Antti Koivisto.

Refactor animateAdditiveNumber() from SVGAnimatedNumberAnimator into SVGAnimationElement,
to reuse it for all primitives. Converted most primitives to use the new code. Lists, paths,
colors are still todo.

Doesn't affect any tests.

* svg/SVGAnimatedAngle.cpp:
(WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):
* svg/SVGAnimatedInteger.cpp:
(WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedInteger):
(WebCore::SVGAnimatedIntegerAnimator::calculateAnimatedValue):
* svg/SVGAnimatedInteger.h:
(SVGAnimatedIntegerAnimator):
* svg/SVGAnimatedIntegerOptionalInteger.cpp:
(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::calculateAnimatedValue):
* svg/SVGAnimatedLength.cpp:
(WebCore::SVGAnimatedLengthAnimator::calculateAnimatedValue):
* svg/SVGAnimatedLengthList.cpp:
(WebCore::SVGAnimatedLengthListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumber.cpp:
(WebCore::SVGAnimatedNumberAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumber.h:
* svg/SVGAnimatedNumberList.cpp:
(WebCore::SVGAnimatedNumberListAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumberOptionalNumber.cpp:
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):
* svg/SVGAnimatedNumberOptionalNumber.h:
* svg/SVGAnimatedRect.cpp:
(WebCore::SVGAnimatedRectAnimator::calculateAnimatedValue):
* svg/SVGAnimationElement.h:
(WebCore::SVGAnimationElement::animateAdditiveNumber):
(SVGAnimationElement):

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

9 years ago[Qt] r115300 broke the Qt build on Mac OS X.
ahf@0x90.dk [Thu, 26 Apr 2012 11:52:15 +0000 (11:52 +0000)]
[Qt] r115300 broke the Qt build on Mac OS X.

This patch adds guards around the createPluginContainer and
windowedPluginGeometryDidChange member functions in WebPageProxy.

Unreviewed build fix.

* UIProcess/qt/WebPageProxyQt.cpp:
(WebKit):

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

9 years agoWeb Inspector: [CRASH] WebViewImpl::setZoomLevel when emulating device metrics
apavlov@chromium.org [Thu, 26 Apr 2012 11:51:59 +0000 (11:51 +0000)]
Web Inspector: [CRASH] WebViewImpl::setZoomLevel when emulating device metrics
https://bugs.webkit.org/show_bug.cgi?id=84938

Check for the presence of a live Frame/FrameView before invoking methods that depend on them.

Reviewed by Yury Semikhatsky.

* src/WebDevToolsAgentImpl.cpp:
(WebKit::DeviceMetricsSupport::restore):

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

9 years agoForgotten build fix after r115227.
rniwa@webkit.org [Thu, 26 Apr 2012 11:45:15 +0000 (11:45 +0000)]
Forgotten build fix after r115227.

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::get4Values):

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

9 years ago[GTK] Add downloads support to MiniBrowser
carlosgc@webkit.org [Thu, 26 Apr 2012 11:01:19 +0000 (11:01 +0000)]
[GTK] Add downloads support to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=73662

Reviewed by Philippe Normand.

* MiniBrowser/gtk/BrowserDownloadsBar.c: Added.
(browserDownloadsBarChildRemoved): Close the downloads bar if
there aren't active downloads.
(browserDownloadsBarResponse): Destroy the downloads bar when
closed.
(browser_downloads_bar_init):
(browser_downloads_bar_class_init):
(browser_downloads_bar_new): Create a new downloads bar.
(actionButtonClicked): Cancel the download if cancel button was
clicked, or open the downloaded file if the download finished.
(browserDownloadFinalize):
(browser_download_init):
(browser_download_class_init):
(downloadReceivedResponse): Update download message using the
response URI.
(remainingTime): Helper function to get human readable remaining
time.
(downloadProgress): Update downloads progress.
(downloadReceivedData):
(downloadFinished): Update download message and turn download
button into open.
(downloadFailed): Show error message or destroy the download UI if
it was cancelled.
(browserDownloadNew): Create a new download widget for the given
WebKitDownload.
(browser_downloads_bar_add_download): Add download widget to the
downloads bar.
* MiniBrowser/gtk/BrowserDownloadsBar.h: Added.
* MiniBrowser/gtk/BrowserWindow.c:
(downloadStarted): Create a download widget and add it to the
downloads bar when a new download is started.
(browserWindowConstructed): Connect to
WebKitWebContext::download-started signal.
* MiniBrowser/gtk/GNUmakefile.am: Add new files to compilation.

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

9 years ago[GTK][WebKit2] Initial windowed plugins implementation
carlosgc@webkit.org [Thu, 26 Apr 2012 10:58:03 +0000 (10:58 +0000)]
[GTK][WebKit2] Initial windowed plugins implementation
https://bugs.webkit.org/show_bug.cgi?id=61065

Reviewed by Philippe Normand.

* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::createPluginContainer):
(WebKit::PluginControllerProxy::windowedPluginGeometryDidChange):
* PluginProcess/PluginControllerProxy.h:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerAdd): Implement GtkContainer::add().
(webkitWebViewBaseContainerRemove): Implement GtkContainer::remove().
(webkitWebViewBaseContainerForall): Implement GtkContainer::forall().
(webkitWebViewBaseChildMoveResize): Set a new geometry for a child widget.
(webkitWebViewBaseChildAllocate): Allocate a child widget.
(resizeWebKitWebViewBaseFromAllocation): Allocate child widgets.
(webkit_web_view_base_class_init):
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add webkitWebViewBaseSizeAllocate().
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in: Add createPluginContainer
and windowedPluginGeometryDidChange messages.
* UIProcess/gtk/WebPageProxyGtk.cpp:
(WebKit::pluginWindowMap):
(WebKit::pluginContainerPlugRemoved): Remove the socket from the
hash map when its plug is removed.
(WebKit::WebPageProxy::createPluginContainer): Create a GtkSocket
as container widget for windowed plugins.
(WebKit::WebPageProxy::windowedPluginGeometryDidChange): Call
webkitWebViewBaseSizeAllocate() to update the plugin widget
geometry.
* UIProcess/qt/WebPageProxyQt.cpp:
(WebKit::WebPageProxy::createPluginContainer):
(WebKit::WebPageProxy::windowedPluginGeometryDidChange):
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::NetscapePlugin):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::socketPlugRemovedCallback): Return TRUE to avoid the
socket to be destroyed, since we need to reuse it.
(WebKit::NetscapePlugin::platformPostInitializeWindowed): Ask the
ui process to create a plugin container.
(WebKit::NetscapePlugin::platformPostInitializeWindowless):
(WebKit::NetscapePlugin::platformPostInitialize):
(WebKit::NetscapePlugin::platformGeometryDidChange): For windowed
plugins notify the ui process that the plugin geometry has
changed.
(WebKit::NetscapePlugin::platformPaint): Do nothing for windowed
plugins, the caller already calls callSetWindow().
* WebProcess/Plugins/PluginController.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::createPluginContainer):
(WebKit::PluginProxy::windowedPluginGeometryDidChange):
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginProxy.messages.in:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::createPluginContainer):
(WebKit::PluginView::windowedPluginGeometryDidChange):
* WebProcess/Plugins/PluginView.h:

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

9 years agohttp/tests/security/cross-frame-access-put.html is failing
commit-queue@webkit.org [Thu, 26 Apr 2012 10:27:44 +0000 (10:27 +0000)]
http/tests/security/cross-frame-access-put.html is failing
https://bugs.webkit.org/show_bug.cgi?id=82751

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-26
Reviewed by Kentaro Hara.

* http/tests/security/cross-frame-access-put-expected.txt: Correct
expected value for window.frameElement. It is now 'null' instead of
'undefined' when shouldAllowAccessToNode() check fails, since bug
80205 fix.
* platform/gtk/http/tests/security/cross-frame-access-put-expected.txt: Removed.
It is now identifical to the global expectation.
* platform/qt/http/tests/security/cross-frame-access-put-expected.txt: Removed. Ditto.

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

9 years agoUnreviewed. Skip unit test failing in debug bot.
carlosgc@webkit.org [Thu, 26 Apr 2012 08:32:10 +0000 (08:32 +0000)]
Unreviewed. Skip unit test failing in debug bot.

* Scripts/run-gtk-tests:
(TestRunner):

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

9 years agoCrash when collecting svg symbol element in named flow.
mihnea@adobe.com [Thu, 26 Apr 2012 07:59:09 +0000 (07:59 +0000)]
Crash when collecting svg symbol element in named flow.
https://bugs.webkit.org/show_bug.cgi?id=84493

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/symbol-in-named-flow-crash.svg

* dom/Element.cpp:
(WebCore::Element::~Element):
Add an assert that an element that was collected into a named flow was already removed at this point
(when the document is not in the process of destruction)
(WebCore::Element::unregisterNamedFlowContentNode):
Created a new function for unregistering a content node. In the future, this function may be used for
content nodes from shadow dom.
(WebCore::Element::detach):
* dom/Element.h:
(Element):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
Prevent elements that are part of shadow dom to be collected into a named flow.

LayoutTests:

* fast/regions/symbol-in-named-flow-crash-expected.txt: Added.
* fast/regions/symbol-in-named-flow-crash.svg: Added.

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

9 years agoShare code used to animate discrete types between all animators
zimmermann@webkit.org [Thu, 26 Apr 2012 07:52:42 +0000 (07:52 +0000)]
Share code used to animate discrete types between all animators
https://bugs.webkit.org/show_bug.cgi?id=84853

Reviewed by Andreas Kling.

Source/WebCore:

Share by-animation handling for non-additive types in a central method in SVGAnimatedTypeAnimator,
to be reusable by SVGAnimatedBoolean/Enumeration/PreserveAspectRatio/String. Add a new test covering
these animations have no effect.

Test: svg/animations/non-additive-type-by-animation.html

* svg/SVGAnimateElement.cpp:
(WebCore::SVGAnimateElement::calculateFromAndByValues):
(WebCore::SVGAnimateElement::isAdditive):
* svg/SVGAnimateElement.h:
(SVGAnimateElement):
* svg/SVGAnimateMotionElement.cpp:
(WebCore::SVGAnimateMotionElement::calculateFromAndByValues):
* svg/SVGAnimatedBoolean.cpp:
(WebCore::isTrueString):
(WebCore::SVGAnimatedBooleanAnimator::constructFromString):
(WebCore::SVGAnimatedBooleanAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedBooleanAnimator::calculateAnimatedValue):
* svg/SVGAnimatedEnumeration.cpp:
(WebCore::SVGAnimatedEnumerationAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedEnumerationAnimator::calculateAnimatedValue):
* svg/SVGAnimatedPreserveAspectRatio.cpp:
(WebCore::SVGAnimatedPreserveAspectRatioAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedPreserveAspectRatioAnimator::calculateAnimatedValue):
* svg/SVGAnimatedString.cpp:
(WebCore::SVGAnimatedStringAnimator::addAnimatedTypes):
(WebCore::SVGAnimatedStringAnimator::calculateAnimatedValue):
* svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::startedActiveInterval):
* svg/SVGAnimationElement.h:
(SVGAnimationElement):
(WebCore::SVGAnimationElement::animateDiscreteType):

LayoutTests:

Add tests covering by-animation on non-additive types, which should have no effect.

* svg/animations/non-additive-type-by-animation-expected.txt: Added.
* svg/animations/non-additive-type-by-animation.html: Added.
* svg/animations/resources/non-additive-type-by-animation.svg: Added.
* svg/animations/script-tests/non-additive-type-by-animation.js: Added.
(sample):
(executeTest):

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

9 years agoCrashTracer: [USER] 157 crashes in WebProcess at com.apple.WebCore: WebCore::Accessib...
cfleizach@apple.com [Thu, 26 Apr 2012 07:37:19 +0000 (07:37 +0000)]
CrashTracer: [USER] 157 crashes in WebProcess at com.apple.WebCore: WebCore::AccessibilityRenderObject::isAttachment const + 29
https://bugs.webkit.org/show_bug.cgi?id=84463

Reviewed by Darin Adler.

Source/WebCore:

Accessibility was not being enabled when WK2 was asking only for the focused UI element.

No layout test could be written because the WKTestRunner mechanism works differently when asking for this.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::focusedUIElementForPage):
(WebCore::AXObjectCache::rootObject):
(WebCore::AXObjectCache::rootObjectForFrame):

Source/WebKit2:

* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
(WebKit):

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

9 years ago[EFL][DRT] "resource,request,willsend" signal needs to provide more information
commit-queue@webkit.org [Thu, 26 Apr 2012 07:09:31 +0000 (07:09 +0000)]
[EFL][DRT] "resource,request,willsend" signal needs to provide more information
https://bugs.webkit.org/show_bug.cgi?id=84670

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-26
Reviewed by Andreas Kling.

Source/WebKit/efl:

The "resource,request,willsend" signal now provides more information
about the network request as well as information about the possible
redirect response. This extra information will be needed to support
LayoutTestController's dumpResourceLoadCallbacks() in EFL's
DumpRenderTree.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):
(WebCore::FrameLoaderClientEfl::assignIdentifierToInitialRequest):
(WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNavigationAction):
* ewk/ewk_frame.cpp:
(ewk_frame_request_will_send):
* ewk/ewk_frame.h:
* ewk/ewk_private.h:
* ewk/ewk_view.h:

Tools:

Handle in EFL's DumpRenderTree the new Ewk_Frame_Resource_Messages now
passed with the "resource,request,willsend" signal and dump
information about the network request and the possible network
response if LayoutTestController's dumpResourceLoadCallbacks() returns
true.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(pathSuitableForTestResult):
(urlSuitableForTestResult):
(descriptionSuitableForTestResult):
(DumpRenderTreeChrome::onWillSendRequest):

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

9 years ago[Qt][WK2] Unreviewed, rolling out r113703 because of crashing tests.
ossy@webkit.org [Thu, 26 Apr 2012 07:02:30 +0000 (07:02 +0000)]
[Qt][WK2] Unreviewed, rolling out r113703 because of crashing tests.
http://trac.webkit.org/changeset/113703
https://bugs.webkit.org/show_bug.cgi?id=83024

Tools:

* DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
* Tools.pro:
* qmake/mkspecs/features/features.prf:
* qmake/mkspecs/features/functions.prf:

LayoutTests:

* platform/qt-5.0-wk2/Skipped:
* platform/qt-5.0-wk2/fast/dom/prototype-inheritance-2-expected.txt:

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

9 years agoTeach LayoutTestHelper to correctly restore the color profile when it's a factory...
mjs@apple.com [Thu, 26 Apr 2012 06:27:07 +0000 (06:27 +0000)]
Teach LayoutTestHelper to correctly restore the color profile when it's a factory profile
https://bugs.webkit.org/show_bug.cgi?id=84931

Reviewed by Filip Pizlo.

* DumpRenderTree/mac/LayoutTestHelper.m:
(installLayoutTestColorProfile): Account for the possibility of the default
profile being a factory profile.

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

9 years ago[chromium] Remove guarded virtual methods from WebFilterOperation API
danakj@chromium.org [Thu, 26 Apr 2012 05:44:22 +0000 (05:44 +0000)]
[chromium] Remove guarded virtual methods from WebFilterOperation API
https://bugs.webkit.org/show_bug.cgi?id=84926

Reviewed by James Robinson.

Source/Platform:

We remove the virtual methods from the WebFilterOperation class,
and use an enum in the base class to distinguish which subclass
the object is. Then WebFilterOperations can access the correct
subclass to get the filter operation's data and construct a
WebCore::FilterOperation to store internally.

* chromium/public/WebFilterOperation.h:
(WebKit::WebFilterOperation::WebFilterOperation):
(WebKit::WebBasicColorMatrixFilterOperation::WebBasicColorMatrixFilterOperation):
(WebBasicColorMatrixFilterOperation):
(WebKit::WebBasicComponentTransferFilterOperation::WebBasicComponentTransferFilterOperation):
(WebBasicComponentTransferFilterOperation):
(WebKit::WebBlurFilterOperation::WebBlurFilterOperation):
(WebKit::WebDropShadowFilterOperation::WebDropShadowFilterOperation):

Source/WebCore:

* WebCore.gypi:
* platform/chromium/support/WebFilterOperation.cpp: Removed.
* platform/chromium/support/WebFilterOperations.cpp:
(WebKit::WebFilterOperations::append):

Source/WebKit/chromium:

* src/AssertMatchingEnums.cpp:

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

9 years agoAdd a version of StringImpl::find() without offset
benjamin@webkit.org [Thu, 26 Apr 2012 05:27:52 +0000 (05:27 +0000)]
Add a version of StringImpl::find() without offset
https://bugs.webkit.org/show_bug.cgi?id=83968

Source/JavaScriptCore:

Reviewed by Sam Weinig.

Add support for the new StringImpl::find() to UString.

Change stringProtoFuncIndexOf() to specifically take advatage of the feature.
This gives a 12% gains on a distribution of strings between 30 and 100 characters.

* runtime/StringPrototype.cpp:
(JSC::substituteBackreferences):
(JSC::stringProtoFuncIndexOf):
* runtime/UString.h:
(UString):
(JSC::UString::find):

Source/WebCore:

Reviewed by Sam Weinig.

Remove the zero offset of the find() functions on strings.

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::init):
* platform/network/ResourceResponseBase.cpp:
(WebCore::trimToNextSeparator):
(WebCore::parseCacheHeader):

Source/WebKit2:

Update the symbols files.

* win/WebKit2.def:
* win/WebKit2CFLite.def:

Source/WTF:

Reviewed by Sam Weinig.

This patch add a version of StringImpl::find() without offset, Instead of using the default
value for the index.

By not having the index, we can skip a couple of branches and a few instructions. This gives
significant gains when the strings are short-ish.

The case of empty string is moved below (matchLength == 1) since it is a less common operation.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::find):
(WTF):
* wtf/text/StringImpl.h:
(StringImpl):
* wtf/text/WTFString.h:
(String):
(WTF::String::find):

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

9 years ago[Blackberry] add a new function in BackingStore
commit-queue@webkit.org [Thu, 26 Apr 2012 05:17:44 +0000 (05:17 +0000)]
[Blackberry] add a new function in BackingStore
https://bugs.webkit.org/show_bug.cgi?id=84818

Patch by Chris Guan <chris.guan@torchmobile.com.cn> on 2012-04-25
Reviewed by Antonio Gomes.

Adding two functions in BackingStorePrivate and
BackingStore, which could render out webpage contents
into BlackBerry::Platform::Graphics::Drawable.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::renderContents):
(WebKit):
(BlackBerry::WebKit::BackingStore::drawContents):
* Api/BackingStore.h:
* Api/BackingStore_p.h:
(BackingStorePrivate):

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

9 years agoWebCore shouldn't call collectAllGarbage directly
mhahnenberg@apple.com [Thu, 26 Apr 2012 05:08:06 +0000 (05:08 +0000)]
WebCore shouldn't call collectAllGarbage directly
https://bugs.webkit.org/show_bug.cgi?id=84897

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Exported symbol
for reportAbanondedObjectGraph so WebCore can use it.
* heap/Heap.h: Ditto.

Source/WebCore:

No new tests.

Currently, GCController calls Heap::collectAllGarbage directly, which leads
to an overload of collections as the timer in GCController and the timer in
GCActivityCallback compete for collection time and fire independently. As a
result, we end up doing almost 600 full collections during an in-browser run
of SunSpider, or 20 full collections on a single load of TechCrunch.

We can do better by preventing WebCore from calling collectAllGarbage directly
and instead going through Heap::reportAbandonedObjectGraph, since that is what
WebCore is trying to do--notify the Heap that a lot of garbage may have just
been generated when we left a page.

* WebCore.exp.in:
* bindings/js/GCController.cpp: Removed all timer stuff.
(WebCore::GCController::GCController):
(WebCore::GCController::garbageCollectSoon): Changed to call Heap::reportAbandonedObjectGraph.
(WebCore::GCController::garbageCollectNow): Changed to still directly call collectAllGarbage.
We will deprecate this function soon hopefully.
* bindings/js/GCController.h: Removed timer stuff.
(GCController):
* bindings/js/ScriptProfiler.cpp:
(WebCore::ScriptProfiler::collectGarbage): Changed to call garbageCollectSoon.

Source/WebKit2:

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didClose): Changed to call garbageCollectSoon. This is the
function that causes us to do so much collection on page navigation.

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

9 years agofast/js/random-array-gc-stress times out in debug mode
mhahnenberg@apple.com [Thu, 26 Apr 2012 05:07:31 +0000 (05:07 +0000)]
fast/js/random-array-gc-stress times out in debug mode
https://bugs.webkit.org/show_bug.cgi?id=84821

Reviewed by Geoffrey Garen.

* fast/js/script-tests/random-array-gc-stress.js: Trying a lower number of iterations
to make the slow bots happy.

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

9 years agoUnreviewed, rolling out r115240.
ossy@webkit.org [Thu, 26 Apr 2012 04:57:07 +0000 (04:57 +0000)]
Unreviewed, rolling out r115240.
http://trac.webkit.org/changeset/115240
https://bugs.webkit.org/show_bug.cgi?id=84928

It broke everything (Requested by Ossy_HOME on #webkit).

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

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkDriver):
(GtkDriver._start):
(GtkDriver._start.x_filter):
(GtkDriver.stop):
(GtkPort._driver_class):
* Scripts/webkitpy/layout_tests/port/qt.py:
(QtPort._build_driver):
* Scripts/webkitpy/layout_tests/port/xvfbdriver.py: Removed.

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

9 years ago[chromium] REGRESSION(112286) Compositor initialization blocks for program compilatio...
commit-queue@webkit.org [Thu, 26 Apr 2012 04:50:28 +0000 (04:50 +0000)]
[chromium] REGRESSION(112286) Compositor initialization blocks for program compilation / linking
https://bugs.webkit.org/show_bug.cgi?id=84822

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

Source/WebCore:

r112286 introduced a subtle regression in the chromium compositor startup sequence - by querying the texture
copy program's uniform location at the end of LayerRendererChromium::initialize(), the compositor's thread was
blocked until the service side compiled _all_ eagerly initialized shaders. The intent of the way the compositor
programs are created is that a set of commonly-used programs are sent to the service side, but no blocking calls
are made until after we go through the first paint (with the hope that the service side will complete the
compilation by then).

Fixed by moving program initialization (which also grabs uniform locations) until the first actual use of the
copier. It may be worth deferring the program initialization completely if it's not used very often.

Added unit test in LayerRendererChromiumTests to make sure LRC initialization does not make any
synchronous calls (like getUniformLocation()).

* platform/graphics/chromium/TextureCopier.cpp:
(WebCore::AcceleratedTextureCopier::AcceleratedTextureCopier):
(WebCore::AcceleratedTextureCopier::copyTexture):

Source/WebKit/chromium:

Add a test that makes sure we don't make blocking calls during LayerRendererChromium initialization.

* tests/LayerRendererChromiumTest.cpp:
(ForbidSynchronousCallContext):
(ForbidSynchronousCallContext::ForbidSynchronousCallContext):
(ForbidSynchronousCallContext::finish):
(ForbidSynchronousCallContext::getActiveAttrib):
(ForbidSynchronousCallContext::getActiveUniform):
(ForbidSynchronousCallContext::getAttachedShaders):
(ForbidSynchronousCallContext::getAttribLocation):
(ForbidSynchronousCallContext::getBooleanv):
(ForbidSynchronousCallContext::getBufferParameteriv):
(ForbidSynchronousCallContext::getContextAttributes):
(ForbidSynchronousCallContext::getError):
(ForbidSynchronousCallContext::getFloatv):
(ForbidSynchronousCallContext::getFramebufferAttachmentParameteriv):
(TEST):

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

9 years ago[BlackBerry] Authenticated proxy isn't working.
commit-queue@webkit.org [Thu, 26 Apr 2012 04:03:27 +0000 (04:03 +0000)]
[BlackBerry] Authenticated proxy isn't working.
https://bugs.webkit.org/show_bug.cgi?id=84579

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-25
Reviewed by Antonio Gomes.

We should try to get username and password from WiFi advanced configuration first
when 407 is received.

No new tests. This is covered by existing http tests when proxy's username and password
are configured for WiFi.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::sendRequestWithCredentials):

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

9 years agoRebaseline *.png pixel test files after bug 84649 fix
commit-queue@webkit.org [Thu, 26 Apr 2012 02:26:05 +0000 (02:26 +0000)]
Rebaseline *.png pixel test files after bug 84649 fix
https://bugs.webkit.org/show_bug.cgi?id=84905

Patch by David Barton <dbarton@mathscribe.com> on 2012-04-25
Reviewed by Beth Dakin.

* platform/mac/mathml/presentation/fenced-expected.png:
* platform/mac/mathml/presentation/fenced-mi-expected.png:
* platform/mac/mathml/presentation/mo-expected.png:
* platform/mac/mathml/presentation/mo-stretch-expected.png:
* platform/mac/mathml/presentation/over-expected.png:
* platform/mac/mathml/presentation/row-alignment-expected.png:
* platform/mac/mathml/presentation/row-expected.png:
* platform/mac/mathml/presentation/sub-expected.png:
* platform/mac/mathml/presentation/subsup-expected.png:

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

9 years agoIndexedDB: implement cursor.advance()
commit-queue@webkit.org [Thu, 26 Apr 2012 02:23:34 +0000 (02:23 +0000)]
IndexedDB: implement cursor.advance()
https://bugs.webkit.org/show_bug.cgi?id=84174

Patch by Alec Flett <alecflett@chromium.org> on 2012-04-25
Reviewed by Ojan Vafai.

Source/WebCore:

Implement IDBCursor.advance() to spec.

Test: storage/indexeddb/cursor-advance.html

* Modules/indexeddb/IDBBackingStore.h:
* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::advance):
(WebCore):
* Modules/indexeddb/IDBCursor.h:
(IDBCursor):
* Modules/indexeddb/IDBCursor.idl:
* Modules/indexeddb/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::advance):
(WebCore):
(WebCore::IDBCursorBackendImpl::advanceInternal):
* Modules/indexeddb/IDBCursorBackendImpl.h:
(IDBCursorBackendImpl):
* Modules/indexeddb/IDBCursorBackendInterface.h:
* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore):

Source/WebKit/chromium:

Hook up chromium IPC to IDBCursor.advance().

* src/IDBCursorBackendProxy.cpp:
(WebKit::IDBCursorBackendProxy::advance):
(WebKit):
* src/IDBCursorBackendProxy.h:
(IDBCursorBackendProxy):
* src/WebIDBCursorImpl.cpp:
(WebKit::WebIDBCursorImpl::advance):

LayoutTests:

Tests for cursor.advance().

* storage/indexeddb/cursor-advance-expected.txt: Added.
* storage/indexeddb/cursor-advance.html: Added.
* storage/indexeddb/resources/cursor-advance.js: Added.
(test):
(openSuccess):
(createAndPopulateObjectStore):
(makeAdvanceTest.continueToTest):
(makeAdvanceTest.request.onerror):
(makeAdvanceTest):
(mkCursor):
(runTest):
(testAll):
(testSimple):
(testContinueThenAdvance):
(testAdvanceMultiple):
(testAdvanceToEnd):

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

9 years ago[chromium] Hold video provider lock from willDraw to didDraw
enne@google.com [Thu, 26 Apr 2012 02:06:41 +0000 (02:06 +0000)]
[chromium] Hold video provider lock from willDraw to didDraw
https://bugs.webkit.org/show_bug.cgi?id=84805

Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::appendQuads):
(WebCore::CCVideoLayerImpl::didDraw):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:

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

9 years ago[BlackBerry] Input Range element expects mouse events
charles.wei@torchmobile.com.cn [Thu, 26 Apr 2012 02:02:41 +0000 (02:02 +0000)]
[BlackBerry] Input Range element expects mouse events
https://bugs.webkit.org/show_bug.cgi?id=84571

Reviewed by Antonio Gomes.

This just cleans up the code a bit to make it less code and more readable.
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::shouldConvertTouchToMouse):
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
(BlackBerry::WebKit::TouchEventHandler::spellCheck):

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

9 years agoUnreviewed, rolling out r115262.
hclam@chromium.org [Thu, 26 Apr 2012 01:56:00 +0000 (01:56 +0000)]
Unreviewed, rolling out r115262.
http://trac.webkit.org/changeset/115262
https://bugs.webkit.org/show_bug.cgi?id=84631

r115262 is causing link error in WebKit Win Builder (dbg)

* public/WebIDBDatabase.h:
(WebKit::WebIDBDatabase::createObjectStore):
* public/WebIDBIndex.h:
(WebKit::WebIDBIndex::keyPath):
(WebKit::WebIDBIndex::keyPathString):
* public/WebIDBKeyPath.h:
(WebKit):
(WebIDBKeyPath):
* public/WebIDBObjectStore.h:
(WebKit::WebIDBObjectStore::keyPath):
(WebKit::WebIDBObjectStore::keyPathString):
(WebKit::WebIDBObjectStore::createIndex):
* public/platform/WebKitPlatformSupport.h:
(WebKit::WebKitPlatformSupport::createIDBKeysFromSerializedValuesAndKeyPath):
(WebKit::WebKitPlatformSupport::injectIDBKeyIntoSerializedValue):
* src/IDBIndexBackendProxy.cpp:
(WebKit::IDBIndexBackendProxy::keyPath):
* src/IDBObjectStoreBackendProxy.cpp:
(WebKit::IDBObjectStoreBackendProxy::keyPath):
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl):
* src/WebIDBIndexImpl.cpp:
* src/WebIDBIndexImpl.h:
(WebIDBIndexImpl):
* src/WebIDBKeyPath.cpp:
(WebKit::WebIDBKeyPath::create):
(WebKit::WebIDBKeyPath::assign):
(WebKit::WebIDBKeyPath::operator const WTF::Vector<WTF::String, 0>&):
* src/WebIDBObjectStoreImpl.cpp:
* src/WebIDBObjectStoreImpl.h:
(WebIDBObjectStoreImpl):
(WebKit::WebIDBObjectStoreImpl::createIndex):

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

9 years ago[chromium] Prevent CCLayerImpl::willDraw/didDraw mismatches
enne@google.com [Thu, 26 Apr 2012 01:48:08 +0000 (01:48 +0000)]
[chromium] Prevent CCLayerImpl::willDraw/didDraw mismatches
https://bugs.webkit.org/show_bug.cgi?id=84812

Reviewed by James Robinson.

Source/WebCore:

Because some layers lock/unlock resources, it needs to be guaranteed
that if willDraw is called on a layer then didDraw will also be called
on that layer before another willDraw or before layer destruction. Add
asserts to make sure that this is the case.

willDraw is called via CCLayerTreeHostImpl::prepareToDraw ->
calculateRenderPasses. didDraw was previously called in
CCLayerTreeHostImpl::drawLayers. Sometimes drawLayers was being
skipped by the caller of these functions based on what prepareToDraw
returned (causing didDraw to not be called). Fix this by having an
explicit step to call didDraw on all layers. This new didDrawAllLayers
function must be called if and only if prepareToDraw is called.

Tested by existing tests via new asserts in CCLayerImpl.

* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::~CCLayerImpl):
(WebCore::CCLayerImpl::willDraw):
(WebCore):
(WebCore::CCLayerImpl::didDraw):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(CCLayerImpl):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::drawLayers):
(WebCore::CCLayerTreeHostImpl::didDrawAllLayers):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::willDraw):
(WebCore::CCScrollbarLayerImpl::didDraw):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::doComposite):
* platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
(WebCore::CCTextureLayerImpl::willDraw):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::didDraw):

Source/WebKit/chromium:

Update all tests to call CCLayerTreeHostImpl::didDrawAllLayers if they
call CCLayerTreeHostImpl::prepareToDraw.

* tests/CCLayerTreeHostImplTest.cpp:
(WebKitTests::CCLayerTreeHostImplTest::initializeLayerRendererAndDrawFrame):
(WebKitTests::TEST_F):

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

9 years agoCalendar Picker: Resize to minimal size to fit the content
tkent@chromium.org [Thu, 26 Apr 2012 01:26:05 +0000 (01:26 +0000)]
Calendar Picker: Resize to minimal size to fit the content
https://bugs.webkit.org/show_bug.cgi?id=84826

Reviewed by Hajime Morita.

.:

* ManualTests/forms/calendar-picker.html:
Sync with the size specified in CalendarPickerElement.cpp.

Source/WebCore:

Using fixed-size popup isn't nice. The calender picker popup size should
be minimal.

The minimal size depends on font settings, localized labels, and
localized formats. So we put visible objects on a transparent element,
calculate minimal size, resize the popup, then show the objects.

* Resources/calendarPicker.css:
(body): Don't use purple. It was for debugging purpose.
The body is visible for a short period becuse we use transparent element.
(#main):
 - Add nowrap to avoid text wrapping.
 - Add wider width to avoid wrapping.
 - Add opacity to hide incomplete layout.
(.year-month-upper): Don't set flexible box yet.
(.month-selector-box): Fix incorrect display value.
(.days-area):
Don't set table-layout:fixed and width:100% in order that it has the
minimal width.

* Resources/calendarPicker.js:
(initialize): Make a new functio to resize.
(fixWindowSize):
Compute the required width from the right edge of the next year button,
the maximum cell width, and so on.  Then, set CSS properties to have
correct layout.
(YearMonthController.prototype.attachTo):
Set min-width property for a long year-month string.
(YearMonthController.prototype._showPopup):
Center the _monthPopup vertically.

* html/shadow/CalendarPickerElement.cpp:
(WebCore::CalendarPickerElement::contentSize):
Specify small size for the initial size. It's better than showing a
large window then shrink the size.
* page/PagePopupClient.h:
(PagePopupClient): Remove a false comment. We should support resize*().

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

9 years agoUnreviewed, rolling out r115260.
hclam@chromium.org [Thu, 26 Apr 2012 01:18:31 +0000 (01:18 +0000)]
Unreviewed, rolling out r115260.
http://trac.webkit.org/changeset/115260
https://bugs.webkit.org/show_bug.cgi?id=84467

r115260 is crashing a list of IndexDB tests, revert.

Source/WebCore:

* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore):
* platform/leveldb/LevelDBTransaction.cpp:
(WebCore::LevelDBTransaction::TransactionIterator::refreshTreeIterator):
(WebCore::LevelDBTransaction::TransactionIterator::handleConflictsAndDeletes):
* platform/leveldb/LevelDBTransaction.h:
(TransactionIterator):

LayoutTests:

* storage/indexeddb/cursor-added-bug-expected.txt: Removed.
* storage/indexeddb/cursor-added-bug.html: Removed.
* storage/indexeddb/resources/cursor-added-bug.js: Removed.

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

9 years ago[Web Timing] Add a vendor-prefixed Performance Timeline API
simonjam@chromium.org [Thu, 26 Apr 2012 01:17:36 +0000 (01:17 +0000)]
[Web Timing] Add a vendor-prefixed Performance Timeline API
https://bugs.webkit.org/show_bug.cgi?id=80350

As described here: http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html

The API is there and should be correct, but it isn't particularly useful,
because nothing is populated. Upcoming changes will add Navigation Timing
and Resource Timing.

Reviewed by Tony Gentilcore.

No new tests. Functionality is disabled on all platforms.

* CMakeLists.txt: Added PerformanceEntry* files.
* DerivedSources.pri: Ditto.
* GNUmakefile.list.am: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* page/Performance.cpp:
(WebCore::Performance::webkitGetEntries): Added.
(WebCore::Performance::webkitGetEntriesByType): Added.
(WebCore::Performance::webkitGetEntriesByName): Added.
* page/Performance.h:
(Performance):
* page/Performance.idl:
* page/PerformanceEntry.cpp: Added.
(WebCore):
(WebCore::PerformanceEntry::PerformanceEntry):
(WebCore::PerformanceEntry::name):
(WebCore::PerformanceEntry::entryType):
(WebCore::PerformanceEntry::startTime):
(WebCore::PerformanceEntry::duration):
* page/PerformanceEntry.h: Added.
(WebCore):
(PerformanceEntry):
* page/PerformanceEntry.idl: Added.
* page/PerformanceEntryList.cpp: Added.
(WebCore):
(WebCore::PerformanceEntryList::PerformanceEntryList):
(WebCore::PerformanceEntryList::~PerformanceEntryList):
(WebCore::PerformanceEntryList::length):
(WebCore::PerformanceEntryList::item):
(WebCore::PerformanceEntryList::append):
* page/PerformanceEntryList.h: Added.
(WebCore):
(PerformanceEntryList):
(WebCore::PerformanceEntryList::create):
* page/PerformanceEntryList.idl: Added.

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

9 years agoRemove unnecessary timeouts (and closures) from content-element-in-* tests.
dglazkov@chromium.org [Thu, 26 Apr 2012 01:16:38 +0000 (01:16 +0000)]
Remove unnecessary timeouts (and closures) from content-element-in-* tests.
https://bugs.webkit.org/show_bug.cgi?id=84896

These tests don't need any of them. Not sure how they got there in the first place. Oh wait. I reviewed this code. /me hands head in shame.

Reviewed by Ojan Vafai.

* fast/dom/shadow/content-element-in-media-element.html: Removed the timeout and extra closures.
* fast/dom/shadow/content-element-in-meter-element.html: Ditto.
* fast/dom/shadow/content-element-in-progress-element.html: Ditto.
* fast/dom/shadow/content-element-in-select-element.html: Ditto.

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

9 years agoIterating a HashMap<String, X> involves a string equality comparison to check for...
darin@apple.com [Thu, 26 Apr 2012 01:13:06 +0000 (01:13 +0000)]
Iterating a HashMap<String, X> involves a string equality comparison to check for the empty value
https://bugs.webkit.org/show_bug.cgi?id=84524

Reviewed by Antti Koivisto.

* wtf/HashMap.h: Added a struct template, HashMapValueTraits, that derives from
PairHashTraits, adds an isEmptyValue function that looks only at the key, not
the mapped value, in the hash table value, and uses the isHashTraitsEmptyValue
function template to check if the key is empty.

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=84913
bdakin@apple.com [Thu, 26 Apr 2012 01:11:42 +0000 (01:11 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=84913
WebKit 1: Initialize deviceScaleFactor on creation of the WebView
-and corresponding-
<rdar://problem/11322716>

Reviewed by Darin Adler.

Before this patch, we weren't setting the deviceScaleFactor until
viewDidMoveToWindow which is quite late for background tabs. setHostWindow will
happen early on though. For applications that don't use host windows, also set it
from _initWithFrame.
* WebView/WebView.mm:
(-[WebView _initWithFrame:frameName:groupName:usesDocumentViews:]):
(-[WebView setHostWindow:]):
(-[WebView _deviceScaleFactor]):

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=84909
bdakin@apple.com [Thu, 26 Apr 2012 01:07:35 +0000 (01:07 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=84909
Background tabs are fuzzy until repaint when deviceScaleFactor > 1
-and corresponding-
<rdar://problem/11312064>

Rubber-stamped by Darin Adler.

Re-order the parameters of paintBitmapContext to match paintImage.
* Platform/cg/CGUtilities.cpp:
(WebKit::paintBitmapContext):
* Platform/cg/CGUtilities.h:
(WebKit):
* UIProcess/mac/BackingStoreMac.mm:
(WebKit::BackingStore::resetScrolledRect):
(WebKit::BackingStore::paint):
(WebKit::BackingStore::backingStoreContext):

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

9 years agoMove convertJSMethodNameToObjc() to be a utility function of ObjcClass
benjamin@webkit.org [Thu, 26 Apr 2012 01:06:24 +0000 (01:06 +0000)]
Move convertJSMethodNameToObjc() to be a utility function of ObjcClass
https://bugs.webkit.org/show_bug.cgi?id=84915

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-25
Reviewed by Darin Adler.

The function convertJSMethodNameToObjc() is only useful for ObjcClass::methodsNamed().

This patch moves the function from objc_utility.mm to be a static function in objc_class.mm.
It aims at simplifying the code for future changes of ObjcClass.

* bridge/objc/objc_class.mm:
(Bindings):
(JSC::Bindings::convertJSMethodNameToObjc):
* bridge/objc/objc_utility.h:
* bridge/objc/objc_utility.mm:
(Bindings):

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

9 years ago[chromium] change DRT's "DRT" output to match the other ports
dpranke@chromium.org [Thu, 26 Apr 2012 01:03:53 +0000 (01:03 +0000)]
[chromium] change DRT's "DRT" output to match the other ports
https://bugs.webkit.org/show_bug.cgi?id=84904

Reviewed by Kent Tamura.

Since we run Chromium's DRT in --test-shell mode, the
non-test-shell output has never been really beaten on to make
sure it's right. This fixes a few issues and will be tested
with upcoming NRWT changes that'll land in a separate patch.
In particular we should never output framing text like "\n"
or "#EOF" outside of something outside of TestEventPrinter,
and we weren't handling audio output properly at all.

* DumpRenderTree/chromium/TestEventPrinter.cpp:
(DRTPrinter):
(TestShellPrinter):
(DRTPrinter::handleTextFooter):
(DRTPrinter::handleAudioFooter):
(DRTPrinter::handleTestFooter):
(TestShellPrinter::handleAudioFooter):
* DumpRenderTree/chromium/TestEventPrinter.h:
(TestEventPrinter):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):
(TestShell::dump):

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

9 years agoUnreviewed. Sort Xcode project file.
tkent@chromium.org [Thu, 26 Apr 2012 01:03:08 +0000 (01:03 +0000)]
Unreviewed. Sort Xcode project file.

* WebCore.xcodeproj/project.pbxproj:

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=84909
bdakin@apple.com [Thu, 26 Apr 2012 00:46:26 +0000 (00:46 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=84909
Background tabs are fuzzy until repaint when deviceScaleFactor > 1
-and corresponding-
<rdar://problem/11312064>

Reviewed by Darin Adler.

BackingStoreMac paints into a Bitmap instead of a CGLayer when there is no
containing window. That bitmap is used for the initial paint when a background tab
first comes to he foreground, so it needs to be HiDPI-aware.

paintBitmapContext() now takes a scale factor that it passes along to paintImage
rather than hardcoding a scale factor of 1 for paintImage.
* Platform/cg/CGUtilities.cpp:
(WebKit::paintBitmapContext):
* Platform/cg/CGUtilities.h:
(WebKit):

When these functions fall into the bitmap case, they need to adopt the device
scale factor, which means they need to scale in size by the scale factor, and also
scale their context.
* UIProcess/mac/BackingStoreMac.mm:
(WebKit::BackingStore::resetScrolledRect):
(WebKit::BackingStore::paint):
(WebKit::BackingStore::backingStoreContext):

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

9 years ago[Chromium] Layout Test css3/filters/custom/custom-filter-property-computed-style...
achicu@adobe.com [Thu, 26 Apr 2012 00:29:41 +0000 (00:29 +0000)]
[Chromium] Layout Test css3/filters/custom/custom-filter-property-computed-style.html is failing
https://bugs.webkit.org/show_bug.cgi?id=84067

Reviewed by Ryosuke Niwa.

All the CSS filters/shaders script tests expected to have a document.styleSheets.item(0) that they could change.
The script-tests add a <link> that references a CSS file from a different parent folder, so the script
has no access to the actual rules anymore. Updated all the tests to use createElement("style")
and get the styleSheet by using el.sheet instead of assuming that there's one style already created.

* css3/filters/script-tests/custom-filter-property-computed-style.js:
* css3/filters/script-tests/custom-filter-property-parsing-invalid.js:
(testInvalidFilterRule):
* css3/filters/script-tests/effect-custom-disabled.js:
(testInvalidFilterRule):
* css3/filters/script-tests/filter-property-computed-style.js:
(testComputedFilterRule):
* css3/filters/script-tests/filter-property-parsing-invalid.js:
(testInvalidFilterRule):
* css3/filters/script-tests/filter-property-parsing.js:
(testFilterRule):
* css3/filters/script-tests/filter-property.js:
* platform/chromium/test_expectations.txt: Removed reference to this bug.
* platform/mac/css3/filters/custom/custom-filter-property-computed-style-expected.txt: Removed. This is not necessary anymore.

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

9 years agoImplement object-literal constructor for the Intent object.
commit-queue@webkit.org [Thu, 26 Apr 2012 00:28:47 +0000 (00:28 +0000)]
Implement object-literal constructor for the Intent object.
https://bugs.webkit.org/show_bug.cgi?id=84220

Patch by Greg Billock <gbillock@google.com> on 2012-04-25
Reviewed by Kentaro Hara.

The use of the custom constructor will hopefully be temporary, as we plan
to convert to just using the object literal constructor, which can then use codegen.
See spec: http://dvcs.w3.org/hg/web-intents/raw-file/tip/spec/Overview.html

Added support for the service and extras parameters in the Intent
object to support the speced members in the object literal constructor.

Added supporting accessor to Dictionary to retrieve a sub-Dictionary,
and a utility to ScriptValue to serialize with ports.

Test: webintents/web-intent-obj-constructor.html

(WebCore):
* Modules/intents/Intent.cpp:
(WebCore::Intent::create):
(WebCore::Intent::Intent):
(WebCore::Intent::service):
(WebCore):
(WebCore::Intent::extras):
* Modules/intents/Intent.h:
(WebCore):
(Intent):
* Modules/intents/Intent.idl:
* WebCore.gypi:
* bindings/v8/Dictionary.cpp:
(WebCore::Dictionary::get):
(WebCore):
* bindings/v8/Dictionary.h:
(Dictionary):
* bindings/v8/ScriptValue.cpp:
(WebCore::ScriptValue::serialize):
(WebCore):
* bindings/v8/ScriptValue.h:
(WTF):
(WebCore):
(ScriptValue):
* bindings/v8/custom/V8IntentConstructor.cpp: Added.
(WebCore):
(WebCore::V8Intent::constructorCallback):

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

9 years agoCSS Shaders: Use u_texture instead of s_texture. It was updated in the spec
achicu@adobe.com [Thu, 26 Apr 2012 00:26:03 +0000 (00:26 +0000)]
CSS Shaders: Use u_texture instead of s_texture. It was updated in the spec
https://bugs.webkit.org/show_bug.cgi?id=82618

Source/WebCore:

Reviewed by Dean Jackson.

Changed the uniform name passed to the CSS Shaders from s_texture to u_texture.
https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html

No new tests, just updating existing ones.

* platform/graphics/filters/CustomFilterShader.cpp:
(WebCore::CustomFilterShader::defaultFragmentShaderString):
(WebCore::CustomFilterShader::initializeParameterLocations):

LayoutTests:

Reviewed by Dean Jackson.

Changed the uniform name passed to the CSS Shaders from s_texture to u_texture.
https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html

* css3/filters/resources/color-add.fs:
* css3/filters/resources/color-offset-parameters.fs:
* css3/filters/resources/color-offset.fs:

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

9 years ago[Chromium] IndexedDB: Use WebIDBKeyPath type for key paths in WebKit API
jsbell@chromium.org [Thu, 26 Apr 2012 00:07:34 +0000 (00:07 +0000)]
[Chromium] IndexedDB: Use WebIDBKeyPath type for key paths in WebKit API
https://bugs.webkit.org/show_bug.cgi?id=84631

Reviewed by James Robinson.

WebIDBKeyPath was previously a utility class for parsing key paths into components,
but the API exposed key paths only as nullable strings. To support array-type keypaths,
WebIDBKeyPath becomes a value class with type flags. For landing, several legacy methods
are retained but will be cleaned up after all callers have been updated, tracked as
the bug: http://webkit.org/b/84207

* public/WebIDBDatabase.h:
(WebKit::WebIDBDatabase::createObjectStore): Add WebIDBKeyPath overload; WebString overload delegates so implementers can switch.
* public/WebIDBIndex.h:
(WebKit::WebIDBIndex::keyPath): Calls keyPathString if not overridden.
(WebKit::WebIDBIndex::keyPathString): Comment change.
* public/WebIDBKeyPath.h:
(WebKit::WebIDBKeyPath::create): Overload added for creating array-type key paths.
(WebKit::WebIDBKeyPath::array): Accessor for array-type key paths.
(WebKit::WebIDBKeyPath::operator const WebString ): Temporary, for compatibility.
* public/WebIDBObjectStore.h:
(WebKit::WebIDBObjectStore::keyPath): Calls keyPathString if not overridden.
(WebKit::WebIDBObjectStore::keyPathString): Comment change.
(WebKit::WebIDBObjectStore::createIndex): Add WebIDBKeyPath overload; WebString overload delegates so implementers can switch.
* public/platform/WebKitPlatformSupport.h:
(WebKitPlatformSupport): WebIDBKeyPath overloads for these methods added, delegate to WebString version until implementers are updated.
(WebKit::WebKitPlatformSupport::createIDBKeysFromSerializedValuesAndKeyPath):
(WebKit::WebKitPlatformSupport::injectIDBKeyIntoSerializedValue):
* src/IDBIndexBackendProxy.cpp:
(WebKit::IDBIndexBackendProxy::keyPath): Returns the string version until WebCore is updated.
* src/IDBObjectStoreBackendProxy.cpp:
(WebKit::IDBObjectStoreBackendProxy::keyPath): Returns the string version until WebCore is updated.
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl): Add createObjectStore overload for WebIDBKeyPath type, delegates to WebString version until callers are updated.
* src/WebIDBIndexImpl.cpp:
(WebKit::WebIDBIndexImpl::keyPath): Implements the new WebIDBKeyPath return type.
(WebKit):
* src/WebIDBIndexImpl.h:
(WebIDBIndexImpl): Implements the new WebIDBKeyPath return type.
* src/WebIDBKeyPath.cpp:
(WebKit::WebIDBKeyPath::create): Support null key path types.
(WebKit::WebIDBKeyPath::createNull): New API.
(WebKit):
(WebKit::WebIDBKeyPath::isValid): New API.
(WebKit::WebIDBKeyPath::type): New API.
(WebKit::WebIDBKeyPath::string): New API (value accessor).
(WebKit::WebIDBKeyPath::WebIDBKeyPath):
(WebKit::WebIDBKeyPath::assign): This API will be removed.
(WebKit::WebIDBKeyPath::operator const WTF::Vector<WTF::String, 0>&): Ensure it is non-null - only used in copy constructor which guards against this.
* src/WebIDBObjectStoreImpl.cpp:
(WebKit::WebIDBObjectStoreImpl::keyPath): Implement the new WebIDBKeyPath return type.
(WebKit):
* src/WebIDBObjectStoreImpl.h:
(WebIDBObjectStoreImpl): Add createIndex overload for WebIDBKeyPath type, delegates to WebString version until callers are updated.

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

9 years agoIndexedDB: cursor does not correctly iterate over keys added and removed during iteration
commit-queue@webkit.org [Wed, 25 Apr 2012 23:52:12 +0000 (23:52 +0000)]
IndexedDB: cursor does not correctly iterate over keys added and removed during iteration
https://bugs.webkit.org/show_bug.cgi?id=84467

Patch by Douglas Stockwell <dstockwell@chromium.org> on 2012-04-25
Reviewed by Ojan Vafai.

Source/WebCore:

Ensure that the iterator over the tree of cached adds/removes always points at
the current key, or if the db iterator is current, the next key:

- When refreshing the tree iterator after a mutation, always seek unless the
tree iterator is current.

- When handing conflicts and delete markers, only advance the tree iterator as
far as the db iterator.

Remove the expensive (and now redundant) logic that issued a get() to check
whether an item had been deleted.

Test: storage/indexeddb/cursor-added-bug.html

* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore):
* platform/leveldb/LevelDBTransaction.cpp:
(WebCore::LevelDBTransaction::TransactionIterator::refreshTreeIterator):
(WebCore::LevelDBTransaction::TransactionIterator::handleConflictsAndDeletes):

LayoutTests:

New test for keys added in reverse order during cursor iteration.

* storage/indexeddb/cursor-added-bug-expected.txt: Added.
* storage/indexeddb/cursor-added-bug.html: Added.
* storage/indexeddb/resources/cursor-added-bug.js: Added.
(test):
(openSuccess):
(setVersionSuccess):
(openCursor):
(cursorSuccess):

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

9 years agoUnreviewed: Adding Alec Flett as a contributor (non-committer).
jsbell@chromium.org [Wed, 25 Apr 2012 23:39:26 +0000 (23:39 +0000)]
Unreviewed: Adding Alec Flett as a contributor (non-committer).

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

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

9 years agoMark myself as a reviewer.
inferno@chromium.org [Wed, 25 Apr 2012 23:30:39 +0000 (23:30 +0000)]
Mark myself as a reviewer.
https://bugs.webkit.org/show_bug.cgi?id=84902

Reviewed by Dimitri Glazkov.

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

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

9 years agoTry to fix build with STYLE_SCOPED enabled.
antti@apple.com [Wed, 25 Apr 2012 23:07:54 +0000 (23:07 +0000)]
Try to fix build with STYLE_SCOPED enabled.

Not reviewed.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::determineScope):

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

9 years agoIndexedDB: support openCursor(IDBKey)
commit-queue@webkit.org [Wed, 25 Apr 2012 23:05:29 +0000 (23:05 +0000)]
IndexedDB: support openCursor(IDBKey)
https://bugs.webkit.org/show_bug.cgi?id=84652

Patch by Alec Flett <alecflett@chromium.org> on 2012-04-25
Reviewed by Ojan Vafai.

Source/WebCore:

Add signatures for openCursor/openKeyCursor(IDBKey).

Test: storage/indexeddb/opencursor-key.html

* Modules/indexeddb/IDBIndex.cpp:
(WebCore::IDBIndex::openCursor):
(WebCore):
(WebCore::IDBIndex::openKeyCursor):
* Modules/indexeddb/IDBIndex.h:
(WebCore::IDBIndex::openCursor):
(IDBIndex):
(WebCore::IDBIndex::openKeyCursor):
* Modules/indexeddb/IDBIndex.idl:
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::openCursor):
(WebCore):
* Modules/indexeddb/IDBObjectStore.h:
(WebCore::IDBObjectStore::openCursor):
(IDBObjectStore):
* Modules/indexeddb/IDBObjectStore.idl:

LayoutTests:

Augment existing tests, and add new tests to support
IDBKey parameter to openCursor/openKeyCursor. Note that this removes
a test that was previously using dictionary-style parameters,
which have been temporarily broken due to IDL limitations.

* storage/indexeddb/cursor-delete-expected.txt:
* storage/indexeddb/open-cursor-expected.txt:
* storage/indexeddb/opencursor-key-expected.txt: Added.
* storage/indexeddb/opencursor-key.html: Added.
* storage/indexeddb/resources/cursor-delete.js:
(openCursor):
* storage/indexeddb/resources/open-cursor.js:
(emptyCursorWithKeySuccess):
(openEmptyCursorWithKey):
(cursorWithKeySuccess):
(openCursorWithKey):
(emptyCursorSuccess):
(openEmptyCursor):
(cursorSuccess):
* storage/indexeddb/resources/opencursor-key.js: Added.
(test):
(openSuccess):
(createAndPopulateObjectStore):
(createIndexes):
(testAll):
(testObjectStore.request.onsuccess):
(testObjectStore):
(testIndex.request.onsuccess):
(testIndex):
(testIndexWithKey.request.onsuccess):
(testIndexWithKey):

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

9 years agoInclude <sys/param.h>, needed for sysctl() on OpenBSD/NetBSD
rakuco@webkit.org [Wed, 25 Apr 2012 23:02:18 +0000 (23:02 +0000)]
Include <sys/param.h>, needed for sysctl() on OpenBSD/NetBSD
https://bugs.webkit.org/show_bug.cgi?id=82585

Patch by Landry Breuil <landry@openbsd.org> on 2012-04-25
Reviewed by Zoltan Herczeg.

* wtf/NumberOfCores.cpp: include <sys/param.h> on the BSDs

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

9 years agoBiolab disaster crashes on ToT
oliver@apple.com [Wed, 25 Apr 2012 23:01:08 +0000 (23:01 +0000)]
Biolab disaster crashes on ToT
https://bugs.webkit.org/show_bug.cgi?id=84898

Reviewed by Filip Pizlo.

Whoops, committed without saving reviewer requested change.

* dfg/DFGVirtualRegisterAllocationPhase.cpp:
(JSC::DFG::VirtualRegisterAllocationPhase::run):

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

9 years agoBiolab disaster crashes on ToT
oliver@apple.com [Wed, 25 Apr 2012 22:58:08 +0000 (22:58 +0000)]
Biolab disaster crashes on ToT
https://bugs.webkit.org/show_bug.cgi?id=84898

Reviewed by Filip Pizlo.

I recently added an assertion to the Interpreter to catch incorrect
updates of topCallFrame.  This caused a bunch of sites (including biolab
disaster) to crash as we were not correctly handling callee registers
of inlined functions, leading to a mismatch.

I could not actually make this trigger directly, although it does trigger
already on some of the GTK and QT bots.

* dfg/DFGVirtualRegisterAllocationPhase.cpp:
(JSC::DFG::VirtualRegisterAllocationPhase::run):

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

9 years ago[Chromium[ Remove a flaky expectation for a test that's been consistently passing.
dglazkov@chromium.org [Wed, 25 Apr 2012 22:52:41 +0000 (22:52 +0000)]
[Chromium[ Remove a flaky expectation for a test that's been consistently passing.

* platform/chromium/test_expectations.txt: Removed.

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