WebKit-https.git
7 years agoSecond wave of Chromium rebaselines after skia change. See crbug.com/131829.
ojan@chromium.org [Fri, 8 Jun 2012 21:37:01 +0000 (21:37 +0000)]
Second wave of Chromium rebaselines after skia change. See crbug.com/131829.

List of changed expectations deleted because it's too long.

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

7 years agoUnreviewed roll out r119795.
barraclough@apple.com [Fri, 8 Jun 2012 21:30:35 +0000 (21:30 +0000)]
Unreviewed roll out r119795.

This broke jquery/core.html

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
* llint/LowLevelInterpreter.asm:
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/JSGlobalThis.cpp:
(JSC::JSGlobalThis::setUnwrappedObject):
* runtime/JSObject.cpp:
(JSC::JSObject::visitChildren):
(JSC::JSObject::createInheritorID):
* runtime/JSObject.h:
(JSObject):
(JSC::JSObject::resetInheritorID):
(JSC):
(JSC::JSObject::offsetOfInheritorID):
(JSC::JSObject::inheritorID):

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

7 years agoAdded Mac pixel results for canvas-imageSmoothingEnabled-patterns.html, and made...
mitz@apple.com [Fri, 8 Jun 2012 21:13:56 +0000 (21:13 +0000)]
Added Mac pixel results for canvas-imageSmoothingEnabled-patterns.html, and made the text
results shared between platforms.

* fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Added.
* platform/chromium/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Removed.
* platform/gtk/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Removed.
* platform/mac/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png: Added.

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

7 years ago[chromium] Unreviewed, rebaseline a chromium-win result that changed
tony@chromium.org [Fri, 8 Jun 2012 21:12:58 +0000 (21:12 +0000)]
[chromium] Unreviewed, rebaseline a chromium-win result that changed
due to the various mock scrollbar changes.
https://bugs.webkit.org/show_bug.cgi?id=88490

* platform/chromium-win/fast/repaint/fixed-tranformed-expected.png:
* platform/chromium/TestExpectations:

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

7 years agoEventHandler shouldn't schedule the fake mousemove event timer when scrolling on...
tonikitoo@webkit.org [Fri, 8 Jun 2012 20:37:35 +0000 (20:37 +0000)]
EventHandler shouldn't schedule the fake mousemove event timer when scrolling on devices that don't have a mouse
https://bugs.webkit.org/show_bug.cgi?id=88379

Reviewed by James Robinson.
Patch by Antonio Gomes <agomes@rim.com>

Paraphrasing Andy Estes:
"In <http://trac.webkit.org/changeset/119465> we stopped dispatching fake
mousemove events when scrolling on devices that don't support mice. This event
is dispatched on a timer, so one better would be to not even schedule the
timer (rather than scheduling the timer but making it a no-op).

No new tests, as no functionality has changed. We basically do not
start a timer under a given circumstance instead of fire it, it times out,
and we make the callback no-op when under the given circumstance.

It is still possible though that we have the following scenario:
- Setting::deviceSupportsMouse set as true;
- we fire the timer;
- before its callback gets executed (timed out) the setting gets toggled.
So for sakeness, lets keep the check in both places.

* page/EventHandler.cpp:
(WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
(WebCore::EventHandler::fakeMouseMoveEventTimerFired):

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

7 years ago[chromium] Clean up some unnecessary LayerChromium.h includes
jamesr@google.com [Fri, 8 Jun 2012 20:31:28 +0000 (20:31 +0000)]
[chromium] Clean up some unnecessary LayerChromium.h includes
https://bugs.webkit.org/show_bug.cgi?id=88599

Reviewed by Adam Barth.

Source/WebCore:

Reworks test code slightly to use WebCore interfaces.

* testing/Internals.cpp:
(WebCore::Internals::setBackgroundBlurOnNode):

Source/WebKit/chromium:

Removes unused include, update comment.

* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::platformLayer):
(WebKit::WebMediaPlayerClientImpl::paint):

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

7 years agoWebCore::ImageBuffer.cpp has broken color table code
schenney@chromium.org [Fri, 8 Jun 2012 20:13:59 +0000 (20:13 +0000)]
WebCore::ImageBuffer.cpp has broken color table code
https://bugs.webkit.org/show_bug.cgi?id=80321

Unreviewed Chromium test expectations update after changes to SVG filter color conversion.

Full list of changed files excluded to to very large number.

* platform/chromium/TestExpectations:

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

7 years agoFix JavaScriptCore/ChangeLog goof, where Geoff's change did not have a date + name...
fpizlo@apple.com [Fri, 8 Jun 2012 20:04:47 +0000 (20:04 +0000)]
Fix JavaScriptCore/ChangeLog goof, where Geoff's change did not have a date + name + email header

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

7 years agoPredictedType should be called SpeculatedType
fpizlo@apple.com [Fri, 8 Jun 2012 20:02:57 +0000 (20:02 +0000)]
PredictedType should be called SpeculatedType
https://bugs.webkit.org/show_bug.cgi?id=88477

Unreviewed, fix a renaming goof from http://trac.webkit.org/changeset/119660.
I accidentally renamed ByteCodeParser::getPrediction to
ByteCodeParser::getSpeculation.  That was not the intent. This changes it
back.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::parseBlock):

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

7 years agoExplictly mark stubs called by JIT as being internal
wingo@igalia.com [Fri, 8 Jun 2012 19:57:40 +0000 (19:57 +0000)]
Explictly mark stubs called by JIT as being internal
https://bugs.webkit.org/show_bug.cgi?id=88552

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

* dfg/DFGOSRExitCompiler.h:
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* jit/HostCallReturnValue.h:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
* jit/ThunkGenerators.cpp:
* llint/LLIntSlowPaths.h: Mark a bunch of stubs as being
WTF_INTERNAL.  Change most calls to SYMBOL_STRING_RELOCATION to
LOCAL_REFERENCE, or GLOBAL_REFERENCE in the case of the wrappers
to truly global symbols.
* offlineasm/asm.rb: Generate LOCAL_REFERENCE instead of
SYMBOL_STRING_RELOCATION.

Don't rely on weak pointers for eager CodeBlock finalization
https://bugs.webkit.org/show_bug.cgi?id=88465

Reviewed by Gavin Barraclough.

This is incompatible with lazy weak pointer finalization.

I considered just making CodeBlock finalization lazy-friendly, but it
turns out that the heap is already way up in CodeBlock's business when
it comes to finalization, so I decided to finish the job and move full
responsibility for CodeBlock finalization into the heap.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Maybe this
will build.

* debugger/Debugger.cpp: Updated for rename.

* heap/Heap.cpp:
(JSC::Heap::deleteAllCompiledCode): Renamed for consistency. Fixed a bug
where we would not delete code for a code block that had been previously
jettisoned. I don't know if this happens in practice -- I mostly did
this to improve consistency with deleteUnmarkedCompiledCode.

(JSC::Heap::deleteUnmarkedCompiledCode): New function, responsible for
eager finalization of unmarked code blocks.

(JSC::Heap::collect): Updated for rename. Updated to call
deleteUnmarkedCompiledCode(), which takes care of jettisoned DFG code
blocks too.

(JSC::Heap::addCompiledCode): Renamed, since this points to all code
now, not just functions.

* heap/Heap.h:
(Heap): Keep track of all user code, not just functions. This is a
negligible additional overhead, since most code is function code.

* runtime/Executable.cpp:
(JSC::*::finalize): Removed these functions, since we don't rely on
weak pointer finalization anymore.

(JSC::FunctionExecutable::FunctionExecutable): Moved linked-list stuff
into base class so all executables can be in the list.

(JSC::EvalExecutable::clearCode):
(JSC::ProgramExecutable::clearCode):
(JSC::FunctionExecutable::clearCode): All we need to do is delete our
CodeBlock -- that will delete all of its internal data structures.

(JSC::FunctionExecutable::clearCodeIfNotCompiling): Factored out a helper
function to improve clarity.

* runtime/Executable.h:
(JSC::ExecutableBase): Moved linked-list stuff
into base class so all executables can be in the list.

(JSC::NativeExecutable::create):
(NativeExecutable):
(ScriptExecutable):
(JSC::ScriptExecutable::finishCreation):
(JSC::EvalExecutable::create):
(EvalExecutable):
(JSC::ProgramExecutable::create):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::create): Don't use a finalizer -- the heap
will call us back to destroy our code block.

(JSC::FunctionExecutable::discardCode): Renamed to clearCodeIfNotCompiling()
for clarity.

(JSC::FunctionExecutable::isCompiling): New helper function, for clarity.

(JSC::ScriptExecutable::clearCodeVirtual): New helper function, since
the heap needs to make polymorphic calls to clear code.

* runtime/JSGlobalData.cpp:
(JSC::StackPreservingRecompiler::operator()):
* runtime/JSGlobalObject.cpp:
(JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope): Updated for
renames.

Source/WTF:

* wtf/ExportMacros.h (WTF_INTERNAL, HAVE_INTERNAL_VISIBILITY): New
defines.  Regardless of what the port does about visibility in
general, for code referenced only from assembly it is useful to
give it internal visibility.
* wtf/InlineASM.h: Split SYMBOL_STRING_RELOCATION into
LOCAL_REFERENCE and GLOBAL_REFERENCE; the former will try to avoid
indirection if HAVE(INTERNAL_VISIBILITY).

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

7 years agoIndexedDB: Add regression test to verify that legacy constants have been removed
jsbell@chromium.org [Fri, 8 Jun 2012 19:49:11 +0000 (19:49 +0000)]
IndexedDB: Add regression test to verify that legacy constants have been removed
https://bugs.webkit.org/show_bug.cgi?id=88669

Reviewed by Tony Chang.

* storage/indexeddb/legacy-constants-expected.txt:
* storage/indexeddb/mozilla/create-index-unique-expected.txt:
* storage/indexeddb/mozilla/resources/create-index-unique.js:
(createAndVerifyIndex):
* storage/indexeddb/resources/constants.js:
(test):
* storage/indexeddb/resources/legacy-constants.js:
(testObsoleteConstants):

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

7 years agoFirst wave of Chromium rebaselines after skia rollback. See crbug.com/131829.
ojan@chromium.org [Fri, 8 Jun 2012 19:25:27 +0000 (19:25 +0000)]
First wave of Chromium rebaselines after skia rollback. See crbug.com/131829.

List of changed expected files excluded because it's too long.

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

7 years agoFirst wave of Chromium rebaselines after skia rollback. See crbug.com/131289.
ojan@chromium.org [Fri, 8 Jun 2012 19:19:04 +0000 (19:19 +0000)]
First wave of Chromium rebaselines after skia rollback. See crbug.com/131289.

List of changed expected files excluded because it's too long.

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

7 years ago[V8] Keep TextTrackList alive as long as its owner is alive
arv@chromium.org [Fri, 8 Jun 2012 19:05:18 +0000 (19:05 +0000)]
[V8] Keep TextTrackList alive as long as its owner is alive
https://bugs.webkit.org/show_bug.cgi?id=88541

Reviewed by Adam Barth.

Add a hidden reference from the owner to the text track list.

Source/WebCore:

Covered by existing tests.

* Target.pri: Add V8TextTrackListCustom.cpp.
* UseV8.cmake: Ditto.
* WebCore.gypi: Ditto.
* bindings/v8/V8HiddenPropertyName.h:
(WebCore):
* bindings/v8/custom/V8TextTrackListCustom.cpp: Copied from Source/WebCore/bindings/v8/V8HiddenPropertyName.h.
(WebCore):
(WebCore::toV8): When the wrapper is created add a reference to the owner of the TextTrackList to the TextTrackList.
* html/track/TextTrackList.idl:

LayoutTests:

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed. Rolled DEPS.
jochen@chromium.org [Fri, 8 Jun 2012 18:53:56 +0000 (18:53 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

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

7 years agoAdd app_abi option for DumpRenderTree_apk
commit-queue@webkit.org [Fri, 8 Jun 2012 18:44:37 +0000 (18:44 +0000)]
Add app_abi option for DumpRenderTree_apk
https://bugs.webkit.org/show_bug.cgi?id=88626

Patch by Wei James <james.wei@intel.com> on 2012-06-08
Reviewed by Adam Barth.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

7 years ago[chromium] Accelerated animations should use WebTransformOperations
commit-queue@webkit.org [Fri, 8 Jun 2012 18:41:47 +0000 (18:41 +0000)]
[chromium] Accelerated animations should use WebTransformOperations
https://bugs.webkit.org/show_bug.cgi?id=87686

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-08
Reviewed by James Robinson.

CCTransformKeyframe new owns a WebTransformOperations rather than a
TransformOperations. LayerChromium's API has been changed so that
LayerChromium::addAnimation should take only a CCActiveAnimation.
GraphicsLayerChromium is new responsible for translating to
WebTransformOperations and creating CCActiveAnimations. Tests that use
the public API (that is, they call addAnimation with KeyframeValueList
and Animation arguments) have been moved to GraphicsLayerChromiumTest.

Source/WebCore:

 Unit tests:
    GraphicsLayerChromiumTest.createOpacityAnimation
    GraphicsLayerChromiumTest.createTransformAnimation
    GraphicsLayerChromiumTest.createTransformAnimationWithBigRotation
    GraphicsLayerChromiumTest.createTransformAnimationWithSingularMatrix
    GraphicsLayerChromiumTest.createReversedAnimation
    GraphicsLayerChromiumTest.createAlternatingAnimation
    GraphicsLayerChromiumTest.createReversedAlternatingAnimation

* WebCore.gypi:
* platform/graphics/chromium/AnimationTranslationUtil.cpp: Added.
(WebCore):
(WebCore::toWebTransformOperations):
(WebCore::appendKeyframe):
(WebCore::CCKeyframedTransformAnimationCurve):
(WebCore::createActiveAnimation):
* platform/graphics/chromium/AnimationTranslationUtil.h: Added.
(WebCore):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::addAnimation):
* platform/graphics/chromium/LayerChromium.h:
(WebCore):
(WebCore::LayerChromium::bounds):
(LayerChromium):
* platform/graphics/chromium/LinkHighlight.cpp:
(WebCore::LinkHighlight::LinkHighlight):
* platform/graphics/chromium/cc/CCAnimationCurve.h:
(CCTransformAnimationCurve):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:
(WebCore::CCTransformKeyframe::create):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(WebCore::CCTransformKeyframe::value):
(WebCore::CCTransformKeyframe::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):
* platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:
(CCTransformKeyframe):
(CCKeyframedTransformAnimationCurve):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
(WebCore::CCLayerAnimationController::removeAnimation):
(WebCore):
(WebCore::CCLayerAnimationController::addAnimation):
(WebCore::CCLayerAnimationController::getActiveAnimation):
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):
(WebCore::CCLayerAnimationController::tickAnimations):
* platform/graphics/chromium/cc/CCLayerAnimationController.h:
(CCLayerAnimationControllerClient):
(CCLayerAnimationController):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore::CCLayerImpl::bounds):

Source/WebKit/chromium:

* tests/CCAnimationTestCommon.cpp:
(WebCore::addOpacityTransition):
(WebCore::addAnimatedTransform):
(WebKitTests::FakeTransformTransition::getValue):
* tests/CCAnimationTestCommon.h:
* tests/CCKeyframedAnimationCurveTest.cpp:
* tests/CCLayerAnimationControllerTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):
* tests/GraphicsLayerChromiumTest.cpp:
(MockLayerTreeHostClient):
(WebKitTests):
(MockLayerTreeHost):
(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::~GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::expectTranslateX):
(WebKitTests::TEST_F):
* tests/LayerChromiumTest.cpp:

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

7 years ago[Texmap] Accelerated versions of drop-shadow and blur filters
noam.rosenthal@nokia.com [Fri, 8 Jun 2012 18:39:37 +0000 (18:39 +0000)]
[Texmap] Accelerated versions of drop-shadow and blur filters
https://bugs.webkit.org/show_bug.cgi?id=87695

Reviewed by Kenneth Rohde Christiansen.

Added shaders for blur and drop-shadow effects.
The shaders use sampling of multiple coordinates and averaging them with normal-
distribution to create a fast gaussian blur effect.

Covered by existing tests in css3/filters.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawFiltered):
    Call the prepare function explicitly, with a size argument that's used to calculate
    some of the uniform values.

* platform/graphics/texmap/TextureMapperLayer.cpp:
(WebCore::TextureMapperLayer::intermediateSurfaceRect):
    The outsets of the effect have to be considered when calculating the intermediate rect.
    Otherwise the resulting image is scaled instead of outsetted.

(WebCore::applyFilters):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::StandardFilterProgram::StandardFilterProgram):
    Added the new shaders.

(WebCore::StandardFilterProgram::prepare):
(WebCore::TextureMapperShaderManager::getShaderForFilter):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(StandardFilterProgram):

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

7 years agoTried to fix the build after r119844.
mitz@apple.com [Fri, 8 Jun 2012 18:36:30 +0000 (18:36 +0000)]
Tried to fix the build after r119844.

* bindings/js/GCController.cpp:
(WebCore::GCController::discardAllCompiledCode):

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

7 years ago[Qt] [WK2] API tests randomly assert in WebLayerTreeRenderer::assignImageToLayer
ostapenko.viatcheslav@nokia.com [Fri, 8 Jun 2012 18:34:12 +0000 (18:34 +0000)]
[Qt] [WK2] API tests randomly assert in WebLayerTreeRenderer::assignImageToLayer
https://bugs.webkit.org/show_bug.cgi?id=88667

Reviewed by Noam Rosenthal.

Move deactivation of WebLayerTreeRenderer from LayerTreeHostProxy::purgeBackingStores
to WebLayerTreeRenderer::purgeGLResources. LayerTreeHostProxy::purgeBackingStores is
invoked on main thread after going through call gate and it is too late to deactivate
renderer here, because some update messages are able to go through.
WebLayerTreeRenderer::purgeGLResources is called directly from render node deallocation
and it is right place to deactivate renderer.

* UIProcess/LayerTreeHostProxy.cpp:
(WebKit::LayerTreeHostProxy::purgeBackingStores):
* UIProcess/WebLayerTreeRenderer.cpp:
(WebKit::WebLayerTreeRenderer::purgeGLResources):

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

7 years agoAdd COMPILE_ASSERT to StyledElement to ensure it doesn't accidentally grow larger.
commit-queue@webkit.org [Fri, 8 Jun 2012 18:24:11 +0000 (18:24 +0000)]
Add COMPILE_ASSERT to StyledElement to ensure it doesn't accidentally grow larger.
https://bugs.webkit.org/show_bug.cgi?id=88627

Patch by Mike West <mkwst@chromium.org> on 2012-06-08
Reviewed by Adam Barth.

No change in user-facing behavior.

* dom/StyledElement.cpp:
(WebCore):

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

7 years ago[chromium] Unreviewed, rebaseline platform/chromium-linux/fast/text/chromium-linux...
tony@chromium.org [Fri, 8 Jun 2012 18:19:41 +0000 (18:19 +0000)]
[chromium] Unreviewed, rebaseline platform/chromium-linux/fast/text/chromium-linux-fontconfig-renderstyle.html after skia gamma correction
https://bugs.webkit.org/show_bug.cgi?id=88589

* platform/chromium-linux/platform/chromium-linux/fast/text/chromium-linux-fontconfig-renderstyle-expected.png: Added.
* platform/chromium/TestExpectations:

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

7 years agoDon't rely on weak pointers for eager CodeBlock finalization
ggaren@apple.com [Fri, 8 Jun 2012 18:17:16 +0000 (18:17 +0000)]
Don't rely on weak pointers for eager CodeBlock finalization
https://bugs.webkit.org/show_bug.cgi?id=88465

Reviewed by Gavin Barraclough.

This is incompatible with lazy weak pointer finalization.

I considered just making CodeBlock finalization lazy-friendly, but it
turns out that the heap is already way up in CodeBlock's business when
it comes to finalization, so I decided to finish the job and move full
responsibility for CodeBlock finalization into the heap.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Maybe this
will build.

* debugger/Debugger.cpp: Updated for rename.

* heap/Heap.cpp:
(JSC::Heap::deleteAllCompiledCode): Renamed for consistency. Fixed a bug
where we would not delete code for a code block that had been previously
jettisoned. I don't know if this happens in practice -- I mostly did
this to improve consistency with deleteUnmarkedCompiledCode.

(JSC::Heap::deleteUnmarkedCompiledCode): New function, responsible for
eager finalization of unmarked code blocks.

(JSC::Heap::collect): Updated for rename. Updated to call
deleteUnmarkedCompiledCode(), which takes care of jettisoned DFG code
blocks too.

(JSC::Heap::addCompiledCode): Renamed, since this points to all code
now, not just functions.

* heap/Heap.h:
(Heap): Keep track of all user code, not just functions. This is a
negligible additional overhead, since most code is function code.

* runtime/Executable.cpp:
(JSC::*::finalize): Removed these functions, since we don't rely on
weak pointer finalization anymore.

(JSC::FunctionExecutable::FunctionExecutable): Moved linked-list stuff
into base class so all executables can be in the list.

(JSC::EvalExecutable::clearCode):
(JSC::ProgramExecutable::clearCode):
(JSC::FunctionExecutable::clearCode): All we need to do is delete our
CodeBlock -- that will delete all of its internal data structures.

(JSC::FunctionExecutable::clearCodeIfNotCompiling): Factored out a helper
function to improve clarity.

* runtime/Executable.h:
(JSC::ExecutableBase): Moved linked-list stuff
into base class so all executables can be in the list.

(JSC::NativeExecutable::create):
(NativeExecutable):
(ScriptExecutable):
(JSC::ScriptExecutable::finishCreation):
(JSC::EvalExecutable::create):
(EvalExecutable):
(JSC::ProgramExecutable::create):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::create): Don't use a finalizer -- the heap
will call us back to destroy our code block.

(JSC::FunctionExecutable::discardCode): Renamed to clearCodeIfNotCompiling()
for clarity.

(JSC::FunctionExecutable::isCompiling): New helper function, for clarity.

(JSC::ScriptExecutable::clearCodeVirtual): New helper function, since
the heap needs to make polymorphic calls to clear code.

* runtime/JSGlobalData.cpp:
(JSC::StackPreservingRecompiler::operator()):
* runtime/JSGlobalObject.cpp:
(JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope): Updated for
renames.

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

7 years agoMore than 8 fingers get ignored by touch
rjkroege@chromium.org [Fri, 8 Jun 2012 18:14:55 +0000 (18:14 +0000)]
More than 8 fingers get ignored by touch
https://bugs.webkit.org/show_bug.cgi?id=88359

Reviewed by James Robinson.

* public/WebInputEvent.h: Increase of TouchPoints per TouchEvent from 8 to 12.

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

7 years agoAdded svg/filters/color-space-conversion.svg to the Mac skip list. It has been failin...
mitz@apple.com [Fri, 8 Jun 2012 17:59:49 +0000 (17:59 +0000)]
Added svg/filters/color-space-conversion.svg to the Mac skip list. It has been failing since
its addition in r119841. <http://webkit.org/b/88672> is tracking the failure.

* platform/mac/Skipped:

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

7 years agoWebCore::ImageBuffer.cpp has broken color table code
schenney@chromium.org [Fri, 8 Jun 2012 17:52:00 +0000 (17:52 +0000)]
WebCore::ImageBuffer.cpp has broken color table code
https://bugs.webkit.org/show_bug.cgi?id=80321

