WebKit-https.git
7 years agoDFG InstanceOf should not uselessly speculate cell
fpizlo@apple.com [Thu, 5 Apr 2012 00:48:08 +0000 (00:48 +0000)]
DFG InstanceOf should not uselessly speculate cell
https://bugs.webkit.org/show_bug.cgi?id=83234

Reviewed by Oliver Hunt.

If InstanceOf is the only user of its child then don't speculate cell, since
the not-cell case is super easy to handle.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileInstanceOf):

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

7 years agoWaveTable::waveDataForFundamentalFrequency() should properly interpret negative frequency
crogers@google.com [Thu, 5 Apr 2012 00:14:41 +0000 (00:14 +0000)]
WaveTable::waveDataForFundamentalFrequency() should properly interpret negative frequency
https://bugs.webkit.org/show_bug.cgi?id=83228

Reviewed by Kenneth Russell.

* Modules/webaudio/WaveTable.cpp:
(WebCore::WaveTable::waveDataForFundamentalFrequency):

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

7 years agoDelay post-insertion notifications until new DOM tree is complete
adamk@chromium.org [Thu, 5 Apr 2012 00:05:24 +0000 (00:05 +0000)]
Delay post-insertion notifications until new DOM tree is complete
https://bugs.webkit.org/show_bug.cgi?id=82631

Reviewed by Ojan Vafai.

Source/WebCore:

When inserting a DocumentFragment, WebKit previously would update both
internal WebCore state and mutation event listeners after each node
was inserted. This is inconsistent not only with DOM4, but also
with (at least) Firefox and IE. Given the many bugs over the years in
WebKit due to this behavior, it seems better to delay notification
until the fragment is completely inserted.

The changes to the three core mutation methods below are similar:
the only logic remaining in the loop is checking that insertion is
possible and taking care of that insertion. The entire loop is then
wrapped in forbidEventDispatch/allowEventDispatch, effectively
asserting that none of the code inside will have side effects.

The one bit of logic added to the loop is resizing the targets
vector down to the set of nodes actually inserted as part of the
loop. This makes it possible to simply pass the vector on to
notifyChildrenInserted without having to also pass along a count of
actually-inserted nodes.

As for the code that used to live inside the loop that could have
side-effects, or depended on those side-effects, it has been moved
out, either above (the check that the refChild is still valid in
insertBefore) or after (the calls to notifyChildrenInserted).

Finally, it was necessary to retrofit ChildListMutationScope to take a
vector of added nodes instead of a single node at a time, due to the
assertions in isAddedNodeInOrder (now renamed to be plural). Note that
there is now a single call to ChildListMutationScope::childrenAdded,
inside notifyChildrenInserted.

Test: fast/events/domnodeinserted-entire-fragment.html

* dom/ChildListMutationScope.cpp:
(ChildListMutationScope::MutationAccumulator): Renamed method to be plural.
(WebCore::ChildListMutationScope::MutationAccumulator::areAddedNodesInOrder): Handle a NodeVector instead of a Node.
(WebCore::ChildListMutationScope::MutationAccumulator::childrenAdded): Handle adding a NodeVector instead of a Node.
(WebCore::ChildListMutationScope::MutationAccumulationRouter::childrenAdded): Renamed to be plural, pass NodeVector through.
* dom/ChildListMutationScope.h:
(WebCore::ChildListMutationScope::childrenAdded): ditto.
(MutationAccumulationRouter):
* dom/ContainerNode.cpp:
(WebCore): Renamed updateTreeAfterInsertion to notifyChildrenInserted.
(WebCore::ContainerNode::insertBefore): See main ChangeLog explanation.
(WebCore::ContainerNode::replaceChild): ditto.
(WebCore::ContainerNode::appendChild): ditto.
(WebCore::dispatchChildInsertionEvents): Remove MutationObserver handling.
(WebCore::notifyChildrenInserted): Handle a NodeVector of all inserted children,
and take on responsiblity for MutationObserver handling as well as dispatchSubtreeModifiedEvent.

LayoutTests:

* fast/events/domnodeinserted-entire-fragment-expected.txt: Added.
* fast/events/domnodeinserted-entire-fragment.html: Added.

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

7 years agoRealtimeAnalyserNode should support smaller analysis sizes
crogers@google.com [Thu, 5 Apr 2012 00:03:04 +0000 (00:03 +0000)]
RealtimeAnalyserNode should support smaller analysis sizes
https://bugs.webkit.org/show_bug.cgi?id=83215

Source/WebCore:

Reviewed by Kenneth Russell.

RealtimeAnalyserNode analysis size currently goes no lower than 128.
It is useful to support lower power-of-two sizes.
Decrease this limit to 32.

Updated webaudio/realtimeanalyser-fft-sizing-expected.txt

* Modules/webaudio/RealtimeAnalyser.cpp:
(WebCore):

LayoutTests:

Reviewed by Kenneth Russell.

* webaudio/realtimeanalyser-fft-sizing-expected.txt:
* webaudio/realtimeanalyser-fft-sizing.html:

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

7 years agoUnify and modernize fast/css/{outline,background}-currentcolor.html
commit-queue@webkit.org [Thu, 5 Apr 2012 00:00:31 +0000 (00:00 +0000)]
Unify and modernize fast/css/{outline,background}-currentcolor.html
https://bugs.webkit.org/show_bug.cgi?id=75523

Patch by David Barr <davidbarr@chromium.org> on 2012-04-04
Reviewed by Daniel Bates.

Use js-test-pre utility functions instead of hardcoded testing logic
to simplify the test code and make the test more closely conform to
the visual appearance of other PASS/FAIL tests.

* fast/css/background-currentcolor-expected.txt:
* fast/css/background-currentcolor.html:
* fast/css/outline-currentcolor-expected.txt:
* fast/css/outline-currentcolor.html:

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

7 years agoCSS transitions should work on the flex property
tony@chromium.org [Wed, 4 Apr 2012 23:57:33 +0000 (23:57 +0000)]
CSS transitions should work on the flex property
https://bugs.webkit.org/show_bug.cgi?id=75915

Reviewed by Dean Jackson.

Source/WebCore:

Test: transitions/flex-transitions.html

* page/animation/AnimationBase.cpp:
(WebCore::PropertyWrapperGetter::equals): Fix indention.
(PropertyWrapperFlex): Add a wrapper for -webkit-flex which has 3 values (two floats and
a length), but is not a shorthand.
(WebCore::PropertyWrapperFlex::PropertyWrapperFlex):
(WebCore::PropertyWrapperFlex::equals):
(WebCore::PropertyWrapperFlex::blend):
(WebCore):
(WebCore::AnimationBase::ensurePropertyMap):

LayoutTests:

* transitions/flex-transitions-expected.txt: Added.
* transitions/flex-transitions.html: Added.

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

7 years agoXSSAuditor bypass through HTTP Parameter Pollution.
tsepez@chromium.org [Wed, 4 Apr 2012 23:54:28 +0000 (23:54 +0000)]
XSSAuditor bypass through HTTP Parameter Pollution.
https://bugs.webkit.org/show_bug.cgi?id=81283

Reviewed by Adam Barth.

Source/WebCore:

Deal with concatenation of multiple parameters via comma-splicing that
is common to some webservers. We can no longer trust that all of the
attributes of a reflected script tag, nor the reflected script itself,
came from the same single URL parameter. The fix is to take commas into
account when trucating the snippet used for matching.

Test: http/tests/security/xssAuditor/script-tag-with-comma.html

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::filterScriptToken):
(WebCore):
(WebCore::XSSAuditor::decodedSnippetForName):
(WebCore::XSSAuditor::decodedSnippetForJavaScript):

LayoutTests:

* http/tests/security/xssAuditor/script-tag-with-comma-expected.txt: Added.
* http/tests/security/xssAuditor/script-tag-with-comma.html: Added.

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

7 years agoFixed minor error: "& 3" should be "& 2".
msaboff@apple.com [Wed, 4 Apr 2012 23:50:53 +0000 (23:50 +0000)]
Fixed minor error: "& 3" should be "& 2".

Rubber-stamped by Oliver Hunt.

* assembler/MacroAssembler.h:
(JSC::MacroAssembler::additionBlindedConstant):

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

7 years agoText input doesn't work for some Flash forms
andersca@apple.com [Wed, 4 Apr 2012 23:28:25 +0000 (23:28 +0000)]
Text input doesn't work for some Flash forms
https://bugs.webkit.org/show_bug.cgi?id=83232
<rdar://problem/11186162>

Reviewed by Alexey Proskuryakov.

If a plug-in is instantiated when the WKView is not focused, text input wouldn't work. The reason for this
is that WebPage::windowIsFocused() would only return true if the window and the WKView are both focused. Rename
this member function to windowAndWebPageAreFocused, add a new windowIsFocused member function that does the right thing
and change WebPage::focusedWebPage to use windowAndWebPageAreFocused.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::windowIsFocused):
(WebKit):
(WebKit::WebPage::windowAndWebPageAreFocused):
* WebProcess/WebPage/WebPage.h:
(WebPage):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::focusedWebPage):

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

7 years agoPaginated webviews render nothing in their gutters
mitz@apple.com [Wed, 4 Apr 2012 23:23:28 +0000 (23:23 +0000)]
Paginated webviews render nothing in their gutters
https://bugs.webkit.org/show_bug.cgi?id=83231

Reviewed by Adele Peterson.

When the RenderView has columns, nothing draws in the gutters.

* page/FrameView.cpp:
(WebCore::FrameView::paintContents): Paint the background color behind everything when
paginated.

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

7 years ago[Chromium] Update expectations for Leopard.
dglazkov@chromium.org [Wed, 4 Apr 2012 23:17:35 +0000 (23:17 +0000)]
[Chromium] Update expectations for Leopard.

* platform/chromium-mac-leopard/ietestcenter/css3/bordersbackgrounds: Added.
* platform/chromium-mac-leopard/svg/css/group-with-shadow-expected.png: Added.

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

7 years agoinline script for flexbox tests
tony@chromium.org [Wed, 4 Apr 2012 23:10:53 +0000 (23:10 +0000)]
inline script for flexbox tests
https://bugs.webkit.org/show_bug.cgi?id=83220

Reviewed by Ojan Vafai.

Inline the .js test files into the .html files. These tests don't need
to be in a separate file.

* css3/flexbox/css-properties.html:
* css3/flexbox/display-flexbox-set-get.html:
* css3/flexbox/resources/display-flexbox-set-get.js: Removed.
* css3/flexbox/script-tests/TEMPLATE.html: Removed.
* css3/flexbox/script-tests/css-properties.js: Removed.

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

7 years agoRebaseline for r113252.
inferno@chromium.org [Wed, 4 Apr 2012 23:06:56 +0000 (23:06 +0000)]
Rebaseline for r113252.

Unreviewed.

* platform/gtk/fast/css/bidi-override-in-anonymous-block-expected.txt:

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

7 years agonrwt is failing to upload test results on the chromium-mac-leopard bots
dpranke@chromium.org [Wed, 4 Apr 2012 23:01:32 +0000 (23:01 +0000)]
nrwt is failing to upload test results on the chromium-mac-leopard bots
https://bugs.webkit.org/show_bug.cgi?id=83230

Reviewed by Ojan Vafai.

* Scripts/webkitpy/common/net/file_uploader.py:
(FileUploader.__init__):
(FileUploader._upload_data.callback):
(FileUploader):
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._upload_json_files):
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
(JSONResultsGeneratorBase.upload_json_files):

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

7 years agoCall histogramEnumeration directly
commit-queue@webkit.org [Wed, 4 Apr 2012 22:55:09 +0000 (22:55 +0000)]
Call histogramEnumeration directly
https://bugs.webkit.org/show_bug.cgi?id=83106

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-04-04
Reviewed by Adam Barth.

Part of a refactoring project to remove the PlatformSupport
abstraction from some functions. See bug 82948.

Source/WebCore:

* bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
(WebCore::histogramEnumeration):
* platform/chromium/HistogramSupportChromium.cpp:
(WebCore::HistogramSupport::histogramEnumeration):
* platform/chromium/PlatformSupport.h:
(PlatformSupport):

Source/WebKit/chromium:

* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::shouldRunModalDialogDuringPageDismissal):
* src/PlatformSupport.cpp:
(WebCore):

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

7 years ago2012-04-04 Zhenyao Mo <zmo@google.com>
zmo@google.com [Wed, 4 Apr 2012 22:53:02 +0000 (22:53 +0000)]
2012-04-04  Zhenyao Mo  <zmo@google.com>

        Unreviewed, GPU bots build fix.

        Commited on behalf of sievers@chromium.org.

        * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
        (WebCore::CCLayerTreeHostImpl::canDraw):

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

7 years agoConstant Blinding for add/sub immediate crashes in ArmV7 when dest is SP
msaboff@apple.com [Wed, 4 Apr 2012 22:42:29 +0000 (22:42 +0000)]
Constant Blinding for add/sub immediate crashes in ArmV7 when dest is SP
https://bugs.webkit.org/show_bug.cgi?id=83191

Reviewed by Oliver Hunt.

Make are that blinded constant pairs are similarly aligned to the
original immediate values so that instructions that expect that
alignment work correctly.  One example is ARMv7 add/sub imm to SP.

* assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::add): Added ASSERT that immediate is word aligned.
(JSC::ARMv7Assembler::sub): Added ASSERT that immediate is word aligned.
(JSC::ARMv7Assembler::sub_S): Added ASSERT that immediate is word aligned.
* assembler/MacroAssembler.h:
(JSC::MacroAssembler::additionBlindedConstant):

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

7 years agoAdd helpers to create anonymous table parts.
inferno@chromium.org [Wed, 4 Apr 2012 22:41:56 +0000 (22:41 +0000)]
Add helpers to create anonymous table parts.
https://bugs.webkit.org/show_bug.cgi?id=83116

Reviewed by Julien Chaffraix.

Source/WebCore:

The patch introduces helpers to create anonymous table parts by
introducing a new static function createAnonymousWithParentRenderer.
The function builds a new anonymous wrapper of the same type as the class,
inheriting style properties from parent and sets a display based on
argument/default values. Also we streamline the RenderBlock functions
to match this naming convention.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::createAnonymousBlockWithSameTypeAs):
(WebCore::RenderBlock::createAnonymousWithParentRendererAndDisplay):
(WebCore):
(WebCore::RenderBlock::createAnonymousColumnsWithParentRendererAndDisplay):
(WebCore::RenderBlock::createAnonymousColumnSpanWithParentRendererAndDisplay):
* rendering/RenderBlock.h:
(RenderBlock):
(WebCore::RenderBlock::createAnonymousBlock):
(WebCore::RenderBlock::createAnonymousColumnsBlock):
(WebCore::RenderBlock::createAnonymousColumnSpanBlock):
* rendering/RenderButton.cpp:
(WebCore::RenderButton::addChild):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::addChild):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):
(WebCore::RenderTable::createAnonymousWithParentRendererAndDisplay):
(WebCore):
* rendering/RenderTable.h:
(RenderTable):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::createAnonymousWithParentRendererAndDisplay):
(WebCore):
* rendering/RenderTableCell.h:
(RenderTableCell):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::addChild):
(WebCore::RenderTableRow::createAnonymousWithParentRendererAndDisplay):
(WebCore):
* rendering/RenderTableRow.h:
(RenderTableRow):
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::addChild):
(WebCore::RenderTableSection::createAnonymousWithParentRendererAndDisplay):
(WebCore):
* rendering/RenderTableSection.h:
(RenderTableSection):

LayoutTests:

Rebaselining tests because we now correctly inherit the bidi override.

* platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
* platform/chromium-win/fast/css/bidi-override-in-anonymous-block-expected.txt:

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

7 years ago[Chromium] Adjust expectations for fast/text/international/spaces-combined-in-vertica...
dglazkov@chromium.org [Wed, 4 Apr 2012 22:36:41 +0000 (22:36 +0000)]
[Chromium] Adjust expectations for fast/text/international/spaces-combined-in-vertical-text.html

* platform/chromium/test_expectations.txt: Tweaked some more.

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

7 years ago[V8] Add a per context data store and use that for caching boiler plates as well...
arv@chromium.org [Wed, 4 Apr 2012 22:30:56 +0000 (22:30 +0000)]
[V8] Add a per context data store and use that for caching boiler plates as well as constructor functions
https://bugs.webkit.org/show_bug.cgi?id=83093

Reviewed by Adam Barth.

Source/WebCore:

This introduces a V8BindingPerContextData class. After creating a new v8::Context we also create a new
per context data instance. This instance maintains the boiler plate and constructor caches. V8DOMWrapper
now delegates the caching to this new class. Previously the caching was only done in V8DOMWindowShell which
made workers and isolated worlds behave slightly different.

Tests: fast/dom/constructor-proto.html
       fast/workers/constructor-proto.html

* WebCore.gypi:
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateConstructorGetter): Renamed getConstructor to constructorForType.
* bindings/v8/V8BindingPerContextData.cpp: Added.
(WebCore):
(WebCore::V8BindingPerContextData::dispose): This clears the persistent handles stored in the maps.
(WebCore::V8BindingPerContextData::init): This installs the hidden prototype which is used as the
[[Prototype]] for the constructor functions (for HotMail compat).
(WebCore::V8BindingPerContextData::createWrapperFromCacheSlowCase): Instantiates a new object and
stores it in the boilerplate map, and returns a clone.
(WebCore::V8BindingPerContextData::constructorForTypeSlowCase): Creates the function for the constructor
and stores it in the constructor map.
* bindings/v8/V8BindingPerContextData.h: Added.
(WebCore):
(V8BindingPerContextData):
(WebCore::V8BindingPerContextData::create):
(WebCore::V8BindingPerContextData::~V8BindingPerContextData):
(WebCore::V8BindingPerContextData::createWrapperFromCache): Checks the cache and clones the wrapper in
the cache. If no boiler plate exists one is created and cached.
(WebCore::V8BindingPerContextData::constructorForType): If the constructor already exists the cached
constructor function is returned, otherwise a new constructor function is created and cached.
(WebCore::V8BindingPerContextData::V8BindingPerContextData):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContextHandles): Clear the per context data when disposing the handles.
(WebCore::V8DOMWindowShell::initContextIfNeeded): Create and initialize the per context data.
(WebCore::V8DOMWindowShell::installDOMWindow):
* bindings/v8/V8DOMWindowShell.h:
(V8DOMWindowShell):
(WebCore::V8DOMWindowShell::perContextData):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::constructorForType): Static method to get the constructor. The per context data
is determined based on the type of the parameters.
(WebCore):
(WebCore::V8DOMWrapper::perContextData):
(WebCore::V8DOMWrapper::instantiateV8Object): Use the per context data to unify the code paths.
* bindings/v8/V8DOMWrapper.h:
(WebCore):
(V8DOMWrapper):
* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext): Create and initialize the per context data.
(WebCore::V8IsolatedContext::destroy): Clear the per context data.
* bindings/v8/V8IsolatedContext.h:
(WebCore):
(WebCore::V8IsolatedContext::perContextData):
(V8IsolatedContext):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::retrievePerContextData):
(WebCore):
* bindings/v8/V8Proxy.h:
(WebCore):
(V8Proxy):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::dispose): Clear the per context data
(WebCore::WorkerContextExecutionProxy::initContextIfNeeded): Create and initialize the per context data.
* bindings/v8/WorkerContextExecutionProxy.h:
(WebCore):
(WebCore::WorkerContextExecutionProxy::perContextData):
(WorkerContextExecutionProxy):

LayoutTests:

* fast/dom/constructor-proto-expected.txt: Added.
* fast/dom/constructor-proto.html: Added.
* fast/workers/constructor-proto-expected.txt: Added.
* fast/workers/constructor-proto.html: Added.

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

7 years agoUnreviewed, updating expected test output for a test already marked FAIL.
jsbell@chromium.org [Wed, 4 Apr 2012 22:28:23 +0000 (22:28 +0000)]
Unreviewed, updating expected test output for a test already marked FAIL.
Replace dummy output with real expected output to unblock Chromium-side test.

* storage/indexeddb/dont-commit-on-blocked-expected.txt:

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

7 years ago[chromium] Move recursive renderSurface clearing to CCLayerTreeHostImpl
shawnsingh@chromium.org [Wed, 4 Apr 2012 22:23:28 +0000 (22:23 +0000)]
[chromium] Move recursive renderSurface clearing to CCLayerTreeHostImpl
https://bugs.webkit.org/show_bug.cgi?id=82091

Reviewed by James Robinson.

Source/WebCore:

No new tests needed, minor refactoring covered by existing tests.

This patch is just a minor cleanup, moving clearRenderSurfacesOnCCLayerImplRecursive()
from LayerRendererChromium to CCLayerTreeHostImpl. It makes more sense to place the code
there, so that LayerRendererChromium is more like a blind utility for drawing things
while CCLayerTreeHostImpl actually manages the state of the resources.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::beginDrawingFrame):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::~CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
(WebCore::CCLayerTreeHostImpl::sendDidLoseContextRecursive):
(WebCore::CCLayerTreeHostImpl::clearRenderSurfacesOnCCLayerImplRecursive):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(WebCore::CCLayerTreeHostImpl::rootLayer):
(CCLayerTreeHostImpl):

Source/WebKit/chromium:

* tests/LayerRendererChromiumTest.cpp:
(FakeLayerRendererChromiumClient::FakeLayerRendererChromiumClient):

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

7 years ago[Chromium] Tweak expectations for accessibility/aria-checkbox-sends-notification...
dglazkov@chromium.org [Wed, 4 Apr 2012 22:23:10 +0000 (22:23 +0000)]
[Chromium] Tweak expectations for accessibility/aria-checkbox-sends-notification.html.

* platform/chromium/test_expectations.txt: Tweaked expectations.

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

7 years agoWeb Audio should use MutexTryLocker class
crogers@google.com [Wed, 4 Apr 2012 22:13:17 +0000 (22:13 +0000)]
Web Audio should use MutexTryLocker class
https://bugs.webkit.org/show_bug.cgi?id=83194

Reviewed by Kenneth Russell.

Source/WebCore:

Switch existing Web Audio code from directly calling tryLock() on a Mutex to use a MutexTryLocker.
No new tests since it is a low-level threading primitive and is difficult to test.
Existing Web Audio tests continue to test the process() methods affected.

* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::process):
* Modules/webaudio/AudioParamTimeline.cpp:
(WebCore::AudioParamTimeline::valuesForTimeRange):
* Modules/webaudio/ConvolverNode.cpp:
(WebCore::ConvolverNode::process):
* Modules/webaudio/MediaElementAudioSourceNode.cpp:
(WebCore::MediaElementAudioSourceNode::process):
* Modules/webaudio/Oscillator.cpp:
(WebCore::Oscillator::process):
* Modules/webaudio/WaveShaperProcessor.cpp:
(WebCore::WaveShaperProcessor::process):

Source/WTF:

Add MutexTryLocker class which can be used as a stack-based object wrapping a Mutex.
It will automatically unlock the Mutex in its destructor if the tryLock() succeeded.

* wtf/ThreadingPrimitives.h:
(MutexTryLocker):
(WTF::MutexTryLocker::MutexTryLocker):
(WTF::MutexTryLocker::~MutexTryLocker):
(WTF::MutexTryLocker::locked):
Check if the tryLock() on the Mutex succeeded.
(WTF):

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

7 years ago[CSS] Make makevalues.pl and makeprop.pl ignore '#'s.
rakuco@webkit.org [Wed, 4 Apr 2012 22:06:24 +0000 (22:06 +0000)]
[CSS] Make makevalues.pl and makeprop.pl ignore '#'s.
https://bugs.webkit.org/show_bug.cgi?id=83212

Reviewed by Tony Chang.

This patch is a side-effect of my intentions to make the
CMake-based ports work with GCC 4.7 without changing the
parameters currently passed to the preprocessor. "-P" is always
being passed to the preprocessor, but this breaks
dom/make_names.pl due to GCC not outputting empty lines with "-P"
anymore; if I switch to never passing "-P" (my aim), the CSS
scripts currently break because of the additional lines output by
the preprocessor. InFilesParser.pm and make-css-file-array.pl
already skip lines which start with '#', for example.

No new tests, tools plumbing.

* css/makeprop.pl:
* css/makevalues.pl:

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

7 years agoDisable fancy upsampling and dithering for decoding jpeg on android
commit-queue@webkit.org [Wed, 4 Apr 2012 21:48:32 +0000 (21:48 +0000)]
Disable fancy upsampling and dithering for decoding jpeg on android
https://bugs.webkit.org/show_bug.cgi?id=83196

Patch by Min Qin <qinmin@google.com> on 2012-04-04
Reviewed by Kenneth Russell.

Dithering and fancy upsampling are currently disabled for chrome on android.
This gives us about 20% performance improvement.
Since the screen of mobile devices is small, impact on image quality is limited.
This change does not introduce any changes on other platforms.

* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(ditherMode):
(doFancyUpsampling):
(WebCore::JPEGImageReader::decode):

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

7 years ago[Chromium] Mark fonts/cursive.html as flaky on LION.
dglazkov@chromium.org [Wed, 4 Apr 2012 21:36:13 +0000 (21:36 +0000)]
[Chromium] Mark fonts/cursive.html as flaky on LION.

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

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

7 years ago[Chromium] Always skip draw and readback if there is nothing
commit-queue@webkit.org [Wed, 4 Apr 2012 21:27:36 +0000 (21:27 +0000)]
[Chromium] Always skip draw and readback if there is nothing
to draw.
https://bugs.webkit.org/show_bug.cgi?id=82680

This avoids corruption from pushing frames that have no valid
content drawn into them.
Also in addition to checking for non-existing root layers, check
for root layers with no content bounds. It's possible to see those
with kForceCompositing mode for empty documents.

Patch by Daniel Sievers <sievers@chromium.org> on 2012-04-04
Reviewed by James Robinson.

Added CCLayerTreeHostTestEmptyContentsShouldNotDraw.