Unreviewed Chromium expectations update.

Adding tests that are failing pending a rebaseline.

* platform/chromium/TestExpectations:

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

7 years ago[chromium] Unreviewed, remove css3/flexbox/child-overflow.html from TestExpectations.
tony@chromium.org [Fri, 8 Jun 2012 17:46:56 +0000 (17:46 +0000)]
[chromium] Unreviewed, remove css3/flexbox/child-overflow.html from TestExpectations.
Since bug 77368 is now fixed, this test passes.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: Fix several compiler warnings and errors.
vsevik@chromium.org [Fri, 8 Jun 2012 16:57:08 +0000 (16:57 +0000)]
Web Inspector: Fix several compiler warnings and errors.
https://bugs.webkit.org/show_bug.cgi?id=88660

Reviewed by Pavel Feldman.

Fixed several compiler warnings and errors.
Removed isEmpty method from Object.prototype and made it static method on Object.

* inspector/InjectedScriptExterns.js:
* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel.prototype._detachFrame):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._buildDominatorTree):
* inspector/front-end/utilities.js:
(Object.isEmpty):

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

7 years ago[BlackBerry] Fix assertion failure introduced by bug 87551
commit-queue@webkit.org [Fri, 8 Jun 2012 16:54:24 +0000 (16:54 +0000)]
[BlackBerry] Fix assertion failure introduced by bug 87551
https://bugs.webkit.org/show_bug.cgi?id=88659

Patch by Max Feil <mfeil@rim.com> on 2012-06-08
Reviewed by Antonio Gomes.

The determineRenderSlider() convenience function added in bug
87551 made an assumption that wasn't always true. This didn't
cause a functional error but it caused an assertion failure,
which indicates a problem with the code. PR164142.

No new tests because this case is already covered by ASSERT's.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::determineRenderSlider):

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

7 years ago[GTK] Add API to get the library version to WebKit2 GTK+
carlosgc@webkit.org [Fri, 8 Jun 2012 16:37:48 +0000 (16:37 +0000)]
[GTK] Add API to get the library version to WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=88426

Reviewed by Martin Robinson.

.:

* configure.ac: Generate WebKitVersion.h from WebKitVersion.h.in
file.

Source/WebKit2:

* GNUmakefile.am:
* GNUmakefile.list.am:
* UIProcess/API/gtk/WebKitVersion.cpp: Added.
(webkit_get_major_version):
(webkit_get_minor_version):
(webkit_get_micro_version):
* UIProcess/API/gtk/WebKitVersion.h.in: Added.
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new symbols.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new section
for WebKitVersion.
* UIProcess/API/gtk/tests/GNUmakefile.am:
* UIProcess/API/gtk/tests/TestWebKitVersion.cpp: Added.
(testWebKitVersion):
(testWebKitCheckVersion):
(beforeAll):
(afterAll):
* UIProcess/API/gtk/webkit2.h: Include WebKitVersion.h.

Tools:

* gtk/generate-gtkdoc:
(get_webkit2_options): Add built sources to the list of files, but
ignore enum types and marshallers.

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

7 years agoUnreviewed fix for Chromium TestExpectations.
schenney@chromium.org [Fri, 8 Jun 2012 15:36:25 +0000 (15:36 +0000)]
Unreviewed fix for Chromium TestExpectations.

A file crept into the expectations that has not yet been submitted.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed, fix file permissions.
hausmann@webkit.org [Fri, 8 Jun 2012 15:35:12 +0000 (15:35 +0000)]
Unreviewed, fix file permissions.

* WebCoreSupport/FrameLoaderClientQt.cpp:

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

7 years agoSome overlay scrollbar API calls in ScrollAnimatorMac can lead to an assertion in...
commit-queue@webkit.org [Fri, 8 Jun 2012 15:23:12 +0000 (15:23 +0000)]
Some overlay scrollbar API calls in ScrollAnimatorMac can lead to an assertion in RenderBox::mapAbsoluteToLocalPoint
https://bugs.webkit.org/show_bug.cgi?id=74111

Patch by Ion Rosca <rosca@adobe.com> on 2012-06-08
Reviewed by Simon Fraser.

.:

* ManualTests/scrollbar-crash-on-hide-scrolled-area.html: Added.

Source/WebCore:

Added zero-delay timer for AppKit scroll notification that can be called during layout.
Manual test: ManualTests/scrollbar-crash-on-hide-scrolled-area.html
This assertion does not fire when running layout tests. It can be easly reproduced using a debug build by loading the manual test page.

* platform/mac/ScrollAnimatorMac.h:
(ScrollAnimatorMac):
* platform/mac/ScrollAnimatorMac.mm:
(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
(WebCore::ScrollAnimatorMac::sendContentAreaScrolledSoon):
(WebCore):
(WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired):

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

7 years agoAdding few already supported features to the FeatureSet in DOMImplementation
reni@webkit.org [Fri, 8 Jun 2012 15:20:09 +0000 (15:20 +0000)]
Adding few already supported features to the FeatureSet in DOMImplementation
https://bugs.webkit.org/show_bug.cgi?id=86482

Source/WebCore:

Text, Filter and View features are already implemented but they
are not added to the SVG11 feature set. This is corrected in this patch.

Reviewed by Nikolas Zimmermann.

No new testcase is needed because we already have one what checks the svg features via
DOMImplementation (svg/custom/svg-features.html).

* dom/DOMImplementation.cpp:
(WebCore::isSVG11Feature):

LayoutTests:

Reviewed by Nikolas Zimmermann.

* platform/qt-5.0/svg/custom/svg-features-expected.txt:
* platform/qt/svg/custom/svg-features-expected.txt:
* svg/custom/svg-features-expected.txt:

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

7 years agoLayout Test pointer-lock/pointerlockchange-pointerlockerror-events.html is failing
scheib@chromium.org [Fri, 8 Jun 2012 15:13:32 +0000 (15:13 +0000)]
Layout Test pointer-lock/pointerlockchange-pointerlockerror-events.html is failing
https://bugs.webkit.org/show_bug.cgi?id=88604

Reviewed by Kent Tamura.

Tools:

DumpRenderTree fixed to not call didLosePointerLock if pointer is not currently locked.
Fixes debug only assert crash in pointer-lock/pointerlockchange-pointerlockerror-events.html test.

* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::requestPointerUnlock):

LayoutTests:

Removed CRASH expectation.
Test is no longer crashing with this fix to DumpRenderTree.

* platform/chromium/TestExpectations:

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

7 years agoWebCore::ImageBuffer.cpp has broken color table code
schenney@chromium.org [Fri, 8 Jun 2012 15:01:00 +0000 (15:01 +0000)]
WebCore::ImageBuffer.cpp has broken color table code
https://bugs.webkit.org/show_bug.cgi?id=80321

Reviewed by Dirk Schulze.

Source/WebCore:

The code in ImageBuffer::transformColorSpace had two problems that are
fixed by this patch.

First, it was using member variables for data
that is static constant. This is incredibly wasteful, as every
ImageBuffer that is created (and we make a lot of them) gets its own
copy of the LUT and the table is initialized again and again. The
patch replaces this with a static local, with lazy evaluation, in
the method that uses the tables.

Second, the code for filling the table was mapping 255 to 254, thus
reducing the intensity and alpha of every image it pushed through a
color transform.

Test: svg/filters/color-space-conversion.svg

* platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::transformColorSpace):
* platform/graphics/ImageBuffer.h:
(ImageBuffer):

LayoutTests:

Temporarily marking Chromium tests expected to fail as a result of this patch. And a new test.

* platform/chromium/TestExpectations:
* svg/filters/color-space-conversion.svg:
* svg/filters/color-space-conversion-expected.svg:

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

7 years agoWeb Inspector: Better labels positioning on the memory pie chart
commit-queue@webkit.org [Fri, 8 Jun 2012 14:44:04 +0000 (14:44 +0000)]
Web Inspector: Better labels positioning on the memory pie chart
https://bugs.webkit.org/show_bug.cgi?id=88652

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-06-08
Reviewed by Vsevolod Vlasov.

* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.NativeMemoryPieChart.prototype._paint.paintPercentAndLabel):
(WebInspector.NativeMemoryPieChart.prototype._paint):

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

7 years agoTried to fix the Snow Leopard build after r119806.
mitz@apple.com [Fri, 8 Jun 2012 14:30:49 +0000 (14:30 +0000)]
Tried to fix the Snow Leopard build after r119806.