Source/WebCore:

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::prepareToDraw):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
(WebKitTests::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::doBeginTest):
(WTF):
(CCLayerTreeHostTestEmptyContentsShouldNotDraw):
(WTF::CCLayerTreeHostTestEmptyContentsShouldNotDraw::CCLayerTreeHostTestEmptyContentsShouldNotDraw):
(WTF::CCLayerTreeHostTestEmptyContentsShouldNotDraw::beginTest):
(WTF::CCLayerTreeHostTestEmptyContentsShouldNotDraw::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestEmptyContentsShouldNotDraw::didCommitAndDrawFrame):
(WTF::CCLayerTreeHostTestEmptyContentsShouldNotDraw::afterTest):
(WTF::TEST_F):

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

7 years agoDFG should short-circuit Branch(LogicalNot(...))
fpizlo@apple.com [Wed, 4 Apr 2012 21:14:48 +0000 (21:14 +0000)]
DFG should short-circuit Branch(LogicalNot(...))
https://bugs.webkit.org/show_bug.cgi?id=83181

Reviewed by Geoff Garen.

Slight (sub 1%) speed-up on V8.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

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

7 years ago https://bugs.webkit.org/show_bug.cgi?id=83207
bdakin@apple.com [Wed, 4 Apr 2012 21:12:42 +0000 (21:12 +0000)]
 https://bugs.webkit.org/show_bug.cgi?id=83207
 platform/mac/fast/forms/input-list-button-size.html fails on the Mac bots after
 r11317

 This test is expected to fail now that datalist is disabled.
* platform/mac/Skipped:

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

7 years agoFull Screen mode should cancel before navigation.
jer.noble@apple.com [Wed, 4 Apr 2012 21:11:14 +0000 (21:11 +0000)]
Full Screen mode should cancel before navigation.
https://bugs.webkit.org/show_bug.cgi?id=81295

Reviewed by Anders Carlsson.

Source/WebCore:

No new tests; protect against speculative crasher when a bad client calls the below
functions at inopportune times.

Check that the document is not either detached or in the page cache, and if so, bail out
early:
* dom/Document.cpp:
(WebCore::Document::webkitWillEnterFullScreenForElement):
(WebCore::Document::webkitDidEnterFullScreenForElement):
(WebCore::Document::webkitWillExitFullScreenForElement):
(WebCore::Document::webkitDidExitFullScreenForElement):

Source/WebKit/mac:

When a provisional load is started, if the page is currently in full screen mode, instruct
the full screen controller to close the full screen window immediately.

* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController isFullScreen]): Added.
* WebView/WebView.mm:
(-[WebView _didStartProvisionalLoadForFrame:]): Close the full screen window controller, if
    present and in full screen mode.

Source/WebKit2:

When a provisional load is started, if the page is currently in full screen mode, instruct
the full screen controller to close the full screen window immediately.

Close the full screen window controller, if present and in full screen mode:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didStartProvisionalLoadForFrame):

Add boilerplate to support passing through isFullScreen() and close() methods from the WebPageProxy
to the WKFullScreenWindowController:
* UIProcess/WebFullScreenManagerProxy.h:
* UIProcess/mac/WKFullScreenWindowController.h:
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController isFullScreen]): Added simple accessor.
* UIProcess/mac/WebFullScreenManagerProxyMac.mm:
(WebKit::WebFullScreenManagerProxy::close): Pass through to the WKFullScreenWindowController.
(WebKit::WebFullScreenManagerProxy::isFullScreen): Ditto.

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

7 years ago[Chromium] Adjust expectations for fast/text/international/spaces-combined-in-vertica...
dglazkov@chromium.org [Wed, 4 Apr 2012 21:06:15 +0000 (21:06 +0000)]
[Chromium] Adjust expectations for fast/text/international/spaces-combined-in-vertical-text.html
https://bugs.webkit.org/show_bug.cgi?id=82669

* platform/chromium/test_expectations.txt: Tweaked expectations.

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

7 years agoFix getFilterOutsets parameter types in RenderLayer
eae@chromium.org [Wed, 4 Apr 2012 21:06:12 +0000 (21:06 +0000)]
Fix getFilterOutsets parameter types in RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=83041

Reviewed by Julien Chaffraix.

The getFilterOutsets method was changed to take integers in r112475, update
RenderLayer to use the right data type for the outset arguments.

No new tests, no change in functionality.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::setFilterBackendNeedsRepaintingInRect):
(WebCore::RenderLayer::calculateLayerBounds):

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

7 years agoWKTR needs to implement layoutTestController.setPageVisibility()
commit-queue@webkit.org [Wed, 4 Apr 2012 20:51:09 +0000 (20:51 +0000)]
WKTR needs to implement layoutTestController.setPageVisibility()
https://bugs.webkit.org/show_bug.cgi?id=69554

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-04-04
Reviewed by Simon Fraser.

Source/WebKit2:

This patch implements the setPageVisibilityState through InjectedBundle
so WKTR supports the Page Visibility API and can set the visibility state
directly to Page.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetPageVisibilityState):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit):
(WebKit::InjectedBundle::setPageVisibilityState):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

This patch implements the layoutTestController.setPageVisibility
so WKTR supports the Page Visibility API implementation by using InjectedBundle
to set the visibility state directly to Page.

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setPageVisibility):
(WTR):
(WTR::LayoutTestController::resetPageVisibility):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
(LayoutTestController):

LayoutTests:

* platform/wk2/Skipped: Unskipping compositing/video-page-visibility.html

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

7 years agoRebaseline binding tests.
arv@chromium.org [Wed, 4 Apr 2012 20:47:58 +0000 (20:47 +0000)]
Rebaseline binding tests.

Unreviewed.

* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::constructorCallback):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::constructorCallback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

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

7 years agoSource/WebCore: [JSC] ArrayBufferView and its ArrayBuffer are appended to object...
dslomov@google.com [Wed, 4 Apr 2012 20:43:31 +0000 (20:43 +0000)]
Source/WebCore: [JSC] ArrayBufferView and its ArrayBuffer are appended to object pool in wrong order
https://bugs.webkit.org/show_bug.cgi?id=82090
The implementation of structured cloning algorithm (http://www.w3.org/TR/html5/common-dom-interfaces.html#internal-structured-cloning-algorithm)
in SerializedScriptValue.cpp assigns numerical identifiers to encontered objects as it traverses
the cloned object during serialization.
When the cloning encounters an already seen object, it transfers the assigned numerical id
instead of cloning the object again. Deserialization process then repeats the process in
the mirror fashion, i.e. on deserializing the object it assigns deserialized object a numeric id and if it
deserializes the id it substitutes the perviously deserialized objects. It is critical that serialization and deserialization
assigns numeric ids in the same order.

The bug (discovered by Yong Li) is that when serializing ArrayBufferView, the ids were assigned first to
the ArrayBufferView and then to underlying ArrayBuffer; however on deserialization the ids were assigned another way round.

This patch fixes that by assigning the id first to ArrayBuffer and then to ArrayBufferView, and adds corresponding test cases.

Reviewed by Kenneth Russell.

New test cases added to fast/canvas/web-gl/array-message-passing.html.

* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::checkForDuplicate):
(CloneSerializer):
(WebCore::CloneSerializer::recordObject):
(WebCore::CloneSerializer::startObjectInternal):
(WebCore::CloneSerializer::dumpIfTerminal):

LayoutTests: [JSC] ArrayBufferView and its ArrayBuffer are appended to object pool in wrong order
https://bugs.webkit.org/show_bug.cgi?id=82090
Adds tests that cover more than one view of the same ArrayBuffer being cloned.

Reviewed by Kenneth Russell.

* fast/canvas/webgl/array-message-passing-expected.txt:
* fast/canvas/webgl/script-tests/array-message-passing.js:
(typedArrayCompare):
(dataViewCompare):
(dataViewCompare2):
(dataViewCompare3):

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

7 years ago[chromium] When setting animation started events, should check the root layer
commit-queue@webkit.org [Wed, 4 Apr 2012 20:31:24 +0000 (20:31 +0000)]
[chromium] When setting animation started events, should check the root layer
https://bugs.webkit.org/show_bug.cgi?id=83060

Patch by Ian Vollick <vollick@chromium.org> on 2012-04-04
Reviewed by Adrienne Walker.

No new tests.

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::animateLayers):
(WebCore::CCLayerTreeHost::animateLayersRecursive):
(WebCore::CCLayerTreeHost::setAnimationEventsRecursive):

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

7 years ago[Chromium] TestWebKitAPI links in WebCore twice
abarth@webkit.org [Wed, 4 Apr 2012 20:27:46 +0000 (20:27 +0000)]
[Chromium] TestWebKitAPI links in WebCore twice
https://bugs.webkit.org/show_bug.cgi?id=83177

Reviewed by Dimitri Glazkov.

This is causing link errors in the Windows component build. This patch
moves the dependencies a bit lower down in the dependency diagram in
the hopes of removing the duplicate symbols.

* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

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

7 years agoWeb Inspector: break on DOM node insertion only once per operation, not once per...
adamk@chromium.org [Wed, 4 Apr 2012 20:10:34 +0000 (20:10 +0000)]
Web Inspector: break on DOM node insertion only once per operation, not once per inserted node
https://bugs.webkit.org/show_bug.cgi?id=82967

Reviewed by Ojan Vafai.

Source/WebCore:

This change affects the case where a DocumentFragment is inserted,
rather than a single node. This is most common when using innerHTML:
the effect of the change is that inserting, e.g., '<input><input>',
the SubtreeModified breakpoint will be hit once, rather than twice
(once for each input element). Given that the particular node being
inserted wasn't exposed as part of the breakpoint, this seems strictly
better.

Now that the call to willInsertDOMNode is outside the loop, there's
not an obvious node to pass in as the new child. Luckily, InspectorDOMDebuggerAgent
already ignored that argument, so it's simply been removed from the signature.

This changes paves the way to do only tree-modification work, and no
external notifications, inside the loops in appendChild/insertBefore/replaceChild.

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore): Hoisted call to willInsertDOMNode out of loop.
(WebCore::ContainerNode::replaceChild): ditto.
(WebCore::ContainerNode::appendChild): ditto.
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode): Removed first argument (now takes only the parent).
* inspector/InspectorDOMDebuggerAgent.h:
(InspectorDOMDebuggerAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willInsertDOMNodeImpl): Removed second argument.
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willInsertDOMNode): Removed second argument.

LayoutTests:

Added test for setting inner HTML and ensuring that only a single
breakpoint is hit.

* inspector/debugger/dom-breakpoints.html:
* platform/chromium/inspector/debugger/dom-breakpoints-expected.txt:

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

7 years agoSource/WebCore: Move pending sheet removal from ~HTMLLinkElement to removal from...
jpfau@apple.com [Wed, 4 Apr 2012 20:06:35 +0000 (20:06 +0000)]
Source/WebCore: Move pending sheet removal from ~HTMLLinkElement to removal from document.
https://bugs.webkit.org/show_bug.cgi?id=69184

Reviewed by Adam Barth.

Test: fast/html/pending-stylesheet-crash.html

* html/HTMLLinkElement.cpp:
(WebCore::HTMLLinkElement::~HTMLLinkElement):
(WebCore::HTMLLinkElement::removedFromDocument):

LayoutTests: Move pending sheet removal from ~HTMLLinkElement to removal from document.
https://bugs.webkit.org/show_bug.cgi?id=69184

Reviewed by Adam Barth.

* fast/html/pending-stylesheet-crash-expected.txt: Added.
* fast/html/pending-stylesheet-crash.html: Added.

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

7 years agoUnskip Mac filter pixel tests which changed because of color space adjustment
jonlee@apple.com [Wed, 4 Apr 2012 19:50:00 +0000 (19:50 +0000)]
Unskip Mac filter pixel tests which changed because of color space adjustment
https://bugs.webkit.org/show_bug.cgi?id=80630

Unreviewed.

* platform/mac/test_expectations.txt: Unskip tests now that patch for b80571 landed.
* platform/wk2/Skipped: Unskip same tests.

These were rebaselined with color correction. Between WK1 and WK2, however, they still fail
the pixel hash, and completely fail if tolerance is set to 0. https://bugs.webkit.org/show_bug.cgi?id=83187
* css3/filters/add-filter-rendering-expected.png:
* css3/filters/crash-filter-change-expected.png:
* css3/filters/effect-blur-expected.png:
* css3/filters/effect-brightness-expected.png:
* css3/filters/effect-combined-expected.png:
* css3/filters/effect-contrast-expected.png:
* css3/filters/effect-drop-shadow-expected.png:
* css3/filters/effect-grayscale-expected.png:
* css3/filters/effect-hue-rotate-expected.png:
* css3/filters/effect-invert-expected.png:
* css3/filters/effect-opacity-expected.png:
* css3/filters/effect-saturate-expected.png:
* css3/filters/effect-sepia-expected.png:
* css3/filters/filter-repaint-expected.png:
* css3/filters/filter-with-transform-expected.png:
* css3/filters/nested-filter-expected.png:
* css3/filters/regions-expanding-expected.png:
* css3/filters/simple-filter-rendering-expected.png:

These tests fail between WK1 and WK2 because of a difference in the blur. https://bugs.webkit.org/show_bug.cgi?id=83188
* platform/mac-wk2/css3/filters/effect-blur-expected.png: Added.
* platform/mac-wk2/css3/filters/effect-combined-expected.png: Added.
* platform/mac-wk2/css3/filters/effect-opacity-expected.png: Added.
* platform/mac-wk2/css3/filters/regions-expanding-expected.png: Added.

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

7 years agoCall histogramCustomCounts directly
commit-queue@webkit.org [Wed, 4 Apr 2012 19:46:31 +0000 (19:46 +0000)]
Call histogramCustomCounts directly
https://bugs.webkit.org/show_bug.cgi?id=83112

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-04-04
Reviewed by Adam Barth.

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerPainter::paint):
* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
(WebCore::CCOverdrawMetrics::recordMetricsInternal):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::paint):
(WebKit::WebViewImplContentPainter::paint):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* src/painting/PaintAggregator.cpp:

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

7 years ago[Chromium] Mark fast/writing-mode/relative-positioning-percentages.html as crashing...
dglazkov@chromium.org [Wed, 4 Apr 2012 19:35:25 +0000 (19:35 +0000)]
[Chromium] Mark fast/writing-mode/relative-positioning-percentages.html as crashing on Mac debug
https://bugs.webkit.org/show_bug.cgi?id=83185

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

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

7 years agoSource/WebCore: Animation related classes should use CSSPropertyID rather than intege...
alexis.menard@openbossa.org [Wed, 4 Apr 2012 19:33:22 +0000 (19:33 +0000)]
Source/WebCore: Animation related classes should use CSSPropertyID rather than integers when manipulating CSS property ids.
https://bugs.webkit.org/show_bug.cgi?id=83050

Reviewed by Simon Fraser.

Split the concept of animate none and animate all into a separate function rather than using the property member
with some magic value set on it. Make also sure that we use CSSPropertyID all over the place rather than integers.
We still have some place where convert from int to CSSPropertyID (mostly due to the fact that we need to make Hash*
related classes to handle CSSPropertyID). While refactoring I also removed some dead code.

No new tests : not behaviour changes intented.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyAnimation::applyInheritValue):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* page/animation/AnimationBase.cpp:
(WebCore):
(WebCore::PropertyWrapperBase::PropertyWrapperBase):
(WebCore::PropertyWrapperBase::property):
(PropertyWrapperBase):
(WebCore::PropertyWrapperGetter::PropertyWrapperGetter):
(WebCore::PropertyWrapper::PropertyWrapper):
(WebCore::RefCountedPropertyWrapper::RefCountedPropertyWrapper):
(WebCore::StyleImagePropertyWrapper::StyleImagePropertyWrapper):
(WebCore::PropertyWrapperColor::PropertyWrapperColor):
(WebCore::PropertyWrapperShadow::PropertyWrapperShadow):
(WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
(WebCore::PropertyWrapperVisitedAffectedColor::PropertyWrapperVisitedAffectedColor):
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
(WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper):
(WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
(WebCore::wrapperForProperty):
(WebCore::AnimationBase::propertiesEqual):
The code removed here could never be reached. propertiesEqual is used only in CompositeAnimation::updateTransitions and through
ImplicitAnimation::isTargetPropertyEqual which is also called in CompositeAnimation. Both calls are protected by an ASSERT in
CompositeAnimation:116 where we make sure the property id we're dealing with is a valid property id, therefore prop can't be equal to
the old value cAnimateAll or even the new mode concept introduced in that patch can't be AnimateAll.
(WebCore::AnimationBase::getPropertyAtIndex):
(WebCore::AnimationBase::blendProperties):
(WebCore::AnimationBase::animationOfPropertyIsAccelerated):
(WebCore::gatherEnclosingShorthandProperties):
(WebCore::AnimationBase::animatableShorthandsAffectingProperty):
* page/animation/AnimationBase.h:
(AnimationBase):
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::updateTransitions):
(WebCore::CompositeAnimation::pauseTransitionAtTime):
* page/animation/CompositeAnimation.h:
(CompositeAnimation):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::ImplicitAnimation):
(WebCore::ImplicitAnimation::sendTransitionEvent):
The check removed is useless as ImplicitAnimation constructor ensure via an ASSERT that the animatingProperty value is a correct and valid
property id. Even the old code was ensuring the value of animatingProperty was different from cAnimateAll at construction time. As stated also
in CompositeAnimation::updateTransitions and cover by the same ASSERT explained earlier, ImplicitAnimation are constructed for valid property ids.
(WebCore::ImplicitAnimation::isTargetPropertyEqual):
(WebCore::ImplicitAnimation::blendPropertyValueInStyle):
* page/animation/ImplicitAnimation.h:
(WebCore::ImplicitAnimation::create):
(ImplicitAnimation):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::animate):
(WebCore::KeyframeAnimation::getAnimatedStyle):
(WebCore::KeyframeAnimation::timeToNextService):
* platform/animation/Animation.cpp:
(WebCore::Animation::Animation):
(WebCore::Animation::operator=):
(WebCore::Animation::animationsMatch):
* platform/animation/Animation.h:
(WebCore::Animation::property):
(WebCore::Animation::animationMode):
(WebCore::Animation::setProperty):
(WebCore::Animation::setAnimationMode):
(Animation):
(WebCore::Animation::initialAnimationProperty):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::startTransition):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::transitionForProperty):
* rendering/style/RenderStyle.h:

Source/WebKit2: Animation related classes should use CSSPropertyId rather than integers when manipulating CSS property ids.
https://bugs.webkit.org/show_bug.cgi?id=83050

Reviewed by Simon Fraser.

The property of the Animation is a CSSPropertyID. It's ok to cast it here as an int for IPC transmission.

* Shared/WebCoreArgumentCoders.cpp:
(CoreIPC::::encode):
(CoreIPC::::decode):

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

7 years ago[EFL][DRT] Catch the "resource,request,willsend" signal
rakuco@webkit.org [Wed, 4 Apr 2012 19:11:13 +0000 (19:11 +0000)]
[EFL][DRT] Catch the "resource,request,willsend" signal
https://bugs.webkit.org/show_bug.cgi?id=82192

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

Source/WebKit/efl:

EFL's FrameLoaderClient now emits the "resource,request,willsend"
signal on the view for all resources about to be loaded, not just the
main frame. Also adds a boolean flag to Ewk_Frame_Resource_Request to
distinguish the request for the main frame from those for
sub-resources.

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

Tools:

EFL's DumpRenderTree now catches the "resource,request,willsend"
signal in order to implement the "Blocked access to external URL"
behavior and avoid potential network-related timeouts in the tests.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onWillSendRequest):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):

LayoutTests:

Unskip related test cases now that EFL's DumpRenderTree
catches the "resource,request,willsend" signal and implements the
"Blocked access to external URL" behavior.

* platform/efl/Skipped:

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

7 years agoFix usage of LayoutUnits and snapping for scrolling in RenderBox
eae@chromium.org [Wed, 4 Apr 2012 19:10:00 +0000 (19:10 +0000)]
Fix usage of LayoutUnits and snapping for scrolling in RenderBox
https://bugs.webkit.org/show_bug.cgi?id=83073

Reviewed by Eric Seidel.

Fix usage of LayoutUnits and snapping/rounding logic in RenderBox.

No new tests, no change in functionality.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::scrollWidth):
Change scrollWidth to properly pixel snap values.

(WebCore::RenderBox::scrollHeight):
Change scrollHeight to properly pixel snap values.

(WebCore::RenderBox::scrolledContentOffset):
Change to return IntSize to match function definition.

(WebCore::RenderBox::cachedSizeForOverflowClip):
Changed cachedSizeForOverflowClip to LayoutSize as the overflow and clip
rects all have subpixel precision.

* rendering/RenderBox.h:
(WebCore::RenderBox::pixelSnappedWidth):
(WebCore::RenderBox::pixelSnappedHeight):
Removed FIXME comment as the implementation

(WebCore::RenderBox::minYLayoutOverflow):
(WebCore::RenderBox::maxYLayoutOverflow):
(WebCore::RenderBox::minXLayoutOverflow):
(WebCore::RenderBox::maxXLayoutOverflow):
Added static_cast for border values.

(WebCore::RenderBox::hasVisualOverflow):
Changed to compare two pixel snapped values as we don't want to indicate
overflow in cases where the the size is rounded down resulting in no
visual overflow.

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

7 years agoFix types for location, size and rect calculations for render objects
eae@chromium.org [Wed, 4 Apr 2012 19:04:15 +0000 (19:04 +0000)]
Fix types for location, size and rect calculations for render objects
https://bugs.webkit.org/show_bug.cgi?id=83089

Reviewed by Eric Seidel.

Fix usage of LayoutUnits and rounding for a couple of different render
object classes.

No new tests, no change in functionality.

* rendering/RenderDetailsMarker.cpp:
(WebCore::RenderDetailsMarker::getPath):
Change getPath to take a LayoutPoint as the transform has subpixel
precision already.

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::computeLogicalHeight):
Change logicalHeight to LayoutUnit as it is computed from subpixel
values.

* rendering/RenderInputSpeech.cpp:
(WebCore::RenderInputSpeech::paintInputFieldSpeechButton):
Change button rect computation to LayoutRect and pixel snap just before
painting to preserve precision.

* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::rangeIntersectsRect):
(WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
(WebCore::RenderLineBoxList::paint):
Change range calculations to LayoutUnits to preserve precision.

* rendering/RenderMarquee.cpp:
(WebCore::RenderMarquee::computePosition):
Change width calculations to LayoutUnits to preserve precision.

* rendering/RenderTable.cpp:
(WebCore::RenderTable::layoutCaption):
Change table captions to LayoutUnits as the values are computed from
subpixel componenets.

* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getRoundedBorderFor):
Snap border rect as RoundedRects use ints for crisp rendering.

* rendering/style/ShadowData.cpp:
(WebCore::ShadowData::adjustRectForShadow):
Change adjustRectForShadow to take a LayoutRect as it already uses
LayoutUnits.

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

7 years agoConvert RootInlineBox to LayoutUnits in preparation for turning on subpixel layout
eae@chromium.org [Wed, 4 Apr 2012 18:54:38 +0000 (18:54 +0000)]
Convert RootInlineBox to LayoutUnits in preparation for turning on subpixel layout
https://bugs.webkit.org/show_bug.cgi?id=83054

Reviewed by Eric Seidel.

Convert RootInlineBox over to LayoutUnits, this mostly involves updating
the alignment and adjustment code to be subpixel aware.

No new tests, no change in functionality.

* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::alignBoxesInBlockDirection):
Change beforeAnnotationsAdjustment to LayoutUnit.

(WebCore::RootInlineBox::beforeAnnotationsAdjustment):
Change method to return LayoutUnit as it is computed from values with
subpixel precision.

(WebCore::RootInlineBox::lineSnapAdjustment):
Round values before computing remainder.

(WebCore::RootInlineBox::ascentAndDescentForBox):
Change ascent and decent calculation to use LayoutUnits as they are
computed from values with subpixel precision.

(WebCore::RootInlineBox::verticalPositionForBox):
Change verticalPosition to LayoutUnit.

* rendering/RootInlineBox.h:
(RootInlineBox):

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

7 years ago<http://webkit.org/b/83108> Web Inspector: JSC Crash inspecting node with object...
joepeck@webkit.org [Wed, 4 Apr 2012 18:42:39 +0000 (18:42 +0000)]
<webkit.org/b/83108> Web Inspector: JSC Crash inspecting node with object event listener

Reviewed by Geoff Garen.

Source/WebCore:

* bindings/js/ScriptEventListener.cpp:
(WebCore::eventListenerHandlerLocation):
Use jsDynamicCast to bail when the JSObject is not a JSFunction.

LayoutTests:

* inspector/elements/event-listener-sidebar.html:
* inspector/elements/event-listener-sidebar-expected.txt:
* platform/chromium/inspector/elements/event-listener-sidebar-expected.txt:
Add an EventListener that uses an object listener instead of a function.

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

7 years agoCall suddenTerminationChanged directly
commit-queue@webkit.org [Wed, 4 Apr 2012 18:18:44 +0000 (18:18 +0000)]
Call suddenTerminationChanged directly
https://bugs.webkit.org/show_bug.cgi?id=83114

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-04-04
Reviewed by Adam Barth.

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/chromium/SuddenTerminationChromium.cpp:
(WebCore::disableSuddenTermination):
(WebCore::enableSuddenTermination):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):

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

7 years agofigure out how to export webcore symbols from webkit.dll properly
abarth@webkit.org [Wed, 4 Apr 2012 18:14:15 +0000 (18:14 +0000)]
figure out how to export webcore symbols from webkit.dll properly
https://bugs.webkit.org/show_bug.cgi?id=83105

Reviewed by Dimitri Glazkov.

Source/Platform:

Unwind our ugly, ugly hack to make the Windows component build work.