* WebKit2Prefix.h:

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Fri, 8 Jun 2012 14:23:16 +0000 (14:23 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

7 years ago[Qt] fast/viewport/viewport-133.html fails
qi.2.zhang@nokia.com [Fri, 8 Jun 2012 14:11:31 +0000 (14:11 +0000)]
[Qt] fast/viewport/viewport-133.html fails
https://bugs.webkit.org/show_bug.cgi?id=80689

Since https://bugs.webkit.org/show_bug.cgi?id=88047 remove this
test case, remove it from skip list.

Reviewed by Laszlo Gombos.

* platform/qt/Skipped:

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

7 years agoWeb Inspector: Annotate timeline records with a frame identifier
caseq@chromium.org [Fri, 8 Jun 2012 13:07:18 +0000 (13:07 +0000)]
Web Inspector: Annotate timeline records with a frame identifier
https://bugs.webkit.org/show_bug.cgi?id=86406

Patch by Bryan McQuade <bmcquade@google.com> on 2012-06-08
Reviewed by Vsevolod Vlasov.

Source/WebCore:

Tests: Updated existing layout tests.

* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorInstrumentation.cpp:
(WebCore::frameForScriptExecutionContext):
(WebCore):
(WebCore::InspectorInstrumentation::didScheduleResourceRequestImpl):
(WebCore::InspectorInstrumentation::didInstallTimerImpl):
(WebCore::InspectorInstrumentation::didRemoveTimerImpl):
(WebCore::InspectorInstrumentation::willCallFunctionImpl):
(WebCore::InspectorInstrumentation::willChangeXHRReadyStateImpl):
(WebCore::InspectorInstrumentation::willDispatchEventImpl):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
(WebCore::InspectorInstrumentation::willEvaluateScriptImpl):
(WebCore::InspectorInstrumentation::willFireTimerImpl):
(WebCore::InspectorInstrumentation::willLayoutImpl):
(WebCore::InspectorInstrumentation::willLoadXHRImpl):
(WebCore::InspectorInstrumentation::willPaintImpl):
(WebCore::InspectorInstrumentation::willRecalculateStyleImpl):
(WebCore::InspectorInstrumentation::willSendRequestImpl):
(WebCore::InspectorInstrumentation::willReceiveResourceDataImpl):
(WebCore::InspectorInstrumentation::willReceiveResourceResponseImpl):
(WebCore::InspectorInstrumentation::didFinishLoadingImpl):
(WebCore::InspectorInstrumentation::didFailLoadingImpl):
(WebCore::InspectorInstrumentation::domContentLoadedEventFiredImpl):
(WebCore::InspectorInstrumentation::loadEventFiredImpl):
(WebCore::InspectorInstrumentation::willWriteHTMLImpl):
(WebCore::InspectorInstrumentation::didRequestAnimationFrameImpl):
(WebCore::InspectorInstrumentation::didCancelAnimationFrameImpl):
(WebCore::InspectorInstrumentation::willFireAnimationFrameImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didScheduleResourceRequest):
(WebCore::InspectorInstrumentation::didInstallTimer):
(WebCore::InspectorInstrumentation::didRemoveTimer):
(WebCore::InspectorInstrumentation::willCallFunction):
(WebCore::InspectorInstrumentation::willChangeXHRReadyState):
(WebCore::InspectorInstrumentation::willDispatchEvent):
(WebCore::InspectorInstrumentation::willEvaluateScript):
(WebCore::InspectorInstrumentation::willFireTimer):
(WebCore::InspectorInstrumentation::willLayout):
(WebCore::InspectorInstrumentation::willLoadXHR):
(WebCore::InspectorInstrumentation::willPaint):
(WebCore::InspectorInstrumentation::willRecalculateStyle):
(WebCore::InspectorInstrumentation::willReceiveResourceData):
(WebCore::InspectorInstrumentation::willReceiveResourceResponse):
(WebCore::InspectorInstrumentation::willWriteHTML):
(WebCore::InspectorInstrumentation::didRequestAnimationFrame):
(WebCore::InspectorInstrumentation::didCancelAnimationFrame):
(WebCore::InspectorInstrumentation::willFireAnimationFrame):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::pushGCEventRecords):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::willCallFunction):
(WebCore::InspectorTimelineAgent::willDispatchEvent):
(WebCore::InspectorTimelineAgent::willLayout):
(WebCore::InspectorTimelineAgent::willRecalculateStyle):
(WebCore::InspectorTimelineAgent::willPaint):
(WebCore::InspectorTimelineAgent::willComposite):
(WebCore::InspectorTimelineAgent::willWriteHTML):
(WebCore::InspectorTimelineAgent::didInstallTimer):
(WebCore::InspectorTimelineAgent::didRemoveTimer):
(WebCore::InspectorTimelineAgent::willFireTimer):
(WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
(WebCore::InspectorTimelineAgent::willLoadXHR):
(WebCore::InspectorTimelineAgent::willEvaluateScript):
(WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
(WebCore::InspectorTimelineAgent::willSendResourceRequest):
(WebCore::InspectorTimelineAgent::willReceiveResourceData):
(WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
(WebCore::InspectorTimelineAgent::didFinishLoadingResource):
(WebCore::InspectorTimelineAgent::didTimeStamp):
(WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
(WebCore::InspectorTimelineAgent::didMarkLoadEvent):
(WebCore::InspectorTimelineAgent::didRequestAnimationFrame):
(WebCore::InspectorTimelineAgent::didCancelAnimationFrame):
(WebCore::InspectorTimelineAgent::willFireAnimationFrame):
(WebCore::InspectorTimelineAgent::addRecordToTimeline):
(WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
(WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendRecord):
(WebCore::InspectorTimelineAgent::pushCurrentRecord):
(WebCore::InspectorTimelineAgent::pushCancelableRecord):
(WebCore::InspectorTimelineAgent::commitCancelableRecords):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(WebCore::InspectorTimelineAgent::create):
(InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
(TimelineRecordEntry):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.isEventDivider):
(WebInspector.TimelinePresentationModel.Record):

LayoutTests:

* inspector/timeline/timeline-animation-frame-expected.txt:
* inspector/timeline/timeline-dom-content-loaded-event-expected.txt:
* inspector/timeline/timeline-event-dispatch-expected.txt:
* inspector/timeline/timeline-injected-script-eval-expected.txt:
* inspector/timeline/timeline-layout-expected.txt:
* inspector/timeline/timeline-load-event-expected.txt:
* inspector/timeline/timeline-network-resource-expected.txt:
* inspector/timeline/timeline-paint-expected.txt:
* inspector/timeline/timeline-parse-html-expected.txt:
* inspector/timeline/timeline-recalculate-styles-expected.txt:
* inspector/timeline/timeline-script-tag-1-expected.txt:
* inspector/timeline/timeline-script-tag-2-expected.txt:
* inspector/timeline/timeline-test.js:
* inspector/timeline/timeline-timer-expected.txt:
* platform/chromium/inspector/timeline/timeline-animation-frame-expected.txt:
* platform/chromium/inspector/timeline/timeline-event-dispatch-expected.txt:
* platform/chromium/inspector/timeline/timeline-layout-expected.txt:
* platform/chromium/inspector/timeline/timeline-network-resource-expected.txt:
* platform/chromium/inspector/timeline/timeline-paint-expected.txt:
* platform/chromium/inspector/timeline/timeline-parse-html-expected.txt:
* platform/chromium/inspector/timeline/timeline-timer-expected.txt:

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

7 years agoUnreviewed update for chromium test expectations.
loislo@chromium.org [Fri, 8 Jun 2012 12:59:12 +0000 (12:59 +0000)]
Unreviewed update for chromium test expectations.
viewspec-parser-*.html were marked as SLOW.

* platform/chromium/TestExpectations:
BUGWK87772 SLOW : svg/dom/viewspec-parser-1.html = PASS
BUGWK87772 SLOW : svg/dom/viewspec-parser-2.html = PASS
BUGWK87772 SLOW : svg/dom/viewspec-parser-3.html = PASS
BUGWK87772 SLOW : svg/dom/viewspec-parser-4.html = PASS
BUGWK87772 SLOW : svg/dom/viewspec-parser-5.html = PASS

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

7 years agoUnreviewed, rolling out r119821.
kinuko@chromium.org [Fri, 8 Jun 2012 12:46:06 +0000 (12:46 +0000)]
Unreviewed, rolling out r119821.
http://trac.webkit.org/changeset/119821
https://bugs.webkit.org/show_bug.cgi?id=88648

Seems to have regression on Mac (Requested by kinuko on
#webkit).

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

* fileapi/File.cpp:
(WebCore::File::File):
(WebCore::File::lastModifiedDate):
(WebCore::File::lastModifiedDateForBinding):
(WebCore):
(WebCore::File::captureSnapshot):
* fileapi/File.h:
(File):
* fileapi/File.idl:
* platform/FileMetadata.h:
(WebCore::FileMetadata::FileMetadata):
* platform/FileSystem.h:
* platform/chromium/support/WebHTTPBody.cpp:
(WebKit::WebHTTPBody::elementAt):
* platform/network/BlobData.cpp:
(WebCore):
* platform/network/BlobData.h:
(BlobDataItem):
(WebCore::BlobDataItem::BlobDataItem):
* platform/network/FormData.cpp:
(WebCore::FormData::appendFile):
* platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::advanceCurrentStream):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::blobIsOutOfDate):

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

7 years agoUnreviewed, removing duplicated entries in gyp.
kinuko@chromium.org [Fri, 8 Jun 2012 12:29:29 +0000 (12:29 +0000)]
Unreviewed, removing duplicated entries in gyp.

* WebCore.gypi:

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

7 years agoMicrodata: An element with an empty itemprop='' should not get listed in the .propert...
arko@motorola.com [Fri, 8 Jun 2012 12:16:48 +0000 (12:16 +0000)]
Microdata: An element with an empty itemprop='' should not get listed in the .properties list.
https://bugs.webkit.org/show_bug.cgi?id=88235

Reviewed by Ryosuke Niwa.

Source/WebCore:

As per the specification change http://html5.org/r/6854, an element should be listed in .properties
if the elelement has an attribute itemprop specified and the element has one or more property names.

Test: fast/dom/MicroData/element-with-empty-itemprop.html

* html/HTMLPropertiesCollection.cpp:
(WebCore::HTMLPropertiesCollection::itemAfter):

LayoutTests:

* fast/dom/MicroData/element-with-empty-itemprop-expected.txt: Added.
* fast/dom/MicroData/element-with-empty-itemprop.html: Added.

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

7 years agoFile::lastModifiedDate should use NaN or separate boolean flag for null Date value
kinuko@chromium.org [Fri, 8 Jun 2012 11:50:03 +0000 (11:50 +0000)]
File::lastModifiedDate should use NaN or separate boolean flag for null Date value
https://bugs.webkit.org/show_bug.cgi?id=87826

Reviewed by Kent Tamura.

Test: http/tests/local/fileapi/file-last-modified-after-delete.html

* fileapi/File.cpp:
(WebCore::File::File):
(WebCore::File::captureSnapshot):
(WebCore::File::lastModifiedDate):
(WebCore::File::lastModifiedDateForBinding): Removed.
* fileapi/File.h:
(File):
* fileapi/File.idl:
* platform/FileMetadata.h:
(WebCore::FileMetadata::FileMetadata):
* platform/FileSystem.h:
* platform/chromium/support/WebHTTPBody.cpp:
(WebKit::WebHTTPBody::elementAt):
* platform/network/BlobData.h:
(WebCore::BlobDataItem::doNotCheckFileChange): Removed.
* platform/network/BlobData.cpp:
* platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::advanceCurrentStream):
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::blobIsOutOfDate):

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

7 years ago[EFL] Unskip passing sputnik tests
commit-queue@webkit.org [Fri, 8 Jun 2012 11:44:12 +0000 (11:44 +0000)]
[EFL] Unskip passing sputnik tests
https://bugs.webkit.org/show_bug.cgi?id=88641

Unreviewed, unskip sputnik tests which are passing now.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-08

* platform/efl/TestExpectations:

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

7 years agoUnreviewed GTK gardening, removing crash expectations for two plugins
zandobersek@gmail.com [Fri, 8 Jun 2012 11:11:49 +0000 (11:11 +0000)]
Unreviewed GTK gardening, removing crash expectations for two plugins
tests that were fixed after LLInt was enabled for the Gtk port in r119593.

* platform/gtk/TestExpectations:

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

7 years agoSpeech JavaScript API: mock WebSpeechRecognizer for DumpRenderTree
hans@chromium.org [Fri, 8 Jun 2012 11:02:27 +0000 (11:02 +0000)]
Speech JavaScript API: mock WebSpeechRecognizer for DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=87976

Reviewed by Kent Tamura.

Tools:

Provide a mock implementation of WebSpeechRecognizer for
DumpRenderTree. This will allow better testing of the API via layout
tests.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::LayoutTestController):
(LayoutTestController::addMockSpeechRecognitionResult):
* DumpRenderTree/chromium/LayoutTestController.h:
(LayoutTestController):
* DumpRenderTree/chromium/MockWebSpeechRecognizer.cpp: Added.
(MockWebSpeechRecognizer::create):
(MockWebSpeechRecognizer::start):
(MockWebSpeechRecognizer::stop):
(MockWebSpeechRecognizer::abort):
(MockWebSpeechRecognizer::MockWebSpeechRecognizer):
(MockWebSpeechRecognizer::~MockWebSpeechRecognizer):
(MockWebSpeechRecognizer::ResultTask::runIfValid):
* DumpRenderTree/chromium/MockWebSpeechRecognizer.h: Added.
(WebKit):
(MockWebSpeechRecognizer):
(MockWebSpeechRecognizer::addMockResult):
(MockWebSpeechRecognizer::taskList):
(ClientCallTask):
(MockWebSpeechRecognizer::ClientCallTask::ClientCallTask):
(ResultTask):
(MockWebSpeechRecognizer::ResultTask::ResultTask):
(NoMatchTask):
(MockWebSpeechRecognizer::NoMatchTask::NoMatchTask):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::speechRecognizer):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):
(WebViewHost::mockSpeechRecognizer):

LayoutTests:

Add a layout test using the new mock, pushing a mock result through
and checking that events fire correctly.

* fast/speech/scripted/speechrecognition-basics-expected.txt: Added.
* fast/speech/scripted/speechrecognition-basics.html: Added.

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

7 years agoUnreviewed GTK gardening after r119795, adding separate test expectations
zandobersek@gmail.com [Fri, 8 Jun 2012 10:41:47 +0000 (10:41 +0000)]
Unreviewed GTK gardening after r119795, adding separate test expectations
for jquery/core.html - the test is crashing on debug builds and failing
with a text diff on release builds.

* platform/gtk/TestExpectations:

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

7 years agoMove form-related functions of Document to FormController
tkent@chromium.org [Fri, 8 Jun 2012 09:53:52 +0000 (09:53 +0000)]
Move form-related functions of Document to FormController
https://bugs.webkit.org/show_bug.cgi?id=88497

Reviewed by Hajime Morita.

A lot of files depend on Document.h. We had to build many files when we
touched form-related features in Document.h or
CheckedRadioButtons.h. This patch reduces such pain.

No new tests. Just a refactoring.

* CMakeLists.txt: Add FormController.cpp and/or FormController.h.
* GNUmakefile.list.am: ditto.
* Target.pri: ditto.
* WebCore.gypi: ditto.
* WebCore.vcproj/WebCore.vcproj: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.

* dom/Document.cpp: Removed form-releated features except the followings.
(WebCore::Document::formController): Accessor for a FormController.
(WebCore::Document::formElementsState):
Just returns FormController::formElementsState().
We don't create new FormController.
(WebCore::Document::setStateForNewFormElements):
Just returns FormController::setStateForNewFormElements().
We don't create new FormController if the specified vector is empty.
* dom/Document.h:
Moved form-related functions to FormController.

* html/FormController.cpp: Added. Moved from Document.cpp.
* html/FormController.h: Added. Moved from Document.h

* html/FormAssociatedElement.cpp: Use Document::formController().
(WebCore::FormAssociatedElement::didMoveToNewDocument):
(WebCore::FormAssociatedElement::insertedInto):
(WebCore::FormAssociatedElement::removedFrom):
(WebCore::FormAssociatedElement::formAttributeChanged):
* html/HTMLFormControlElementWithState.cpp: Use Document::formController().
(WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
(WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
(WebCore::HTMLFormControlElementWithState::didMoveToNewDocument):
(WebCore::HTMLFormControlElementWithState::finishParsingChildren):
* html/HTMLFormElement.cpp: Use Document::formController().
(WebCore::HTMLFormElement::didNotifyDescendantInsertions):
(WebCore::HTMLFormElement::removedFrom):
* html/HTMLInputElement.cpp: Use Document::formController().
(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::didMoveToNewDocument):
(WebCore::HTMLInputElement::checkedRadioButtons):
* html/HTMLInputElement.h:
Declare CheckedRadioButtons. It was provided by Document.h.
* html/parser/HTMLConstructionSite.h:
Declare HTMLFormElement. It was provided by Document.h

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

7 years agoAdd FileSystem item to storage tree.
commit-queue@webkit.org [Fri, 8 Jun 2012 09:50:26 +0000 (09:50 +0000)]
Add FileSystem item to storage tree.
https://bugs.webkit.org/show_bug.cgi?id=72691

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-08
Reviewed by Vsevolod Vlasov.

Source/WebCore:

* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* inspector/compile-front-end.py:
* inspector/front-end/FileSystemModel.js: Added.
* inspector/front-end/Images/fileSystem.png: Added.
* inspector/front-end/ResourcesPanel.js:
(WebInspector.FileSystemListTreeElement):
(WebInspector.FileSystemListTreeElement.prototype.onexpand):
(WebInspector.FileSystemListTreeElement.prototype.onattach):
(WebInspector.FileSystemListTreeElement.prototype._handleContextMenuEvent):
(WebInspector.FileSystemListTreeElement.prototype._fileSystemAdded):
(WebInspector.FileSystemListTreeElement.prototype._fileSystemRemoved):
(WebInspector.FileSystemListTreeElement.prototype._fileSystemTreeElementByName):
(WebInspector.FileSystemListTreeElement.prototype._refreshFileSystem):
(WebInspector.FileSystemTreeElement):
(WebInspector.FileSystemTreeElement.prototype.get fileSystemName):
(WebInspector.FileSystemTreeElement.prototype.get itemURL):
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/WebKit.qrc:
* inspector/front-end/inspector.html:
* inspector/front-end/resourcesPanel.css:
(.file-system-storage-tree-item .icon):
* inspector/front-end/utilities.js:

Source/WebKit/chromium:

* src/js/DevTools.js:

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

7 years agoREGRESSION r119802: Remove unnecessary ASSERT(!m_deletionHasBegun) from Document.h
haraken@chromium.org [Fri, 8 Jun 2012 09:19:39 +0000 (09:19 +0000)]
REGRESSION r119802: Remove unnecessary ASSERT(!m_deletionHasBegun) from Document.h
https://bugs.webkit.org/show_bug.cgi?id=88528

Reviewed by Ryosuke Niwa.

m_deletionHasBegun should become true just before 'delete this'.

No tests. No change in behavior.

* dom/Document.h:
(WebCore::Document::guardRef):
(WebCore::Document::guardDeref):

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

7 years ago[Chromium] Re-enable SHARED_WORKERS for Android until a build fix has been resolved.
peter@chromium.org [Fri, 8 Jun 2012 09:09:23 +0000 (09:09 +0000)]
[Chromium] Re-enable SHARED_WORKERS for Android until a build fix has been resolved.
https://bugs.webkit.org/show_bug.cgi?id=88637

Unreviewed build fix.

Linking content_shell on the Chromium side fails due to an unresolved
call to WebSharedWorker::create(). Since this blocks WebKit rolls,
temporarily re-enable the feature until this has been solved.

* features.gypi:

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

7 years ago[chromium] Run optimize-baselines over canvas-toDataURL-webp.html results
noel.gordon@gmail.com [Fri, 8 Jun 2012 08:29:43 +0000 (08:29 +0000)]
[chromium] Run optimize-baselines over canvas-toDataURL-webp.html results

Unreviewed test expectations update.

* platform/chromium-mac/fast/canvas/canvas-toDataURL-webp-expected.png: Copied from LayoutTests/platform/chromium-mac-snowleopard/fast/canvas/canvas-toDataURL-webp-expected.png.
* platform/chromium-mac/platform/chromium/virtual/gpu/fast/canvas/canvas-toDataURL-webp-expected.png: Renamed from LayoutTests/platform/chromium-mac-snowleopard/fast/canvas/canvas-toDataURL-webp-expected.png.

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

7 years agoHTTP 204 No Content responses shouldn't trigger MIME type warnings in the web inspector
abarth@webkit.org [Fri, 8 Jun 2012 08:14:41 +0000 (08:14 +0000)]
HTTP 204 No Content responses shouldn't trigger MIME type warnings in the web inspector
https://bugs.webkit.org/show_bug.cgi?id=88603

Reviewed by Pavel Feldman.

A 204 response doesn't have an entity body, so its MIME type is kind of
meaningless.  We shouldn't spam the console with a warning about MIME
types.

* inspector/front-end/NetworkManager.js:
(WebInspector.NetworkDispatcher.prototype._mimeTypeIsConsistentWithType):

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

7 years ago[Qt] Unreviewed gardening. Skip tests using disabled SHADOW_DOM feature on Qt.
kkristof@inf.u-szeged.hu [Fri, 8 Jun 2012 08:01:27 +0000 (08:01 +0000)]
[Qt] Unreviewed gardening. Skip tests using disabled SHADOW_DOM feature on Qt.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-06-08

* platform/qt/Skipped:

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

7 years ago[Forms] Drop StepRange::NumberWithDecimalPlacesOrMissing
yosin@chromium.org [Fri, 8 Jun 2012 07:51:36 +0000 (07:51 +0000)]
[Forms] Drop StepRange::NumberWithDecimalPlacesOrMissing
https://bugs.webkit.org/show_bug.cgi?id=88621

Reviewed by Kent Tamura.

This patch changes NumberWithDecimalPlacesOrMissing to NumberWithDecimalPlaces.
We use NaN as indication of having value or not.

No new tests, because this patch doesn't change behavior.

* html/DateInputType.cpp:
(WebCore::DateInputType::createStepRange): Replace NumberWithDecimalPlacesOrMissing to NumberWithDecimalPlaces.
* html/DateTimeInputType.cpp:
(WebCore::DateTimeInputType::createStepRange): ditto.
* html/DateTimeLocalInputType.cpp:
(WebCore::DateTimeLocalInputType::createStepRange): ditto.
* html/MonthInputType.cpp:
(WebCore::MonthInputType::createStepRange): ditto.
* html/NumberInputType.cpp:
(WebCore::NumberInputType::createStepRange): ditto.
* html/RangeInputType.cpp:
(WebCore::RangeInputType::createStepRange): ditto.
* html/StepRange.cpp:
(WebCore::StepRange::StepRange): Checks value is finite or not.
(WebCore::StepRange::parseStep): Replace NumberWithDecimalPlacesOrMissing to NumberWithDecimalPlaces.
* html/StepRange.h:
(StepRange): Removed NumberWithDecimalPlacesOrMissing.
* html/TimeInputType.cpp:
(WebCore::TimeInputType::createStepRange):  NumberWithDecimalPlacesOrMissing to NumberWithDecimalPlaces.
* html/WeekInputType.cpp:
(WebCore::WeekInputType::createStepRange): ditto.

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

7 years agoUnreviewed. Fixed a comment, pointed out by ap@.
haraken@chromium.org [Fri, 8 Jun 2012 07:45:52 +0000 (07:45 +0000)]
Unreviewed. Fixed a comment, pointed out by ap@.

* platform/TreeShared.h:
(WebCore):

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

7 years ago[chromium] WEBP image blue and red color channels reversed on Android
noel.gordon@gmail.com [Fri, 8 Jun 2012 07:42:40 +0000 (07:42 +0000)]
[chromium] WEBP image blue and red color channels reversed on Android
https://bugs.webkit.org/show_bug.cgi?id=88613

Reviewed by Kent Tamura.

No new tests. Covered by test fast/images/webp-image-decoding.html though I'm
not sure where/how the Androids run their layout tests.

* platform/image-decoders/webp/WEBPImageDecoder.cpp:
(outputMode): Detect little-endian Skia with a blue pixel shift (aka Android)
which seems to be the way for them per bug 75861.

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

7 years ago[WebKit2] Move Mac-specific bits from config.h to WebKit2Prefix.h
aestes@apple.com [Fri, 8 Jun 2012 07:29:47 +0000 (07:29 +0000)]
[WebKit2] Move Mac-specific bits from config.h to WebKit2Prefix.h
https://bugs.webkit.org/show_bug.cgi?id=88625

Reviewed by Dan Bernstein.

Since the Mac supports prefix headers, there is no point in having
Mac-specific code in WebKit2's config.h. Move it to WebKit2Prefix.h.

* WebKit2Prefix.h:
* config.h:

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

7 years agoFixed fast/files/read-blob-async.html failing after r119791.
mitz@apple.com [Fri, 8 Jun 2012 07:27:20 +0000 (07:27 +0000)]
Fixed fast/files/read-blob-async.html failing after r119791.

* fast/files/resources/read-blob-test-cases.js:
(testReadingSingleArrayBufferBlob):
(testReadingSlicedArrayBufferBlob):
(testReadingMultipleArrayBufferBlob):
(testReadingHybridBlob):
(testReadingSlicedHybridBlob):
(testReadingTripleSlicedHybridBlob):

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

7 years ago[chromium] New virtual GPU canvas-toDataURL-webp.html results after r119787
noel.gordon@gmail.com [Fri, 8 Jun 2012 07:22:10 +0000 (07:22 +0000)]
[chromium] New virtual GPU canvas-toDataURL-webp.html results after r119787

Unreviewed test expectations update.

* platform/chromium-win/platform/chromium/virtual/gpu/fast/canvas/canvas-toDataURL-webp-expected.png: Added.

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

7 years agoRemove the assertion that has been moved to TreeScope after r119802.
rniwa@webkit.org [Fri, 8 Jun 2012 07:04:34 +0000 (07:04 +0000)]
Remove the assertion that has been moved to TreeScope after r119802.

* dom/Document.cpp:
(WebCore::Document::removedLastRef):

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

7 years agoReduce Node object size from 72 byte to 64 byte
haraken@chromium.org [Fri, 8 Jun 2012 06:28:12 +0000 (06:28 +0000)]
Reduce Node object size from 72 byte to 64 byte
https://bugs.webkit.org/show_bug.cgi?id=88528

Reviewed by Ryosuke Niwa.

.:

Added a symbol for callRemovedLastRef().

* Source/autotools/symbols.filter:

Source/WebCore:

This patch removes all virtual methods from TreeShared.h,
by which we can remove a virtual method table pointer (8 byte
in a 64bit architechture) from each Node object. Consequently,
this patch reduces the Node object size from 72 byte to 64 byte.

e.g. The HTML spec (http://www.whatwg.org/specs/web-apps/current-work/)
contains 325640 Node objects. Thus this patch saves 325640 * 8 byte = 2.6 MB.

e.g. sizeof(Element) is reduced from 104 byte to 96 byte.

- In multiple inheritance, a virtual method table pointer is allocated
for each base class that has virtual methods. For example, for
'class A : public B, C {};' where B and C have virtual methods,
two virtual method table pointers are allocated for each A object.
In this patch, A = Node, B = EventTarget, and C = TreeShared.
By removing the virtual methods from TreeShared, we can save the virtual
method table pointer for TreeShared. 8 byte saving.

- Node and SVGElementInstance are the only classes that inherit TreeShared.

- This patch removes virtual TreeShared::removeLastRef() and implements
virtual Node::removeLastRef() and virtual SVGElementInstance::removeLastRef().
Node::removeLastRef() calls 'delete this' for 'this' of type Node*,
and SVGElementInstance::removeLastRef() calls 'delete this' for 'this' of type
SVGElementInstance*.

- This patch removes the virtual destructor of TreeShared. This removal is safe
because (1) no one calls 'delete this' for 'this' of type TreeShared*,
and (2) both Node and SVGElementInstance have virtual destructor.

No change in behavior. Confirm no regression in existing tests.

* dom/ContainerNode.cpp:
(WebCore::callRemovedLastRef):
(WebCore):
* dom/Node.h:
(WebCore::Node::removedLastRef):
* platform/TreeShared.h:
(WebCore):
(TreeShared):
(WebCore::TreeShared::deref):
* svg/SVGElementInstance.cpp:
(WebCore::callRemovedLastRef):
(WebCore):
* svg/SVGElementInstance.h:
(WebCore::SVGElementInstance::removedLastRef):

* WebCore.order: Added a symbol for callRemovedLastRef().
* WebCore.exp.in: Ditto.

Source/WebKit/mac:

Added a symbol for callRemovedLastRef().

* WebKit.order:

Source/WebKit2:

Added a symbol for callRemovedLastRef().

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

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

7 years ago[chromium] Update canvas-toDataURL-webp.html results after r119787
noel.gordon@gmail.com [Fri, 8 Jun 2012 06:22:26 +0000 (06:22 +0000)]
[chromium] Update canvas-toDataURL-webp.html results after r119787

Unreviewed test expectations update.

* platform/chromium/TestExpectations:
* platform/chromium-win/fast/canvas/canvas-toDataURL-webp-expected.png: Added.

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

7 years ago[WebKit2] Explicitly include CoreFoundation.h in config.h
aestes@apple.com [Fri, 8 Jun 2012 05:48:07 +0000 (05:48 +0000)]
[WebKit2] Explicitly include CoreFoundation.h in config.h
https://bugs.webkit.org/show_bug.cgi?id=88619

Reviewed by Dan Bernstein.

WebKit2 relies (probably unintentionally) on CoreFoundation.h being
included by CoreGraphics.h (via CGSession.h), but some versions of
CoreGraphics headers don't include CoreFoundation.h. WebKit2 should
include it explicitly in config.h.

* config.h: Import CoreFoundation.h.

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

7 years agoShadowRoot needs resetStyleInheritance
commit-queue@webkit.org [Fri, 8 Jun 2012 05:29:01 +0000 (05:29 +0000)]
ShadowRoot needs resetStyleInheritance
https://bugs.webkit.org/show_bug.cgi?id=84048

Source/WebCore:

Added resetStyleInheritance API to ShadowRoot. The spec URL is
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#shadow-root-attributes
To implement the API, modified StyleResolver to use empty style
instead of parent style if resetStyleInheritance is true,
and a node and its parent node are placed in different shadow trees.

Patch by Takashi Sakamoto <tasak@google.com> on 2012-06-07
Reviewed by Hajime Morita.

Test: fast/dom/shadow/shadow-root-resetStyleInheritance.html
      fast/dom/shadow/shadow-root-resetStyleInheritance-expected.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::initForStyleResolve):
Set m_parentStyle to NULL when resetStyleInheritance.
(WebCore::StyleResolver::documentSettings):
Added a new method to obtain current document's settings.
(WebCore::StyleResolver::initializeFontStyle):
Initialize m_style by using document settings. Its code was move
from the code initializing font style in applyProperty.
(WebCore::StyleResolver::styleForElement):
Initialize font style if m_parentStyle is NULL. The old code just
used style() and don't touch font style. The new code uses the above
initializeFontStyle.
(WebCore::StyleResolver::applyProperty):
Moved a code for initializing font style as "initial" to
a new method: initializeFontStyle and modified to use the method.
Modified to use documentSettings().
(WebCore::StyleResolver::checkForGenericFamilyChange):
Modified to use documentSettings().
* css/StyleResolver.h:
(WebCore::StyleResolver::documentSettings):
(WebCore::StyleResolver::initializeFontStyle):
Added two new methods to class StyleResolver.
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::NodeRenderingContext):
Modified to calculate m_resetStyleInheritance in its constructor.
* dom/NodeRenderingContext.h:
(WebCore::NodeRenderingContext::resetStyleInheritance):
Implemented a new method, just returning m_resetStyleInheritance.
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::setResetStyleInheritance):
Modified to force to recalculate children's styles if
resetStyleInheritance is changed.
* dom/ShadowRoot.h:
(ShadowRoot):
Added resetStyleInheritance getter and setter.
* dom/ShadowRoot.idl:
Added an attribute, resetStyleInheritance.
* dom/TreeScope.cpp:
(WebCore::TreeScope::resetStyleInheritance):
* dom/TreeScope.h:
(TreeScope):
Added resetStyleInheritance's default getter.
The getter will be overrided by class ShadowRoot's getter.