* chromium/public/WebMediaStreamSourcesRequest.h:
(WebMediaStreamSourcesRequest):

Source/WebCore:

* WebCore.gypi:
    - Separate the platform support files into a new GYP variable so
      that they can be build as part of webkit.dll rather than in
      webcore_platform.lib. Building them as part of webkit.dll ensure
      that the symbols marked for export will actually be in webkit.dll
      (and hence exported), even if nothing else in webkit.dll
      references the obj file that contains the symbol.
* platform/chromium/support/WebMediaStreamSourcesRequest.cpp:
    - Unwind our ugly, ugly hack to make the Windows component build
      work.

Source/WebKit/chromium:

* WebKit.gyp:
    - We now compile the platform support files as part of webkit.dll
      to make sure the lib contains the obj files and therefore exports
      the necessary symbols. In principle, we could use a defs file to
      achieve the same thing, but those files are a pain to maintain.
* src/WebKit.cpp:
(WebKit::shutdown):
    - Unwind our ugly, ugly hack to make the Windows component build
      work.

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

7 years agoCall sandboxEnabled directly
commit-queue@webkit.org [Wed, 4 Apr 2012 18:12:03 +0000 (18:12 +0000)]
Call sandboxEnabled directly
https://bugs.webkit.org/show_bug.cgi?id=83113

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-04-04
Reviewed by Adam Barth.

Source/WebCore:

* platform/chromium/PlatformSupport.h:
(PlatformSupport):

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):

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