LayoutTests:

Added layout tests for checking whether resetStyleInheritance works correctly or not.

Patch by Takashi Sakamoto <tasak@google.com> on 2012-06-07
Reviewed by Hajime Morita.

* fast/dom/shadow/shadow-root-resetStyleInheritance.html: Added.
* fast/dom/shadow/shadow-root-resetStyleInheritance-expected.html: Added.

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

7 years ago[WebKit2] Only include Cocoa.h on platforms that use AppKit
aestes@apple.com [Fri, 8 Jun 2012 04:49:34 +0000 (04:49 +0000)]
[WebKit2] Only include Cocoa.h on platforms that use AppKit
https://bugs.webkit.org/show_bug.cgi?id=88517

Reviewed by Sam Weinig.

* WebKit2Prefix.h: Include Platform.h to get USE() macros. GTK needs to
include autotoolsconfig.h before including Platform.h, so do that first
if building on GTK. Then, if compiling an Objective-C file, it's safe
to include Foundation.h, but not necessarily Cocoa.h; only include the
latter if USE(APPKIT) is true.
* config.h: There's no need to import Cocoa.h since this is already
imported in the prefix header.

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

7 years agoDFG should inline prototype chain accesses, and do the right things if the
barraclough@apple.com [Fri, 8 Jun 2012 04:25:58 +0000 (04:25 +0000)]
DFG should inline prototype chain accesses, and do the right things if the
specific function optimization is available
https://bugs.webkit.org/show_bug.cgi?id=88594

Patch by Filip Pizlo <fpizlo@apple.com> on 2012-06-07
Reviewed by Gavin Barraclough.

Looks like a 3% win on V8.

* bytecode/CodeBlock.h:
(JSC::Structure::prototypeForLookup):
(JSC):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC):
(JSC::GetByIdStatus::computeForChain):
(JSC::GetByIdStatus::computeFor):
* bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::isSimple):
(JSC::GetByIdStatus::chain):
(JSC::GetByIdStatus::specificValue):
(GetByIdStatus):
* bytecode/StructureSet.h:
(StructureSet):
(JSC::StructureSet::singletonStructure):
* bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::initGetByIdProto):
(JSC::StructureStubInfo::initGetByIdChain):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleGetById):
* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCacheGetByID):
* jit/JITStubs.cpp:
(JSC::JITThunks::tryCacheGetByID):
* runtime/JSGlobalObject.h:
(JSC::Structure::prototypeForLookup):
(JSC):
* runtime/Structure.h:
(Structure):

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

7 years agocheck-webkit-style needs to be taught about <public/Foo.h>
kinuko@chromium.org [Fri, 8 Jun 2012 04:24:01 +0000 (04:24 +0000)]
check-webkit-style needs to be taught about <public/Foo.h>
https://bugs.webkit.org/show_bug.cgi?id=88524

Reviewed by David Levin.

* Scripts/webkitpy/style/checkers/cpp.py:
(_classify_include):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(OrderOfIncludesTest.test_public_primary_header):
(OrderOfIncludesTest.test_classify_include):

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

7 years agoFix unmatched parenthesis in fast/dom/HTMLAnchorElement/anchor-download-unset.html
kinuko@chromium.org [Fri, 8 Jun 2012 04:15:28 +0000 (04:15 +0000)]
Fix unmatched parenthesis in fast/dom/HTMLAnchorElement/anchor-download-unset.html
https://bugs.webkit.org/show_bug.cgi?id=88526

Reviewed by Alexey Proskuryakov.

This test is skipped on other platforms than chromium.

* fast/dom/HTMLAnchorElement/anchor-download-unset.html:
* platform/chromium/TestExpectations:

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

7 years agoaddTextTrack should set track mode to HIDDEN
commit-queue@webkit.org [Fri, 8 Jun 2012 03:21:55 +0000 (03:21 +0000)]
addTextTrack should set track mode to HIDDEN
https://bugs.webkit.org/show_bug.cgi?id=88317

Patch by Victor Carbune <victor@rosedu.org> on 2012-06-07
Reviewed by Eric Carlson.

Source/WebCore:

Updated existing test.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::addTextTrack): Set the default parameters
for the newly created TextTrack.
* html/track/TextTrack.cpp:
(WebCore::TextTrack::TextTrack):

LayoutTests:

* media/track/track-texttracks-expected.txt: Updated.
* media/track/track-texttracks.html: Updated.

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

7 years agoFileAPI: Blob should support ArrayBufferView instead of ArrayBuffer for Constructor...
commit-queue@webkit.org [Fri, 8 Jun 2012 03:15:27 +0000 (03:15 +0000)]
FileAPI: Blob should support ArrayBufferView instead of ArrayBuffer for Constructor Parameters
https://bugs.webkit.org/show_bug.cgi?id=88294

Patch by Li Yin <li.yin@intel.com> on 2012-06-07
Reviewed by Jian Li.

Source/WebCore:

From Spec: http://dev.w3.org/2006/webapi/FileAPI/#dfn-Blob
Currently we add the support for ArrayBufferView, while still keeping ArrayBuffer for
backward compatibility. We will remove it in the near future.

Test: fast/files/blob-constructor.html

* bindings/js/JSBlobCustom.cpp:
(WebCore::JSBlobConstructor::constructJSBlob):
* bindings/v8/custom/V8BlobCustom.cpp:
(WebCore::V8Blob::constructorCallback):
* fileapi/WebKitBlobBuilder.cpp:
(WebCore::WebKitBlobBuilder::append):
(WebCore):
* fileapi/WebKitBlobBuilder.h:
(WebCore):
(WebKitBlobBuilder):
* fileapi/WebKitBlobBuilder.idl: Add support for ArrayBufferView in append method

LayoutTests:

Support ArrayBufferView in Blob constructing function.