7 years ago[EFL][DRT] Correct <wtf/*.h> include paths.
paroga@webkit.org [Wed, 4 Apr 2012 18:07:39 +0000 (18:07 +0000)]
[EFL][DRT] Correct <wtf/*.h> include paths.
https://bugs.webkit.org/show_bug.cgi?id=83168

Reviewed by Eric Seidel.

Modify the #include declarations so that the
wtf types are included using the full path.

* DumpRenderTree/efl/DumpRenderTree.cpp:

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

7 years ago[Chromium] Mark svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size.html as...
dglazkov@chromium.org [Wed, 4 Apr 2012 17:50:23 +0000 (17:50 +0000)]
[Chromium] Mark svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=83183

* platform/chromium/test_expectations.txt: Registered flakes.

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

7 years agoWeb Inspector: CodeGeneratorInspector.py: switch IndexedDB, DOMStorage, ApplicationCa...
caseq@chromium.org [Wed, 4 Apr 2012 17:43:27 +0000 (17:43 +0000)]
Web Inspector: CodeGeneratorInspector.py: switch IndexedDB, DOMStorage, ApplicationCache domains to typed API
https://bugs.webkit.org/show_bug.cgi?id=83039

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-04-04
Reviewed by Pavel Feldman.

Client code is switched to typed API (all InspectorObject and InspectorArray types are
replaced with generated types from TypeBuilder according to Inspector.json).

Missing array of array specialization is added. Inspector.json is fixed to comform
with actual behavior of InspectorDOMStorageAgent.

Output parameter initialization is assured.

* inspector/CodeGeneratorInspector.py:
* inspector/Inspector.json:
* inspector/InspectorApplicationCacheAgent.cpp:
(WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
(WebCore::InspectorApplicationCacheAgent::getApplicationCacheForFrame):
(WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
* inspector/InspectorApplicationCacheAgent.h:
(InspectorApplicationCacheAgent):
* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
(WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
(WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
* inspector/InspectorDOMStorageAgent.h:
(InspectorDOMStorageAgent):
* inspector/InspectorDOMStorageResource.cpp:
(WebCore::InspectorDOMStorageResource::bind):

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

7 years ago[Chromium] Add another kind of flaky to fast/replaced/border-radius-clip.html
dglazkov@chromium.org [Wed, 4 Apr 2012 17:38:47 +0000 (17:38 +0000)]
[Chromium] Add another kind of flaky to fast/replaced/border-radius-clip.html

* platform/chromium/test_expectations.txt: Flakes registered.

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

7 years agoLayout Test media/video-beforeload-remove-source.html is timing out
fischman@chromium.org [Wed, 4 Apr 2012 17:31:54 +0000 (17:31 +0000)]
Layout Test media/video-beforeload-remove-source.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=82260

Reviewed by Eric Carlson.

Moved the beforeload listener to <head> to ensure it is registered before the
load actually happens.  Before this change, the test failed (timed out) 2/1000 runs,
after the change it had no failures in 5000 runs.

* media/video-beforeload-remove-source.html:
* platform/chromium/test_expectations.txt:

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

7 years agogtk_unittest.GtkPortTest.test_get_crash_log failing on windows
philn@webkit.org [Wed, 4 Apr 2012 17:29:23 +0000 (17:29 +0000)]
gtk_unittest.GtkPortTest.test_get_crash_log failing on windows
https://bugs.webkit.org/show_bug.cgi?id=83176

Reviewed by Tony Chang.

* Scripts/webkitpy/layout_tests/port/gtk_unittest.py:
(test_get_crash_log): Skip the test on non-linux platforms.

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

7 years ago[Qt] REGRESSION(r113141): All tests assert on 32 bit debug mode
ggaren@apple.com [Wed, 4 Apr 2012 17:17:32 +0000 (17:17 +0000)]
[Qt] REGRESSION(r113141): All tests assert on 32 bit debug mode
https://bugs.webkit.org/show_bug.cgi?id=83139

Reviewed by Sam Weinig.

* heap/PassWeak.h:
(JSC::::get): 32-bit JSValue treats JSValue(nullptr).asCell() as an error,
so work around that here. (Long-term, we should make 32-bit and 64-bit
agree on the right behavior.)

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

7 years agoRemove flex function css parsing
tony@chromium.org [Wed, 4 Apr 2012 17:13:16 +0000 (17:13 +0000)]
Remove flex function css parsing
https://bugs.webkit.org/show_bug.cgi?id=83083

Reviewed by Ojan Vafai.

Source/WebCore:

The flexbox spec switched from using a flex() function on the width
and height to a css property. Now that the -webkit-flex: has been
implemented, we can remove the flex() function code.

No new tests. Removing an old test that used to test the flex() function.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSAllInOne.cpp:
* css/CSSFlexValue.cpp: Removed.
* css/CSSFlexValue.h: Removed.
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFlex):
* css/CSSParser.h:
(WebCore):
* css/CSSStyleApplyProperty.cpp:
(WebCore::ApplyPropertyLength::applyValue):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSValue.cpp:
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):
* css/CSSValue.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleFlexibleBoxData.cpp:
(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):
* rendering/style/StyleFlexibleBoxData.h:

LayoutTests:

Remove test of -webkit-flex() function.

* css3/flexbox/flex-parsing-expected.txt: Removed.
* css3/flexbox/flex-parsing.html: Removed.
* css3/flexbox/script-tests/flex-parsing.js: Removed.

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

7 years agoUnreviewed, GTK inspector gardening.
philn@webkit.org [Wed, 4 Apr 2012 17:09:22 +0000 (17:09 +0000)]
Unreviewed, GTK inspector gardening.

* platform/gtk/Skipped:
* platform/gtk/test_expectations.txt:

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

7 years ago[Chromium] Tweak expectations for fast/canvas/canvas-overloads-strokeText.html
dglazkov@chromium.org [Wed, 4 Apr 2012 17:06:14 +0000 (17:06 +0000)]
[Chromium] Tweak expectations for fast/canvas/canvas-overloads-strokeText.html

* platform/chromium/test_expectations.txt: Tweaked.

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

7 years ago[Chromium] Marked http/tests/websocket/tests/hybi/workers/worker-reload.html as flaky...
dglazkov@chromium.org [Wed, 4 Apr 2012 17:03:59 +0000 (17:03 +0000)]
[Chromium] Marked http/tests/websocket/tests/hybi/workers/worker-reload.html as flaky fail.
https://bugs.webkit.org/show_bug.cgi?id=83173

* platform/chromium/test_expectations.txt: Added expectations.

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

7 years ago[Coverity] Address some uninit constructor values.
commit-queue@webkit.org [Wed, 4 Apr 2012 17:03:13 +0000 (17:03 +0000)]
[Coverity] Address some uninit constructor values.
https://bugs.webkit.org/show_bug.cgi?id=82424

Patch by Kausalya Madhusudhanan <kmadhusu@chromium.org> on 2012-04-04
Reviewed by Stephen White.

New tests are not required since I did not modify any code behavior. I just initialized the class member variables in the constructor.

Source/WebCore:

* Modules/gamepad/Gamepad.cpp:
(WebCore::Gamepad::Gamepad):
* accessibility/AccessibilitySpinButton.cpp:
(WebCore::AccessibilitySpinButtonPart::AccessibilitySpinButtonPart):
* dom/WheelEvent.cpp:
(WebCore::WheelEvent::WheelEvent):
* html/canvas/WebGLContextObject.h:
(WebGLContextObject):
* platform/PlatformTouchPoint.h:
(WebCore::PlatformTouchPoint::PlatformTouchPoint):
* platform/graphics/chromium/cc/CCPageScaleAnimation.cpp:
(WebCore::CCPageScaleAnimation::CCPageScaleAnimation):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::CCRenderSurface):
* xml/parser/MarkupTokenBase.h:
(WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):

Source/WebKit/chromium:

* src/DatabaseObserver.cpp:
(WebKit::AllowDatabaseMainThreadBridge::AllowDatabaseMainThreadBridge):
* src/LocalFileSystemChromium.cpp:
(WebCore):

Source/WTF:

* wtf/ArrayBufferView.cpp:
(WTF::ArrayBufferView::ArrayBufferView):

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

7 years ago[BlackBerry] Make the switch statement in WebPage::notifyAppActivationStateChange...
rwlbuis@webkit.org [Wed, 4 Apr 2012 16:59:17 +0000 (16:59 +0000)]
[BlackBerry] Make the switch statement in WebPage::notifyAppActivationStateChange() stronger
https://bugs.webkit.org/show_bug.cgi?id=83085

Reviewed by Antonio Gomes.

PR 121109

This way when we add something to the enum and forget to add to the switch we'll get a compile error.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::notifyAppActivationStateChange):

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

7 years agoWeb Inspector: Unreviewed. temporary disable broken inspector tests.
loislo@chromium.org [Wed, 4 Apr 2012 16:38:12 +0000 (16:38 +0000)]
Web Inspector: Unreviewed. temporary disable broken inspector tests.

* inspector/first-open-scripts.html.broken: Renamed from PerformanceTests/inspector/first-open-scripts.html.
* inspector/network-append-30-requests.html.broken: Renamed from PerformanceTests/inspector/network-append-30-requests.html.
* inspector/show-panel.html.broken: Renamed from PerformanceTests/inspector/show-panel.html.

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

7 years agoUnreviewed, temporary dirty hack to make Win Debug work again.
dglazkov@chromium.org [Wed, 4 Apr 2012 16:31:22 +0000 (16:31 +0000)]
Unreviewed, temporary dirty hack to make Win Debug work again.

* All.gyp: Temporarily removed TestWebKitAPI target.

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

7 years agoUnreviewed, GTK inspector gardening.
philn@webkit.org [Wed, 4 Apr 2012 16:16:54 +0000 (16:16 +0000)]
Unreviewed, GTK inspector gardening.

* platform/gtk/test_expectations.txt:

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

7 years agoWeb Inspector: expose savedURL, setToolbarColors and toggleSearchingForNode in Inspec...
pfeldman@chromium.org [Wed, 4 Apr 2012 16:10:57 +0000 (16:10 +0000)]
Web Inspector: expose savedURL, setToolbarColors and toggleSearchingForNode in InspectorFrontendAPI
https://bugs.webkit.org/show_bug.cgi?id=83170

Reviewed by Yury Semikhatsky.

Chromium port is calling these from the embedder layer and they all are perfect candidates
for the InspectorFrontendAPI. Adding them there.

* inspector/front-end/InspectorFrontendAPI.js:
(InspectorFrontendAPI.enterInspectElementMode):
(InspectorFrontendAPI.savedURL):
(InspectorFrontendAPI.setToolbarColors):

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

7 years ago[EFL] DRT support for computedStyleIncludingVisitedInfo
rakuco@webkit.org [Wed, 4 Apr 2012 16:03:56 +0000 (16:03 +0000)]
[EFL] DRT support for computedStyleIncludingVisitedInfo
https://bugs.webkit.org/show_bug.cgi?id=82190

Source/WebKit/efl:

Add missing implementation computedStyleIncludingVisitedInfo to EFL's
DumpRenderTreeSupport.

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

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

Tools:

Adding missing implementation computedStyleIncludingVisitedInfo to EFL's
LayoutTestController so that we can unskip related tests from the skip list.

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

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

LayoutTests:

Unskip tests connected with computedStyleIncludingVisitedInfo().

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

* platform/efl/Skipped:

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

7 years ago[Qt] Entire page highlighted on panning.
commit-queue@webkit.org [Wed, 4 Apr 2012 15:52:11 +0000 (15:52 +0000)]
[Qt] Entire page highlighted on panning.
https://bugs.webkit.org/show_bug.cgi?id=83158

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

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

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

7 years agoWeb Inspector: linearise aggregate's retaining size calculation.
loislo@chromium.org [Wed, 4 Apr 2012 15:49:59 +0000 (15:49 +0000)]
Web Inspector: linearise aggregate's retaining size calculation.
https://bugs.webkit.org/show_bug.cgi?id=83125

This version is twice as fast as the original and it is non-recursive.

Reviewed by Yury Semikhatsky.

PerformanceTests:

* inspector/detailed-heapshots-smoke-test.html:

Source/WebCore:

* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshot.prototype._getDominatedIndex): was moved closer to it's usage
(WebInspector.HeapSnapshot.prototype._calculateClassesRetainedSize): it was _buildAggregates' inner function forDominatedNodes.
it was:
a) extracted from _buildAggregates;
b) made non-recursive;
c) many getters were inlined;
d) subarray of dominating nodes were inlined too.
(WebInspector.HeapSnapshot.prototype._buildAggregates): many getters were inlined.
(WebInspector.HeapSnapshot.prototype.aggregates):

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

7 years agoSource/WebCore: Best clickable node might return non "clickable" node.
commit-queue@webkit.org [Wed, 4 Apr 2012 15:42:02 +0000 (15:42 +0000)]
Source/WebCore: Best clickable node might return non "clickable" node.
https://bugs.webkit.org/show_bug.cgi?id=83153

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

Do not return non-clickable nodes as a best clickable node.

* page/EventHandler.cpp:
(WebCore::EventHandler::bestClickableNodeForTouchPoint):

LayoutTests: Best clickable node might return non "clickable" node.
https://bugs.webkit.org/show_bug.cgi?id=83153

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

* touchadjustment/touch-inlines-expected.txt:
* touchadjustment/touch-inlines.html:

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

7 years agoWeb Inspector: migrate from InspectorFrontendHost.saveAs to InspectorFrontendHost...
pfeldman@chromium.org [Wed, 4 Apr 2012 15:40:13 +0000 (15:40 +0000)]
Web Inspector: migrate from InspectorFrontendHost.saveAs to InspectorFrontendHost.save.
https://bugs.webkit.org/show_bug.cgi?id=83162

Reviewed by Yury Semikhatsky.

Source/WebCore:

This change adds Save item into the context menus for inspector. It also makes
saveAs parameter optional in the InspectorFrontendHost.save so that we could
skip the dialog for the paths that were already saved. Embedder tells the front-end
what urls were successfully saved so that front-end could issue subsequent save commands
for those files.

* English.lproj/localizedStrings.js:
* inspector/InspectorFrontendClient.h:
(InspectorFrontendClient):
* inspector/InspectorFrontendClientLocal.h:
(WebCore::InspectorFrontendClientLocal::canSave):
(WebCore::InspectorFrontendClientLocal::save):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::canSave):
(WebCore::InspectorFrontendHost::save):
* inspector/InspectorFrontendHost.h:
(InspectorFrontendHost):
* inspector/InspectorFrontendHost.idl:
* inspector/front-end/InspectorFrontendHostStub.js:
(.WebInspector.InspectorFrontendHostStub.prototype.canSave):
* inspector/front-end/JavaScriptSourceFrame.js:
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._contextMenu):
(WebInspector.NetworkLogView.prototype._exportAll):
(WebInspector.NetworkLogView.prototype._exportResource):
* inspector/front-end/ResourceView.js:
* inspector/front-end/ResourcesPanel.js:
(WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction.doSave):
(WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction.save):
(WebInspector.FrameResourceTreeElement.prototype._appendSaveAsAction):
(WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent.doSave):
(WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent.save):
(WebInspector.ResourceRevisionTreeElement.prototype._handleContextMenuEvent):
* inspector/front-end/Settings.js:
* inspector/front-end/SourceFrame.js:
(WebInspector.TextViewerDelegateForSourceFrame.prototype.populateTextAreaContextMenu):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype._contextMenu):
(WebInspector.TextViewer.prototype._commitEditing):
(WebInspector.TextViewerDelegate.prototype.populateTextAreaContextMenu):
* inspector/front-end/TimelineModel.js:
(WebInspector.TimelineModel.prototype.saveToFile):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._registerShortcuts):
(WebInspector.TimelinePanel.prototype._contextMenu):
* inspector/front-end/inspector.js:

Source/WebKit/chromium:

* public/WebDevToolsFrontendClient.h:
* src/InspectorFrontendClientImpl.cpp:
(WebKit::InspectorFrontendClientImpl::canSave):
(WebKit::InspectorFrontendClientImpl::save):
* src/InspectorFrontendClientImpl.h:
(InspectorFrontendClientImpl):

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

7 years agoWeb Inspector: time dividers are incorrectly rendered on empty timeline grid
caseq@chromium.org [Wed, 4 Apr 2012 15:23:52 +0000 (15:23 +0000)]
Web Inspector: time dividers are incorrectly rendered on empty timeline grid
https://bugs.webkit.org/show_bug.cgi?id=83165

Reviewed by Pavel Feldman.

* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkBaseCalculator.prototype.setDisplayWindow):
* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid.prototype.updateDividers):

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

7 years ago[GTK] ASSERT in SocketStreamHandleSoup.cpp
sergio@webkit.org [Wed, 4 Apr 2012 15:15:25 +0000 (15:15 +0000)]
[GTK] ASSERT in SocketStreamHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=83123

Reviewed by Martin Robinson.

Do not try to reuse a GOwnPtr as calling outPtr() causes an
assertion if the pointer is already valid. Also do not try to
close the IOStream if it was not created.

This patch fixes
http/tests/websocket/tests/hybi/workers/worker-reload.html but I
am leaving it skipped until webkit.org/b/83124 is fixed.

* platform/network/soup/SocketStreamHandleSoup.cpp:
(WebCore::connectedCallback):

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

7 years ago[Qt] Unreviewed gardening, skip failing tests to try to paint ARM and Mac bots green.
ossy@webkit.org [Wed, 4 Apr 2012 15:05:14 +0000 (15:05 +0000)]
[Qt] Unreviewed gardening, skip failing tests to try to paint ARM and Mac bots green.

* platform/qt-arm/Skipped:
* platform/qt-mac/Skipped:

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

7 years agoRe-add variable names in CSS related headers to help understanding the meaning of...
alexis.menard@openbossa.org [Wed, 4 Apr 2012 14:26:38 +0000 (14:26 +0000)]
Re-add variable names in CSS related headers to help understanding the meaning of them.
https://bugs.webkit.org/show_bug.cgi?id=83151

Reviewed by Andreas Kling.

r112952, r113031, r113042 removed variable names in some places but at the end it
was better before as it helps understanding what the variables represent. This patch
address this issue and add back the names where it makes sense.

No new tests : cosmetic changes, no behavior change here.

* css/CSSParser.h:
(CSSParser):
* css/StylePropertySet.h:
(StylePropertySet):
* dom/StyledElement.h:
(StyledElement):
* editing/EditingStyle.h:
(EditingStyle):
* editing/Editor.h:
(Editor):
* html/HTMLElement.h:
(HTMLElement):

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

7 years agoUnreviewed; update my email address once again in the committers
rakuco@webkit.org [Wed, 4 Apr 2012 14:11:34 +0000 (14:11 +0000)]
Unreviewed; update my email address once again in the committers
and watch list.

* Scripts/webkitpy/common/config/committers.py: Prefer my
webkit.org email over my FreeBSD.org one.
* Scripts/webkitpy/common/config/watchlist: Ditto.

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

7 years agoUnreviewed. Layout Test fast/canvas/canvas-toDataURL-webp.html is crashing
noel.gordon@gmail.com [Wed, 4 Apr 2012 14:06:27 +0000 (14:06 +0000)]
Unreviewed. Layout Test fast/canvas/canvas-toDataURL-webp.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=81735

Test expectations update. Fixed in http://crrev.com/129144.

* platform/chromium/test_expectations.txt:

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

7 years agoImplement animatedPathSegList support for SVGPathElement
zimmermann@webkit.org [Wed, 4 Apr 2012 13:52:46 +0000 (13:52 +0000)]
Implement animatedPathSegList support for SVGPathElement
https://bugs.webkit.org/show_bug.cgi?id=83140

Reviewed by Zoltan Herczeg.

Source/WebCore:

Add the last missing piece of animVal support: animations of the SVGPathElement's 'd' attribute
should be reflected in the 'animatedPathSegList' not the 'pathSegList'.

The SVGAnimatedPathAnimator is special as it doesn't operate on the SVGPathSegList types
directly, but on the SVGPathByteStreams for performance reasons. The SVGPathSegLists
are refcounted and exposed to JS, thus require lots of memory, compared to a simple
byte stream, which SVGPathByteStream is. Only build an 'animatedPathSegList' while
animating if its actually observed by the bindings, as this operation is heavy.

This marks the finish of the animVal patch series: no more string round trips during
animation. Previously paths were animated as byte streams, then converted to a String
passed to pathElement->setAttribute("d", "newString"), parsed again to a byte stream, etc.

A follow-up patch will remove the last crufts of direct setAttribute() animation.

Extend all existing animated SVGPathElement tests to cover animatedPathSegList.

* svg/SVGAnimatedColor.h:
(WebCore::SVGAnimatedColorAnimator::startAnimValAnimation):
(WebCore::SVGAnimatedColorAnimator::stopAnimValAnimation):
(WebCore::SVGAnimatedColorAnimator::resetAnimValToBaseVal):
(WebCore::SVGAnimatedColorAnimator::animValWillChange):
(WebCore::SVGAnimatedColorAnimator::animValDidChange):
(SVGAnimatedColorAnimator):
* svg/SVGAnimatedPath.cpp:
(WebCore::SVGAnimatedPathAnimator::constructFromString):
(WebCore::SVGAnimatedPathAnimator::startAnimValAnimation):
(WebCore):
(WebCore::SVGAnimatedPathAnimator::stopAnimValAnimation):
(WebCore::SVGAnimatedPathAnimator::resetAnimValToBaseVal):
(WebCore::SVGAnimatedPathAnimator::animValWillChange):
(WebCore::SVGAnimatedPathAnimator::animValDidChange):
(WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):
* svg/SVGAnimatedPath.h:
(SVGAnimatedPathAnimator):
* svg/SVGAnimatedType.cpp:
(WebCore::SVGAnimatedType::valueAsString):
(WebCore::SVGAnimatedType::setValueAsString):
(WebCore::SVGAnimatedType::supportsAnimVal):
* svg/SVGAnimatedTypeAnimator.h:
(SVGAnimatedTypeAnimator):
(WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
* svg/SVGPathElement.cpp:
(WebCore::SVGPathElement::SVGPathElement):
(WebCore::SVGPathElement::getTotalLength):
(WebCore::SVGPathElement::getPointAtLength):
(WebCore::SVGPathElement::getPathSegAtLength):
(WebCore::SVGPathElement::parseAttribute):
(WebCore::SVGPathElement::svgAttributeChanged):
(WebCore::SVGPathElement::pathByteStream):
(WebCore):
(WebCore::SVGPathElement::lookupOrCreateDWrapper):
(WebCore::SVGPathElement::pathSegList):
(WebCore::SVGPathElement::animatedPathSegList):
(WebCore::SVGPathElement::pathSegListChanged):
* svg/SVGPathElement.h:
(WebCore):
(SVGPathElement):
(WebCore::SVGPathElement::isAnimValObserved):
* svg/SVGPathParserFactory.cpp:
(WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromSVGPathSegList):
(WebCore::SVGPathParserFactory::buildSVGPathByteStreamFromString):
(WebCore::SVGPathParserFactory::buildAnimatedSVGPathByteStream):
* svg/SVGPathParserFactory.h:
(SVGPathParserFactory):
* svg/SVGPathSegWithContext.h:
* svg/properties/SVGAnimatedListPropertyTearOff.h:
(SVGAnimatedListPropertyTearOff):
(WebCore::SVGAnimatedListPropertyTearOff::baseVal):
(WebCore::SVGAnimatedListPropertyTearOff::animVal):
(WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList):
(WebCore::SVGAnimatedListPropertyTearOff::detachListWrappers):
(WebCore::SVGAnimatedListPropertyTearOff::currentAnimatedValue):
(WebCore::SVGAnimatedListPropertyTearOff::animationStarted):
(WebCore::SVGAnimatedListPropertyTearOff::animationEnded):
(WebCore::SVGAnimatedListPropertyTearOff::synchronizeWrappersIfNeeded):
* svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:
(WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::removeItemFromList):
(SVGAnimatedPathSegListPropertyTearOff):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::animationStarted):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::animationEnded):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::animValDidChange):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::animatedPathByteStream):
(WebCore::SVGAnimatedPathSegListPropertyTearOff::SVGAnimatedPathSegListPropertyTearOff):
* svg/properties/SVGAnimatedTransformListPropertyTearOff.h:
(WebCore::SVGAnimatedTransformListPropertyTearOff::baseVal):
(WebCore::SVGAnimatedTransformListPropertyTearOff::animVal):
* svg/properties/SVGListProperty.h:
(WebCore::SVGListProperty::setValuesAndWrappers):
(WebCore::SVGListProperty::SVGListProperty):
(WebCore::SVGListProperty::~SVGListProperty):
(SVGListProperty):

LayoutTests:

Update all tests animating the SVGPathElement's 'd' attribute to verify 'animatedPathSegList' now gets animated, not 'pathSegList'.

* svg/animations/animate-path-animation-Cc-Ss-expected.txt:
* svg/animations/animate-path-animation-Ll-Vv-Hh-expected.txt:
* svg/animations/animate-path-animation-Qq-Tt-expected.txt:
* svg/animations/animate-path-animation-cC-sS-inverse-expected.txt:
* svg/animations/animate-path-animation-lL-vV-hH-inverse-expected.txt:
* svg/animations/animate-path-animation-qQ-tT-inverse-expected.txt:
* svg/animations/animate-path-to-animation-expected.txt:
* svg/animations/script-tests/animate-path-animation-Cc-Ss.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-animation-Ll-Vv-Hh.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-animation-Qq-Tt.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-animation-cC-sS-inverse.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-animation-lL-vV-hH-inverse.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-animation-qQ-tT-inverse.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
(sample4):
* svg/animations/script-tests/animate-path-to-animation.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
* svg/animations/script-tests/svgpath-animation-1.js:
(checkBaseVal):
(sample1):
(sample2):
(sample3):
* svg/animations/script-tests/svgtransform-animation-1.js:
* svg/animations/svgpath-animation-1-expected.txt:

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

7 years ago[Qt][WK2] QtWebKit2 should support Page Visibility API
commit-queue@webkit.org [Wed, 4 Apr 2012 13:35:33 +0000 (13:35 +0000)]
[Qt][WK2] QtWebKit2 should support Page Visibility API
https://bugs.webkit.org/show_bug.cgi?id=81164

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-04-04
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Implementing the last bits needed for getting the expected
behavior for Page Visibility API, according to its spec.
The only missing part in Qt was a way to check whether
the view was exposed or not.

* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::isViewVisible):

Tools:

Enabling Page Visiblity API for Qt WebKit2.

* qmake/mkspecs/features/features.prf:

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

7 years agoUnreviewed, GTK inspector gardening.
philn@webkit.org [Wed, 4 Apr 2012 13:20:45 +0000 (13:20 +0000)]
Unreviewed, GTK inspector gardening.

* platform/gtk/test_expectations.txt:

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

7 years ago[WK2] Add Page Visibility API support
commit-queue@webkit.org [Wed, 4 Apr 2012 13:10:28 +0000 (13:10 +0000)]
[WK2] Add Page Visibility API support
https://bugs.webkit.org/show_bug.cgi?id=81154

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-04-04
Reviewed by Kenneth Rohde Christiansen.

Use WebPageProxy::viewStateDidChange to correctly define the page's
visibilityState and then set it to the WebProcess. The WebKit2's based
ports just need to implement the related PageClient functions in order
to get this API enabled and working properly.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::initializeWebPage):
(WebKit::WebPageProxy::viewStateDidChange):
* WebProcess/WebPage/WebPage.cpp:
(WebKit):
(WebKit::WebPage::setVisibilityState):
* WebProcess/WebPage/WebPage.h:
(WebPage):
* WebProcess/WebPage/WebPage.messages.in:

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

7 years agoBest zoomable area does not balance intersection with target area.
commit-queue@webkit.org [Wed, 4 Apr 2012 12:47:54 +0000 (12:47 +0000)]
Best zoomable area does not balance intersection with target area.
https://bugs.webkit.org/show_bug.cgi?id=83148

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

Source/WebCore:

Change the two step sort to simply picking the best quotient of touch intersection with target area.

Test: touchadjustment/zoom-fatfinger.html

* page/TouchAdjustment.cpp:
(WebCore::TouchAdjustment::distanceSquaredToTargetCenterLine):
(TouchAdjustment):
(WebCore::TouchAdjustment::zoomableIntersectionQuotient):
(WebCore::TouchAdjustment::findNodeWithLowestDistanceMetric):
(WebCore::findBestClickableCandidate):
(WebCore::findBestZoomableArea):

LayoutTests:

* touchadjustment/zoom-fatfinger-expected.txt: Added.
* touchadjustment/zoom-fatfinger.html: Added.

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

7 years ago[EFL][DRT] FrameloaderClientEfl needs to handle media content correctly
commit-queue@webkit.org [Wed, 4 Apr 2012 12:43:45 +0000 (12:43 +0000)]
[EFL][DRT] FrameloaderClientEfl needs to handle media content correctly
https://bugs.webkit.org/show_bug.cgi?id=83020

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

Source/WebKit/efl:

Implementing handling of media content type and media documents
in the respective FrameLoaderClientEfl callbacks.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::committedLoad): Cancel loading for media documents.
(WebCore::FrameLoaderClientEfl::canShowMIMEType): Let media content types through.
(WebCore):
(WebCore::FrameLoaderClientEfl::pluginWillHandleLoadError): Returning appropriate error type.
(WebCore::FrameLoaderClientEfl::shouldFallBack): Falling back as well for media handled by media player.

LayoutTests:

* platform/efl/Skipped: Unskipping those MediaDocument related cases which now pass.

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

7 years agoWeb Inspector: make padding and client window width part of timeline calculator's...
caseq@chromium.org [Wed, 4 Apr 2012 12:41:45 +0000 (12:41 +0000)]
Web Inspector: make padding and client window width part of timeline calculator's state
https://bugs.webkit.org/show_bug.cgi?id=83122

Reviewed by Pavel Feldman.

Source/WebCore:

- preserve window width and padding within TimelineCalculator
- rely on calculator to add expansion arrow padding
- add TimelineCalculator::computePosition() for computing single position (not entire bar dimensions)

* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics.prototype._refreshDividers):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._updateDividersIfNeeded):
(WebInspector.NetworkLogView.prototype._reset):
(WebInspector.NetworkBaseCalculator.prototype.computePosition):
(WebInspector.NetworkBaseCalculator.prototype.formatTime):
(WebInspector.NetworkBaseCalculator.prototype.setDisplayWindow):
* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid.prototype.updateDividers):
(WebInspector.TimelineGrid.prototype.addEventDividers):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane.prototype._update):
(WebInspector.TimelineOverviewPane.prototype._reset):
(WebInspector.TimelineOverviewCalculator.prototype.computePosition):
(WebInspector.TimelineOverviewCalculator.prototype.setDisplayWindow):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._updateEventDividers):
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._refreshRecords):
(WebInspector.TimelineCalculator.prototype.computePosition):
(WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
(WebInspector.TimelineCalculator.prototype.setDisplayWindow):
(WebInspector.TimelineRecordGraphRow.prototype.update):
(WebInspector.TimelineExpandableElement.prototype._update):

LayoutTests:

- re-enable 4 injspector tests skipped after previous landing attempt.

* platform/gtk/Skipped:

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

7 years agoWebSpeechRecognizer.h: add missing forward declaration
hans@chromium.org [Wed, 4 Apr 2012 12:34:09 +0000 (12:34 +0000)]
WebSpeechRecognizer.h: add missing forward declaration
https://bugs.webkit.org/show_bug.cgi?id=83150

Reviewed by Tony Gentilcore.

Add missing forward declaration of WebSpeechRecognitionParams.

* public/WebSpeechRecognizer.h:
(WebKit):

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

7 years ago[Qt] Further improvements of the tap gesture recognizer
kenneth@webkit.org [Wed, 4 Apr 2012 12:32:53 +0000 (12:32 +0000)]
[Qt] Further improvements of the tap gesture recognizer
https://bugs.webkit.org/show_bug.cgi?id=83149

Reviewed by Zoltan Herczeg.

Ignore single tap while finger is still pressed.
Some renaming to make the states more clear.
A pan further than the maxPanDistance can now invalidate
double-taps as well.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
(WebKit::QtTapGestureRecognizer::recognize):
(WebKit::QtTapGestureRecognizer::singleTapTimeout):
(WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
(WebKit::QtTapGestureRecognizer::reset):
* UIProcess/qt/QtTapGestureRecognizer.h:

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

7 years ago[FileSystem] Forward declare File in FileCallback.h
noel.gordon@gmail.com [Wed, 4 Apr 2012 12:31:28 +0000 (12:31 +0000)]
[FileSystem] Forward declare File in FileCallback.h
https://bugs.webkit.org/show_bug.cgi?id=83128

Reviewed by Kentaro Hara.

No new tests. Covered by existing tests.

* Modules/filesystem/FileCallback.h: forward declare File class to make
#include of "File.h" redundant.
(WebCore):

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

7 years ago[EFL] Change ewk_settings_icon_database_icon_object_add to proper API name.
commit-queue@webkit.org [Wed, 4 Apr 2012 12:24:31 +0000 (12:24 +0000)]
[EFL] Change ewk_settings_icon_database_icon_object_add to proper API name.
https://bugs.webkit.org/show_bug.cgi?id=82438

Patch by Grzegorz Czajkowski <g.czajkowski@samsung.com> on 2012-04-04
Reviewed by Andreas Kling.

The purpose of ewk_settings_icon_database_icon_object_add is to get icon
for the given URL. This function doesn't add anything to database.
Documentation and API name are adjusted.

* ewk/ewk_settings.cpp:
(ewk_settings_icon_database_icon_object_get):
* ewk/ewk_settings.h:

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

7 years ago[Qt][WK2] Make the WebView a subclass of Flickable
abecsi@webkit.org [Wed, 4 Apr 2012 12:21:14 +0000 (12:21 +0000)]
[Qt][WK2] Make the WebView a subclass of Flickable
https://bugs.webkit.org/show_bug.cgi?id=83033

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit/qt:

Add needed dependency to quick-private for projects that include the WebView header.

* declarative/experimental/experimental.pri:
* declarative/public.pri:

Source/WebKit2:

Hitherto, the experiment of a QML WebView with an internal Flickable
instance showed that the approach of hiding the Flickable raises more
problems than it solves.

One set of problems arose because the internal Flickable was a separate
item which received and reacted on automatically synthesized mouse events
send by the canvas, this interfered with the gesture recognizers of the
WebView.

Other issues were related to orientation and the integration of the
WebView item with other QML items and components (like scroll indicators)
which require a larger set of the Flickable API or the Flickable object
itself (e.g. ScrollDecorator).

These disadvantages of an internal Flickable instance outweigh the
benefits of controlling the exposed API, therefore the experiment had
the conclusion that there is no way around the public inheritance from
QQuickFlickable.

This patch removes the QtFlickProvider class, inherits QQuickWebView
from QQuickFlickable and adjusts the viewport interaction engine and
the gesture recognizers to use the Flickable API of the WebView to
keep the same behaviour as before.

* Target.pri:
* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPage::QQuickWebPage):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate::initialize):
(QQuickWebViewFlickablePrivate::pageItemPos):
(QQuickWebViewFlickablePrivate::updateContentsSize):
(QQuickWebViewFlickablePrivate::onComponentComplete):
(QQuickWebViewFlickablePrivate::updateViewportSize):
(QQuickWebViewExperimental::useDefaultContentItemSize):
(QQuickWebViewExperimental::setUseDefaultContentItemSize):
(QQuickWebView::QQuickWebView):
(QQuickWebView::inputMethodQuery):
(QQuickWebView::geometryChanged):
(QQuickWebView::componentComplete):
(QQuickWebView::event):
(QQuickWebView::contentPos):
(QQuickWebView::setContentPos):
(QQuickWebView::handlePress):
(QQuickWebView::handleMove):
(QQuickWebView::handleRelease):
* UIProcess/API/qt/qquickwebview_p.h:
(WebKit):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
(tst_QQuickWebView::scrollRequest):
* UIProcess/API/qt/tests/tests.pri:
* UIProcess/qt/QtFlickProvider.cpp: Removed.
* UIProcess/qt/QtFlickProvider.h: Removed.
* UIProcess/qt/QtPanGestureRecognizer.cpp:
(WebKit::QtPanGestureRecognizer::recognize):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
(WebKit::QtViewportInteractionEngine::setItemRectVisible):
(WebKit::QtViewportInteractionEngine::flickableMoveStarted):
(WebKit::QtViewportInteractionEngine::flickableMoveEnded):
(WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
(WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
(WebKit::QtViewportInteractionEngine::wheelEvent):
(WebKit::QtViewportInteractionEngine::reset):
(WebKit::QtViewportInteractionEngine::scrollAnimationActive):
(WebKit::QtViewportInteractionEngine::panGestureActive):
(WebKit::QtViewportInteractionEngine::panGestureStarted):
(WebKit::QtViewportInteractionEngine::panGestureRequestUpdate):
(WebKit::QtViewportInteractionEngine::panGestureEnded):
(WebKit::QtViewportInteractionEngine::panGestureCancelled):
(WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
(WebKit::QtViewportInteractionEngine::pinchGestureStarted):
(WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
(WebKit::QtViewportInteractionEngine::pinchGestureEnded):
(WebKit::QtViewportInteractionEngine::scaleContent):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::doneWithTouchEvent):

Tools:

Remove workaround in MiniBrowser and the ScrollIndicator
now that the WebView is a Flickable.

* MiniBrowser/qt/MiniBrowser.pro:
* MiniBrowser/qt/qml/BrowserWindow.qml:
* MiniBrowser/qt/qml/ScrollIndicator.qml:
* WebKitTestRunner/Target.pri:

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

7 years agoREGRESSION(r113144): It made run-webkit-tests always fail
ossy@webkit.org [Wed, 4 Apr 2012 12:19:14 +0000 (12:19 +0000)]
REGRESSION(r113144): It made run-webkit-tests always fail
https://bugs.webkit.org/show_bug.cgi?id=83142

Unreviewed trivial fix after r113144.

* Scripts/run-webkit-tests:

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

7 years ago[Qt] Unable to zoom to some areas.
commit-queue@webkit.org [Wed, 4 Apr 2012 12:01:15 +0000 (12:01 +0000)]
[Qt] Unable to zoom to some areas.
https://bugs.webkit.org/show_bug.cgi?id=83144

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

Remember to convert touch-area to touch-point radius.

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

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

7 years agoUnreviewed, rolling out r113156.
commit-queue@webkit.org [Wed, 4 Apr 2012 11:52:43 +0000 (11:52 +0000)]
Unreviewed, rolling out r113156.
http://trac.webkit.org/changeset/113156
https://bugs.webkit.org/show_bug.cgi?id=83146

Breaks inspector layout tests (Requested by pfeldman on
#webkit).

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

* inspector/front-end/MemoryStatistics.js:
(WebInspector.MemoryStatistics.prototype._refreshDividers):
* inspector/front-end/TimelineGrid.js:
(WebInspector.TimelineGrid.prototype.updateDividers):
(WebInspector.TimelineGrid.prototype.addEventDividers):
* inspector/front-end/TimelineOverviewPane.js:
(WebInspector.TimelineOverviewPane.prototype._update):
(WebInspector.TimelineOverviewPane.prototype._reset):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._updateEventDividers):
(WebInspector.TimelinePanel.prototype._refresh):
(WebInspector.TimelinePanel.prototype._refreshRecords):
(WebInspector.TimelinePanel.prototype.get timelinePaddingLeft):
(WebInspector.TimelineCalculator.prototype.computeBarGraphWindowPosition):
(WebInspector.TimelineRecordGraphRow.prototype.update):
(WebInspector.TimelineExpandableElement.prototype._update):

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

7 years ago[Qt] Unreviewed gardening
ossy@webkit.org [Wed, 4 Apr 2012 11:37:24 +0000 (11:37 +0000)]
[Qt] Unreviewed gardening
https://bugs.webkit.org/show_bug.cgi?id=83057
New test flakey on Qt Linux Release introduced in r113086

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

* platform/qt/Skipped: fast/dom/inline-event-attributes-release.html

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

7 years agoWeb Inspector: front-end should accept raw web socket address for the remote connection.
pfeldman@chromium.org [Wed, 4 Apr 2012 11:19:40 +0000 (11:19 +0000)]
Web Inspector: front-end should accept raw web socket address for the remote connection.
https://bugs.webkit.org/show_bug.cgi?id=83134

Reviewed by Yury Semikhatsky.

Migrated from the /devtools/page web socket schema to the generic one where remote target address
can be specified as index.html?ws=localhost:9222/page1. Left the old host/page way for backwards
compatibility.

* inspector/front-end/inspector.js:

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

7 years agoAdd localization functions for the calendar picker
tkent@chromium.org [Wed, 4 Apr 2012 11:06:03 +0000 (11:06 +0000)]
Add localization functions for the calendar picker
https://bugs.webkit.org/show_bug.cgi?id=83129

Reviewed by Hajime Morita.

No behavior changes yet.

* WebCore.gypi: Add LocalizedCalendar.h and LocalizedCalendarICU.cpp.
* platform/LocalizedStrings.h: Add calendarTodayText() and calendarClearText().
* platform/text/LocalizedCalendar.h:
Added. This provides monthLabels(), weekDayShortLabels(), and firstDayOfWeek().
* platform/text/LocalizedCalendarICU.cpp: Added. ICU implementations of the above functions.
(WebCore::ScopedDateFormat): A wrapper for UDateFormat*.
(WebCore::ScopedDateFormat::ScopedDateFormat):
(WebCore::ScopedDateFormat::~ScopedDateFormat):
(WebCore::ScopedDateFormat::get):
(createFallbackMonthLabels): Creates fallback month labels in English.
(createLabelVector):
A helper for createMonthLabels() and createWeekDayShortLabels().
(createMonthLabels):
Creates month labels using createLabelVector() or createFallbackMonthLabels().
(WebCore::monthLabels):
(createFallbackWeekDayShortLabels): Creates fallback week labels in English.
(createWeekDayShortLabels):
Creates month labels using createLabelVector() or createFallbackWeekDayShortLabels().
(WebCore::weekDayShortLabels):
(getFirstDayOfWeek):
(WebCore::firstDayOfWeek):

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

7 years ago[Qt] Improve the tap gesture recognizer
kenneth@webkit.org [Wed, 4 Apr 2012 11:00:21 +0000 (11:00 +0000)]
[Qt] Improve the tap gesture recognizer
https://bugs.webkit.org/show_bug.cgi?id=83135

Reviewed by Simon Hausmann.

Clean up the code and make sure that the first single tap
event, as part of a double tap gesture, is ignored.

* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::withinDistance):
(WebKit):
(WebKit::QtTapGestureRecognizer::recognize):
(WebKit::QtTapGestureRecognizer::singleTapTimeout):
(WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
(WebKit::QtTapGestureRecognizer::reset):
* UIProcess/qt/QtTapGestureRecognizer.h:
(QtTapGestureRecognizer):

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

7 years agoSpeech JavaScript API: Plumbing for Chromium
hans@chromium.org [Wed, 4 Apr 2012 10:56:25 +0000 (10:56 +0000)]
Speech JavaScript API: Plumbing for Chromium
https://bugs.webkit.org/show_bug.cgi?id=81667

Reviewed by Darin Fisher.

Source/WebCore:

SpeechGrammar::src() is called with a ScriptExecutionContext, because
the attribute setter needs it. Provide a src() method that doesn't
take a ScriptExecutionContext that can be used internally.

Rename SpeechRecognition::audioStartCallback(), etc. to use event style
names, i.e. didStartAudio(), etc.

Remove SpeechRecognitionClient::notifyVisibilityHidden(). The embedder
can keep track of the visibility.

Remove SpeechRecognitionClient::unregisterSpeechRecognition,
it is not needed.

No new tests, just minor tweaks.

* Modules/speech/SpeechGrammar.h:
(WebCore::SpeechGrammar::src):
* Modules/speech/SpeechRecognition.cpp:
(WebCore::SpeechRecognition::didStartAudio):
(WebCore::SpeechRecognition::didStartSound):
(WebCore::SpeechRecognition::didStartSpeech):
(WebCore::SpeechRecognition::didEndSpeech):
(WebCore::SpeechRecognition::didEndSound):
(WebCore):
(WebCore::SpeechRecognition::didEndAudio):
(WebCore::SpeechRecognition::didReceiveResult):
(WebCore::SpeechRecognition::didReceiveNoMatch):
(WebCore::SpeechRecognition::didDeleteResult):
(WebCore::SpeechRecognition::didReceiveError):
(WebCore::SpeechRecognition::didStart):
(WebCore::SpeechRecognition::didEnd):
* Modules/speech/SpeechRecognition.h:
(SpeechRecognition):
* Modules/speech/SpeechRecognitionClient.h:
(SpeechRecognitionClient):
* Modules/speech/SpeechRecognitionController.h:

Source/WebKit/chromium:

Add plumbing for speech recognition.

The implementer is expected to implement the WebSpeechRecognizer interface.
The start(), stop(), and abort() functions of that interface take a
WebSpeechRecognitionHandle argument, which identifies the object which has
requested the action, and a pointer to a WebSpeechRecognitionClient interface,
through which it should send back notifications on progress, errors, etc.

SpeechRecognitionClientProxy passes data between the WebCore and WebKit layers,
implementing the WebCore::SpeechRecognitionClient and WebKit::WebSpeechRecognizerClient
interfaces.

* WebKit.gyp:
* public/WebSpeechGrammar.h:
(WebCore):
(WebKit):
(WebSpeechGrammar):
(WebKit::WebSpeechGrammar::WebSpeechGrammar):
(WebKit::WebSpeechGrammar::~WebSpeechGrammar):
* public/WebSpeechRecognitionHandle.h: Added.
(WebCore):
(WebKit):
(WebSpeechRecognitionHandle):
(WebKit::WebSpeechRecognitionHandle::~WebSpeechRecognitionHandle):
(WebKit::WebSpeechRecognitionHandle::WebSpeechRecognitionHandle):
(WebKit::WebSpeechRecognitionHandle::operator=):
(WebKit::operator==):
(WebKit::operator!=):
(WebKit::operator<):
* public/WebSpeechRecognitionParams.h:
(WebKit):
(WebSpeechRecognitionParams):
(WebKit::WebSpeechRecognitionParams::grammars):
(WebKit::WebSpeechRecognitionParams::language):
(WebKit::WebSpeechRecognitionParams::continuous):
* public/WebSpeechRecognitionResult.h: Added.
(WebCore):
(WebKit):
(WebSpeechRecognitionResult):
(WebKit::WebSpeechRecognitionResult::WebSpeechRecognitionResult):
(WebKit::WebSpeechRecognitionResult::~WebSpeechRecognitionResult):
* public/WebSpeechRecognizer.h:
(WebKit):
(WebSpeechRecognizer):
(WebKit::WebSpeechRecognizer::start):
(WebKit::WebSpeechRecognizer::stop):
(WebKit::WebSpeechRecognizer::abort):
(WebKit::WebSpeechRecognizer::~WebSpeechRecognizer):
* public/WebSpeechRecognizerClient.h: Added.
(WebKit):
(WebSpeechRecognizerClient):
* public/WebViewClient.h:
(WebKit):
(WebViewClient):
(WebKit::WebViewClient::speechRecognizer):
* src/SpeechRecognitionClientProxy.cpp: Added.
(WebKit):
(WebKit::SpeechRecognitionClientProxy::~SpeechRecognitionClientProxy):
(WebKit::SpeechRecognitionClientProxy::create):
(WebKit::SpeechRecognitionClientProxy::start):
(WebKit::SpeechRecognitionClientProxy::stop):
(WebKit::SpeechRecognitionClientProxy::abort):
(WebKit::SpeechRecognitionClientProxy::didStartAudio):
(WebKit::SpeechRecognitionClientProxy::didStartSound):
(WebKit::SpeechRecognitionClientProxy::didStartSpeech):
(WebKit::SpeechRecognitionClientProxy::didEndSpeech):
(WebKit::SpeechRecognitionClientProxy::didEndSound):
(WebKit::SpeechRecognitionClientProxy::didEndAudio):
(WebKit::SpeechRecognitionClientProxy::didReceiveResult):
(WebKit::SpeechRecognitionClientProxy::didReceiveNoMatch):
(WebKit::SpeechRecognitionClientProxy::didDeleteResult):
(WebKit::SpeechRecognitionClientProxy::didReceiveError):
(WebKit::SpeechRecognitionClientProxy::didStart):
(WebKit::SpeechRecognitionClientProxy::didEnd):
(WebKit::SpeechRecognitionClientProxy::SpeechRecognitionClientProxy):
* src/SpeechRecognitionClientProxy.h: Added.
(WebKit):
(SpeechRecognitionClientProxy):
* src/WebSpeechGrammar.cpp: Added.
(WebKit):
(WebKit::WebSpeechGrammar::reset):
(WebKit::WebSpeechGrammar::WebSpeechGrammar):
(WebKit::WebSpeechGrammar::operator=):
(WebKit::WebSpeechGrammar::src):
(WebKit::WebSpeechGrammar::weight):
* src/WebSpeechRecognitionHandle.cpp: Added.
(WebKit):
(WebKit::WebSpeechRecognitionHandle::reset):
(WebKit::WebSpeechRecognitionHandle::assign):
(WebKit::WebSpeechRecognitionHandle::equals):
(WebKit::WebSpeechRecognitionHandle::lessThan):
(WebKit::WebSpeechRecognitionHandle::WebSpeechRecognitionHandle):
(WebKit::WebSpeechRecognitionHandle::operator=):
(WebKit::WebSpeechRecognitionHandle::operator PassRefPtr<SpeechRecognition>):
* src/WebSpeechRecognitionParams.cpp: Added.
(WebKit):
(WebKit::WebSpeechRecognitionParams::WebSpeechRecognitionParams):
* src/WebSpeechRecognitionResult.cpp: Added.
(WebKit):
(WebKit::WebSpeechRecognitionResult::assign):
(WebKit::WebSpeechRecognitionResult::reset):
(WebKit::WebSpeechRecognitionResult::operator PassRefPtr<WebCore::SpeechRecognitionResult>):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
* src/WebViewImpl.h:
(WebKit):

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