* fast/files/blob-constructor-expected.txt:
* fast/files/file-reader-fffd-expected.txt:
* fast/files/file-reader-fffd.html:
* fast/files/script-tests/blob-constructor.js:
* http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
* http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
* http/tests/websocket/tests/hybi/send-blob.html:
* http/tests/websocket/tests/hybi/workers/resources/send-blob.js:
(createBlobContainingAllDistinctBytes):

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

7 years agoA style in an older shadow subtree causes assert when composing with <shadow>
morrita@google.com [Fri, 8 Jun 2012 03:13:24 +0000 (03:13 +0000)]
A style in an older shadow subtree causes assert when composing with <shadow>
https://bugs.webkit.org/show_bug.cgi?id=88299

Reviewed by Dimitri Glazkov.

Source/WebCore:

InsertionPoint::attach() assumes its distributed content not being attach()-ed.
But this assumption can break. This change added a guard for that.
This can happen for shadow boundaries in general. But ShadowRoot already handles that case.

Test: fast/dom/shadow/insertion-point-shadow-crash.html

* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::attach):

LayoutTests:

* fast/dom/shadow/insertion-point-shadow-crash-expected.txt: Added.
* fast/dom/shadow/insertion-point-shadow-crash.html: Added.

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

7 years ago[BlackBerry] Show correct fullscreen button image (media controls)
commit-queue@webkit.org [Fri, 8 Jun 2012 03:06:23 +0000 (03:06 +0000)]
[BlackBerry] Show correct fullscreen button image (media controls)
https://bugs.webkit.org/show_bug.cgi?id=88563

Patch by Max Feil <mfeil@rim.com> on 2012-06-07
Reviewed by Antonio Gomes.

PR159306: Show "exit" fullscreen button image instead of "enter"
fullscreen button image when in fullscreen mode (HTML5 media
controls).

I am not providing a test due to the simplicity of this patch
and the relative difficulty and maintainability issues associated
with testing how an image is rendered.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::paintMediaFullscreenButton):

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

7 years ago[EFL][DRT] Normalize file:///tmp/LayoutTests in LayoutTestController::pathToLocalReso...
commit-queue@webkit.org [Fri, 8 Jun 2012 02:59:37 +0000 (02:59 +0000)]
[EFL][DRT] Normalize file:///tmp/LayoutTests in LayoutTestController::pathToLocalResource()
https://bugs.webkit.org/show_bug.cgi?id=67255

Patch by Joshua Lock <joshua.lock@intel.com> on 2012-06-07
Reviewed by Dirk Pranke.

Tools:

Implement pathToLocalResource to redirect file:///tmp URL's to
DUMPRENDERTREE_TEMP and file:///tmp/LayoutTests to point to the
LayoutTests sub-directory of the WebKit source tree.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::pathToLocalResource):

LayoutTests:

* platform/efl/TestExpectations: unskip
fast/dom/frame-loading-via-document-write.html now that
LayoutTestController::pathToLocalResource() is implemented for EFL.

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

7 years ago[chromium] Use WEBPImportPictureRGBX|BGRX to import picture data
noel.gordon@gmail.com [Fri, 8 Jun 2012 02:57:27 +0000 (02:57 +0000)]
[chromium] Use WEBPImportPictureRGBX|BGRX to import picture data
https://bugs.webkit.org/show_bug.cgi?id=88218

Reviewed by Kent Tamura.

Source/WebCore:

Stop using the RGBA and RGBA variants of the picture import routines (since
these will import alpha channel data in a future libwebp). Use the RGBX and
BGRX variants to import picture data for encoding to make it clear that the
alpha channel is (and must be) ignored.

Test: fast/canvas/canvas-toDataURL-webp.html

* platform/image-encoders/skia/WEBPImageEncoder.cpp:
(WebCore::rgbPictureImport):
(WebCore::importPictureBGRX): Use WEBPImportPictureBGRX for picture imports
that must ignore the alpha channel. Change the template parameter to be the
premultiplied alpha state of the input image data.
(WebCore::importPictureRGBX): Use WEBPImportPictureRGBX, ditto.
(WebCore::encodePixels): Invert the sense of the template parameter to make
it now indicate the premultiplied alpha state of the input image data.

LayoutTests:

The test image (html5.png) has an alpha 255 background. The background should
be rendered black when a <canvas>.toDataURL('image/webp') is used as an <img>
element src attribute for example, since WEBP does not support alpha.

* fast/canvas/canvas-toDataURL-webp-expected.txt:
* fast/canvas/canvas-toDataURL-webp.html: Change the test to encode the added
html5.png test image as an image/webp data url.
* fast/canvas/resources/html5.png: Added.
* platform/chromium-mac-snowleopard/fast/canvas/canvas-toDataURL-webp-expected.png: Added.
* platform/chromium/TestExpectations: Requires WIN, LINUX rebaselines.

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

7 years ago[chromium/mac] Improve deviceDPI, rect, and availableRect computation
thakis@chromium.org [Fri, 8 Jun 2012 02:51:54 +0000 (02:51 +0000)]
[chromium/mac] Improve deviceDPI, rect, and availableRect computation
https://bugs.webkit.org/show_bug.cgi?id=88596

Reviewed by Adam Barth.

Set deviceDPI to 160 for normal displays and 320 for HiDPI displays.
(Why 160? That's what chromium's render_view.cc assumes as default
single-resolution resolution at the moment. The only other place
where this number gets used is fixed layout mode, which is currently
not enabled.)

Also fix rect and availableRect computations: They get returned in
user space already.

Needed for http://crbug.com/31960.

* src/mac/WebScreenInfoFactory.mm:
(WebKit::toUserSpace):
(WebKit::deviceScaleFactor):
(WebKit):
(WebKit::WebScreenInfoFactory::screenInfo):

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

7 years ago[chromium] Allow LayoutTests under new git workflow
commit-queue@webkit.org [Fri, 8 Jun 2012 02:40:55 +0000 (02:40 +0000)]
[chromium] Allow LayoutTests under new git workflow
https://bugs.webkit.org/show_bug.cgi?id=88575

On Windows, chromium indirects through git.bat. Adds the same hack that
is currently used for discovering svn.bat to support the new git
workflow.

Patch by Tony Payne <tpayne@chromium.org> on 2012-06-07
Reviewed by Dirk Pranke.

* Scripts/webkitpy/common/checkout/scm/git.py:
(Git): Replaces all hard-coded references to 'git' with the class
variable executable_name.
(Git._check_git_architecture):
(Git.in_working_directory):
(Git.find_checkout_root):
(Git.read_git_config):
(Git.discard_local_commits):
(Git.local_commits):
(Git.working_directory_is_clean):
(Git.clean_working_directory):
(Git.status_command):
(Git.add_list):
(Git.delete_list):
(Git.exists):
(Git._current_branch):
(Git.changed_files):
(Git._changes_files_for_commit):
(Git.revisions_changing_file):
(Git.conflicted_files):
(Git.svn_revision):
(Git.create_patch):
(Git._run_git_svn_find_rev):
(Git.contents_at_revision):
(Git.diff_for_file):
(Git.show_head):
(Git.committer_email_for_revision):
(Git.apply_reverse_diff):
(Git.revert_files):
(Git.commit_with_message):
(Git._commit_on_branch):
(Git.svn_commit_log):
(Git.last_svn_commit_log):
(Git.svn_blame):
(Git._branch_ref_exists):
(Git.delete_branch):
(Git.remote_merge_base):
(Git.commit_locally_with_message):
(Git.push_local_commits_to_server):
(Git.commit_ids_from_commitish_arguments):
(Git.commit_message_for_local_commit):
(Git.files_changed_summary_for_commit):
* Scripts/webkitpy/common/host.py:
(Host._engage_awesome_windows_hacks): Adds an awesome 'git.bat' hack
that duplicates the logic in the existing 'svn.bat' hack.

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

7 years agoStyle build architectures like build versions for non-layout test failures
ojan@chromium.org [Fri, 8 Jun 2012 02:19:31 +0000 (02:19 +0000)]
Style build architectures like build versions for non-layout test failures
https://bugs.webkit.org/show_bug.cgi?id=88590

Reviewed by Tony Chang.

Since we show the list of failing tests after the architecture, we want the
buildtype and architecture to be grouped together visually.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/failures.css:
(.effects a.failing-builder>span.architecture):

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

7 years agoLast set of chromium rebaselines after r119748.
ojan@chromium.org [Fri, 8 Jun 2012 02:18:04 +0000 (02:18 +0000)]
Last set of chromium rebaselines after r119748.
Also mark pointer-lock/pointerlockchange-pointerlockerror-events.html
as crashing in Chromium debug after r119763.

Excluding list of changed pngs because it's too long.
* platform/chromium/TestExpectations:

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

7 years agoImprove the performance of pushScope in StyleResolver
commit-queue@webkit.org [Fri, 8 Jun 2012 02:06:16 +0000 (02:06 +0000)]
Improve the performance of pushScope in StyleResolver
https://bugs.webkit.org/show_bug.cgi?id=88222

Patch by Takashi Sakamoto <tasak@google.com> on 2012-06-07
Reviewed by Hajime Morita.

As setupScopeStack always sets m_scopeStackParent to be NULL,
m_scopeStack is never reused. m_scopeStackParent should be the last
element of m_scopeStack.

No new tests, because fast/css/style-scoped/ uses pushScope,
popScope and setupScopeStack and checks whether there exists
any crash bug or not. And this patch doesn't change any behavior
of scoped author syltes.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::setupScopeStack):
Modified to set m_scopeSackParent to be the last element of
m_scopeStack.
(WebCore::StyleResolver::popScope):
Modified to remove the last element if m_scopeStack is not empty and
the last element of m_scopeStack has the same scope as the scoping
element given by the argument.

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

7 years ago[Chromium] Remove header dependency of ImageDiff to WTF
wangxianzhu@chromium.org [Fri, 8 Jun 2012 01:35:51 +0000 (01:35 +0000)]
[Chromium] Remove header dependency of ImageDiff to WTF
https://bugs.webkit.org/show_bug.cgi?id=88422

Reviewed by Ryosuke Niwa.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
* DumpRenderTree/chromium/ImageDiff.cpp:
(untestedCompareImages):

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

7 years ago[EFL] [DRT] DRT enables WebAudio when WebAudio feature is enabled.
commit-queue@webkit.org [Fri, 8 Jun 2012 01:33:25 +0000 (01:33 +0000)]
[EFL] [DRT] DRT enables WebAudio when WebAudio feature is enabled.
https://bugs.webkit.org/show_bug.cgi?id=88491

Patch by Dongwoo Im <dw.im@samsung.com> on 2012-06-07
Reviewed by Dirk Pranke.

DRT should enable WebAudio when WebAudio feature is enabled,
so that the WebAudio feature could be tested by the Layouttest.

* DumpRenderTree/efl/LayoutTestControllerEfl.cpp: Enable WebAudio when WebAudio feature is enabled.
(LayoutTestController::overridePreference):

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

7 years agoDFG should inline prototype chain accesses, and do the right things if the
fpizlo@apple.com [Fri, 8 Jun 2012 01:31:21 +0000 (01:31 +0000)]
DFG should inline prototype chain accesses, and do the right things if the
specific function optimization is available
https://bugs.webkit.org/show_bug.cgi?id=88594

Reviewed by Gavin Barraclough.

Looks like a 3% win on V8.

* bytecode/CodeBlock.h:
(JSC::Structure::prototypeForLookup):
(JSC):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
(JSC):
(JSC::GetByIdStatus::computeForChain):
(JSC::GetByIdStatus::computeFor):
* bytecode/GetByIdStatus.h:
(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::isSimple):
(JSC::GetByIdStatus::chain):
(JSC::GetByIdStatus::specificValue):
(GetByIdStatus):
* bytecode/StructureSet.h:
(StructureSet):
(JSC::StructureSet::singletonStructure):
* bytecode/StructureStubInfo.h:
(JSC::StructureStubInfo::initGetByIdProto):
(JSC::StructureStubInfo::initGetByIdChain):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleGetById):
* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCacheGetByID):
* jit/JITStubs.cpp:
(JSC::JITThunks::tryCacheGetByID):
* runtime/JSGlobalObject.h:
(JSC::Structure::prototypeForLookup):
(JSC):
* runtime/Structure.h:
(Structure):

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

7 years ago[Chromium] Move didStartWorkerRunLoop to Platform.h
pilgrim@chromium.org [Fri, 8 Jun 2012 00:48:40 +0000 (00:48 +0000)]
[Chromium] Move didStartWorkerRunLoop to Platform.h
https://bugs.webkit.org/show_bug.cgi?id=88562

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:
* bindings/v8/WorkerScriptController.cpp:
(WebCore::WorkerScriptController::~WorkerScriptController):
* platform/chromium/PlatformSupport.h:
(WebCore):
* workers/WorkerThread.cpp:
(WebCore::WorkerThread::workerThread):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):

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

7 years agoDropping m_startingLineNumber property from StyledElement.
commit-queue@webkit.org [Fri, 8 Jun 2012 00:36:22 +0000 (00:36 +0000)]
Dropping m_startingLineNumber property from StyledElement.
https://bugs.webkit.org/show_bug.cgi?id=86848

Patch by Mike West <mkwst@chromium.org> on 2012-06-07
Reviewed by Adam Barth.

We can have the same effect by moving the line-number calculation
directly into StyledElement::styleAttributeChanged. This means that
subsequent changes to the style attribute (via script) won't generate
error messages with line numbers, but that's an acceptable tradeoff.

Behavior is covered by existing CSP tests.

* dom/StyledElement.cpp:
(WebCore::StyledElement::StyledElement):
(WebCore::StyledElement::styleAttributeChanged):
* dom/StyledElement.h:
(WebCore::StyledElement::destroyInlineStyle):

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

7 years agoMath.pow on iOS does not support denormal numbers.
barraclough@apple.com [Fri, 8 Jun 2012 00:29:27 +0000 (00:29 +0000)]
Math.pow on iOS does not support denormal numbers.
https://bugs.webkit.org/show_bug.cgi?id=88592

Reviewed by Filip Pizlo.

Import an implementation from fdlibm, detect cases where it is safe to use the system
implementation & where we should fall back to fdlibm.

* runtime/MathObject.cpp:
(JSC::isDenormal):
(JSC::isEdgeCase):
(JSC::mathPow):
    - On iOS, detect cases where denormal support may be required & use fdlibm in these cases.
(JSC::mathProtoFuncPow):
    - Changed to use mathPow.
(JSC::fdlibmScalbn):
(JSC::fdlibmPow):
    - These functions imported from fdlibm; original style retained to ease future merging.

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

7 years ago[BlackBerry] Should Use the WebPage Already Created by Client, No Need to Create...
commit-queue@webkit.org [Fri, 8 Jun 2012 00:00:04 +0000 (00:00 +0000)]
[BlackBerry] Should Use the WebPage Already Created by Client, No Need to Create New One.
https://bugs.webkit.org/show_bug.cgi?id=88576

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-07
Reviewed by Rob Buis.

When PagePopupBlackBerry::init() is called, a WebPage is already created, we can just use
this to load popup, no need to create a new one. The old code is based on an old solution
which has been abandoned.

* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::openPagePopup):
* WebCoreSupport/PagePopupBlackBerry.cpp:
(WebCore::PagePopupBlackBerry::init):
(WebCore::setValueAndClosePopupCallback):
(WebCore::PagePopupBlackBerry::handleMouseEvent):
(WebCore::PagePopupBlackBerry::closePopup):
* WebCoreSupport/PagePopupBlackBerry.h:
(PagePopupBlackBerry):

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

7 years agoInitialize m_document in AXObjectCache's constructor for !HAVE(ACCESSIBILITY) builds
peter@chromium.org [Thu, 7 Jun 2012 23:59:48 +0000 (23:59 +0000)]
Initialize m_document in AXObjectCache's constructor for !HAVE(ACCESSIBILITY) builds
https://bugs.webkit.org/show_bug.cgi?id=88527

Reviewed by Adam Barth.

Initialize the m_document member with the passed on document in the stubbed
AXObjectCache constructor. No behavioral changes.

* accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::AXObjectCache):

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

7 years agoMark fast/table/multiple-captions-display.xhtml as flaky on Chromium.
ojan@chromium.org [Thu, 7 Jun 2012 23:46:17 +0000 (23:46 +0000)]
Mark fast/table/multiple-captions-display.xhtml as flaky on Chromium.
* platform/chromium/TestExpectations:

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

7 years ago[BlackBerry] Get rid of unused maximumLayoutSize in WebPage
zhajiang@rim.com [Thu, 7 Jun 2012 23:44:04 +0000 (23:44 +0000)]
[BlackBerry] Get rid of unused maximumLayoutSize in WebPage
https://bugs.webkit.org/show_bug.cgi?id=88574

Reviewed by Rob Buis.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 164098
maximumLayoutSize was deprecated when we made use of
WebCore::computeViewportAttributes for
WebPagePrivate::recomputeVirtualViewportFromViewportArguments.
So clean it up.

* Api/WebPage.cpp:
(WebKit):

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

7 years agoChromium rebaselines after http://trac.webkit.org/changeset/119760.
ojan@chromium.org [Thu, 7 Jun 2012 23:36:09 +0000 (23:36 +0000)]
Chromium rebaselines after trac.webkit.org/changeset/119760.

* platform/chromium-linux/fast/borders/border-radius-valid-border-clipping-expected.png: Added.
* platform/chromium-mac/fast/borders/border-radius-valid-border-clipping-expected.png:
* platform/chromium-win/fast/borders/border-radius-valid-border-clipping-expected.png: Added.

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

7 years ago[chromium] Move deferral-related logic out of Canvas2DLayerChromium
jamesr@google.com [Thu, 7 Jun 2012 23:35:54 +0000 (23:35 +0000)]
[chromium] Move deferral-related logic out of Canvas2DLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=86050

Reviewed by Stephen White.

Source/WebCore:

This removes Canvas2DLayerChromium and puts the deferral and double-buffering related logic in a new class,
Canvas2DLayerBridge, that uses TextureLayerChromium for compositing.  The bridge is responsible for managing the
front texture when double buffering is active, inserting the correct makeContextCurrent() and flush() calls on
the GraphicsContext3D and SkCanvas when appropriate, and owning the lifetime of the layer.

* WebCore.gypi:
* platform/graphics/chromium/Canvas2DLayerBridge.cpp: Added.
(WebCore):
(AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::AcceleratedDeviceContext):
(WebCore::AcceleratedDeviceContext::prepareForDraw):
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::skCanvas):
(WebCore::Canvas2DLayerBridge::prepareTexture):
(WebCore::Canvas2DLayerBridge::context):
(WebCore::Canvas2DLayerBridge::layer):
(WebCore::Canvas2DLayerBridge::contextAcquired):
* platform/graphics/chromium/Canvas2DLayerBridge.h: Added.
(WebCore):
(Canvas2DLayerBridge):
(WebCore::Canvas2DLayerBridge::create):
* platform/graphics/chromium/Canvas2DLayerChromium.cpp: Removed.
* platform/graphics/chromium/Canvas2DLayerChromium.h: Removed.
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
* platform/graphics/chromium/ImageBufferDataSkia.h:
(WebCore):
(ImageBufferData):
* platform/graphics/chromium/TextureLayerChromium.cpp:
(WebCore::TextureLayerChromium::willModifyTexture):
    willModifyTexture() is called whenever the texture currently owned by the TextureLayerChromium will be
    modified by a system out of the compositor's control. It makes sure that the compositor does not attempt to
    draw with the potentially-modified texture until the next commit. For canvas, this is used when threading is
    enabled and a non-deferrable drawing command is invoked from JS.
(WebCore):
* platform/graphics/chromium/TextureLayerChromium.h:
(TextureLayerChromium):
* platform/graphics/chromium/cc/CCTextureUpdater.cpp:
(WebCore::CCTextureUpdater::hasMoreUpdates):
(WebCore::CCTextureUpdater::update):
(WebCore::CCTextureUpdater::clear):
* platform/graphics/chromium/cc/CCTextureUpdater.h:
(CCTextureUpdater):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::createAcceleratedCanvas):
(WebCore::ImageBuffer::~ImageBuffer):
(WebCore::ImageBuffer::context):
(WebCore::ImageBuffer::platformLayer):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/Canvas2DLayerBridgeTest.cpp: Renamed from tests/Canvas2DLayerChromiumTest
(Canvas2DLayerBridgeTest):
(Canvas2DLayerBridgeTest::fullLifecycleTest):

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

7 years agoUnreviewed. Build fix for !ENABLE(JIT) after r119441.
paroga@webkit.org [Thu, 7 Jun 2012 23:24:14 +0000 (23:24 +0000)]
Unreviewed. Build fix for !ENABLE(JIT) after r119441.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):

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

7 years agoBuild fix for WinCE after r113570.
paroga@webkit.org [Thu, 7 Jun 2012 23:18:38 +0000 (23:18 +0000)]
Build fix for WinCE after r113570.

* Source/cmake/OptionsWinCE.cmake:

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

7 years agowebkit-patch rebaseline-expectations should only rebaseline the appropriate suffixes...
dpranke@chromium.org [Thu, 7 Jun 2012 23:10:23 +0000 (23:10 +0000)]
webkit-patch rebaseline-expectations should only rebaseline the appropriate suffixes for the failure in question
https://bugs.webkit.org/show_bug.cgi?id=88581

Reviewed by Ojan Vafai.

webkit-paptch rebaseline-expectations was ignoring what the
expected results for a test were and pulling down all the result
files from a bot. This could lead to us pulling down old,
incorrect .txt or .png files. With this patch we will now only
pull down expectations of the appropriate file types (so an
IMAGE failure will only pull the png and not the txt file).

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(has_pixel_failures):
(suffixes_for_expectations):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(FunctionsTest.test_suffixes_for_expectations):
* Scripts/webkitpy/tool/commands/rebaseline.py:
(AbstractRebaseliningCommand.__init__):
(RebaselineExpectations._is_supported_port):
(RebaselineExpectations._update_expectations_file):
(RebaselineExpectations._tests_to_rebaseline):
(RebaselineExpectations._rebaseline_port):
* Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
(test_overrides_are_included_correctly):

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

7 years agoRemove HAVE(PATH_BASED_BORDER_RADIUS_DRAWING)
paroga@webkit.org [Thu, 7 Jun 2012 23:07:48 +0000 (23:07 +0000)]
Remove HAVE(PATH_BASED_BORDER_RADIUS_DRAWING)
https://bugs.webkit.org/show_bug.cgi?id=87931

Reviewed by Beth Dakin.

r62035 added HAVE(PATH_BASED_BORDER_RADIUS_DRAWING) until all ports implement
GraphicsContext::clipConvexPolygon(). All major ports define HAVE_PATH_BASED_BORDER_RADIUS_DRAWING in the
meantime and the alternative path has unnecessary maintainace costs and even don't compile at the moment.

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::drawBoxSideFromPath):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::paintFocusRing):
* rendering/RenderObject.h:
(RenderObject):

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

7 years ago[chromium] Unreviewed, new baselines for chromium-win after fixing
tony@chromium.org [Thu, 7 Jun 2012 22:44:46 +0000 (22:44 +0000)]
[chromium] Unreviewed, new baselines for chromium-win after fixing
scrollbar rendering in r119748.

List of files omitted since it's long.

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