WebKit-https.git
9 years agoUnreviewed, revert debugging stuff I landed in http://trac.webkit.org/changeset/124557
fpizlo@apple.com [Fri, 3 Aug 2012 03:44:36 +0000 (03:44 +0000)]
Unreviewed, revert debugging stuff I landed in trac.webkit.org/changeset/124557
by accident.

* tests/v8-v6/v8-crypto.js:
(am1):
(am2):
(am3):
(am4):
(bnpCopyTo):
(bnpFromString):
(bnpClamp):

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

9 years agoUnreviewed, land some overrides for Chromium for the tests I just added, since
fpizlo@apple.com [Fri, 3 Aug 2012 03:38:55 +0000 (03:38 +0000)]
Unreviewed, land some overrides for Chromium for the tests I just added, since
V8 attachs a slightly different (but equally valid) string for the exception we
expect to see.

* platform/chromium/fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
* platform/chromium/fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
* platform/chromium/fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
* platform/chromium/fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.

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

9 years agoFix crashes for <input> and <textarea> with display:run-in.
tkent@chromium.org [Fri, 3 Aug 2012 03:31:22 +0000 (03:31 +0000)]
Fix crashes for <input> and <textarea> with display:run-in.
https://bugs.webkit.org/show_bug.cgi?id=87300

Reviewed by Abhishek Arya.

Source/WebCore:

Introduce RenderObject::canBeReplacedWithInlineRunIn, and renderers which
should not be run-in override it so that it returns false.

Test: fast/runin/input-text-runin.html
      fast/runin/textarea-runin.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
Checks canBeReplacedWithInlineRunIn instead of checking tag names.
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.
* rendering/RenderFileUploadControl.h:
(RenderFileUploadControl): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.
* rendering/RenderListBox.h:
(RenderListBox): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.
* rendering/RenderMenuList.h:
(RenderMenuList): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::canBeReplacedWithInlineRunIn):
Added. Allow run-in by default.
* rendering/RenderObject.h:
(RenderObject): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderProgress.cpp:
(WebCore::RenderProgress::canBeReplacedWithInlineRunIn):
Added. Disallow run-in. This is not a behavior change.
* rendering/RenderProgress.h:
(RenderProgress): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderSlider.cpp:
(WebCore::RenderSlider::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.
* rendering/RenderSlider.h:
(RenderSlider): Declare canBeReplacedWithInlineRunIn.
* rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::canBeReplacedWithInlineRunIn):
Added. Disallow run-in.
* rendering/RenderTextControl.h:
(RenderTextControl): Declare canBeReplacedWithInlineRunIn.

LayoutTests:

* fast/runin/input-text-runin-expected.txt: Added.
* fast/runin/input-text-runin.html: Added.
* fast/runin/textarea-runin-expected.txt: Added.
* fast/runin/textarea-text-runin.html: Added.

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

9 years agoASSERTION FAILED: at(m_compileIndex).canExit() || m_isCheckingArgumentTypes
fpizlo@apple.com [Fri, 3 Aug 2012 03:27:08 +0000 (03:27 +0000)]
ASSERTION FAILED: at(m_compileIndex).canExit() || m_isCheckingArgumentTypes
https://bugs.webkit.org/show_bug.cgi?id=91074

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Fixes a bug where the speculative JIT was performing an unnecessary speculation that the
CFA had proven shouldn't be performed, leading to asserts that a node should not have
exit sites. This is a debug-only assert with no release symptom - we were just emitting
a check that was not reachable.

Also found, and fixed, a bug where structure check hoisting was slightly confusing the
CFA by inserting GetLocal's into the graph. CSE would clean the GetLocal's up, which
would make the backend happy - but the CFA would produce subtly wrong results.

* bytecode/SpeculatedType.h:
(JSC::isOtherOrEmptySpeculation):
(JSC):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):

LayoutTests:

Added a test for this specific case (dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object)
as well as three other tests to cover similar, though not necessarily currently broken, cases, since it was previously the
case that we apparently had no explicit coverage for these code paths.

* fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
* fast/js/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object.html: Added.
* fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
* fast/js/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object.html: Added.
* fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object-expected.txt: Added.
* fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object.html: Added.
* fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object-expected.txt: Added.
* fast/js/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object.html: Added.
* fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-both-proven-final-object.js: Added.
(foo):
* fast/js/script-tests/dfg-compare-final-object-to-final-object-or-other-when-proven-final-object.js: Added.
(foo):
* fast/js/script-tests/dfg-peephole-compare-final-object-to-final-object-or-other-when-both-proven-final-object.js: Added.
(foo):
* fast/js/script-tests/dfg-peephole-compare-final-object-to-final-object-or-other-when-proven-final-object.js: Added.
(foo):

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

9 years agoUnreviewed. Rebaseline fast/forms/basic-selects.html for Chromium-Mac and Chromium...
yosin@chromium.org [Fri, 3 Aug 2012 03:23:04 +0000 (03:23 +0000)]
Unreviewed. Rebaseline fast/forms/basic-selects.html for Chromium-Mac and Chromium-Win.

r124416 changes rendering of non-disabled option element in disabled select.

* platform/chromium-mac-snowleopard/fast/forms/basic-selects-expected.png:
* platform/chromium-mac/fast/forms/basic-selects-expected.png:
* platform/chromium-mac/fast/forms/basic-selects-expected.txt: Added.
* platform/chromium-win/fast/forms/basic-selects-expected.png:
* platform/chromium-win/fast/forms/basic-selects-expected.txt:
* platform/chromium/TestExpectations:

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

9 years ago[chromium] add lost context test case for HW video decoder
piman@chromium.org [Fri, 3 Aug 2012 02:46:13 +0000 (02:46 +0000)]
[chromium] add lost context test case for HW video decoder
https://bugs.webkit.org/show_bug.cgi?id=93057

Reviewed by Adrienne Walker.

We check that we don't use resources after a lost context (assuming
proper WebVideoFrameProvider behavior).

* tests/CCLayerTreeHostImplTest.cpp:

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

9 years ago[EFL] Fix wrong assigned value of BatteryStatus
commit-queue@webkit.org [Fri, 3 Aug 2012 02:40:14 +0000 (02:40 +0000)]
[EFL] Fix wrong assigned value of BatteryStatus
https://bugs.webkit.org/show_bug.cgi?id=93058

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-02
Reviewed by Kentaro Hara.

There is a wrong change in the bug 92964.
property variable have to be used after assigned value in the setBatteryClient.

* platform/efl/BatteryProviderEfl.cpp:
(WebCore::BatteryProviderEfl::setBatteryClient):

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

9 years agoLayout Test: fast/css/image-orientation/image-orientation needs to be added to skip...
commit-queue@webkit.org [Fri, 3 Aug 2012 02:35:41 +0000 (02:35 +0000)]
Layout Test: fast/css/image-orientation/image-orientation needs to be added to skip list for Windows.
https://bugs.webkit.org/show_bug.cgi?id=93053

Patch by Roger Fong <roger_fong@apple.com> on 2012-08-02
Reviewed by Tim Horton.

The feature has not been completed yet.
It has been added to all other platforms' skip lists (see https://bugs.webkit.org/show_bug.cgi?id=89624), except for Windows.

* platform/win/Skipped:
Added fast/css/image-orientation/image-orientation to skip list.

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

9 years ago[BlackBerry] Add default implementation of GraphicsLayerClient::contentsVisible()
commit-queue@webkit.org [Fri, 3 Aug 2012 02:26:44 +0000 (02:26 +0000)]
[BlackBerry] Add default implementation of GraphicsLayerClient::contentsVisible()
https://bugs.webkit.org/show_bug.cgi?id=93036

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-02
Reviewed by George Staikos.

Source/WebCore:

Returning true by default would cause memory usage to balloon, because
the LayerTiler would believe every tile is visible and always needs to
be rendered. Instead, we choose to return false by default, relying
entirely on reactive rendering through render jobs.

However this revealed a subtle bug. If the entire layer was invalidated
every frame, checkerboard would never resolve with this default
implementation.

Fixed by not clearing render jobs when the entire layer is invalidated,
thus making us robust against an incomplete contentsVisible
implementation.

Also removed dead code related to the deprecated
LayerTiler::m_tilesWebKitThread mechanism, which has been replaced by
the implicit visibility management resulting from render jobs.

With m_tilesWebKitThread out of the way, rename m_tilesCompositingThread
to be simply m_tiles.

PR 187458

This is not currently testable using BlackBerry testing infrastructure.

* platform/graphics/GraphicsLayerClient.h:
(WebCore::GraphicsLayerClient::contentsVisible): Gets a default implementation instead of being pure virtual.
* platform/graphics/blackberry/LayerTile.cpp:
(WebCore::LayerTile::LayerTile): Merged LayerTileData into LayerTile now that m_tilesWebKitThread is gone.
* platform/graphics/blackberry/LayerTile.h:
(LayerTile):
* platform/graphics/blackberry/LayerTiler.cpp:
(WebCore::LayerTiler::~LayerTiler):
(WebCore::LayerTiler::updateTextureContentsIfNeeded): Bug fix to make us robust against the new default implementation of GraphicsLayerClient::contentsVisible()
(WebCore::LayerTiler::shouldPerformRenderJob):
(WebCore::LayerTiler::layerVisibilityChanged):
(WebCore::LayerTiler::uploadTexturesIfNeeded):
(WebCore::LayerTiler::drawTexturesInternal):
(WebCore::LayerTiler::deleteTextures):
(WebCore::LayerTiler::pruneTextures):
(WebCore::LayerTiler::bindContentsTexture):
* platform/graphics/blackberry/LayerTiler.h:
(LayerTiler):

Source/WebKit/blackberry:

Remove implementation of GraphicsLayerClient::contentsVisible() now
that it has a default implementation.

This also fixes a bug where memory usage for the inspector highlight
overlay would balloon because it returned true from contentsVisible()
which would cause the LayerTiler to populate all tiles. The default
implementation returns false instead.

PR 187458, 184377

* WebCoreSupport/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::showRepaintCounter):
* WebCoreSupport/InspectorOverlay.h:
(InspectorOverlay):
* WebKitSupport/DefaultTapHighlight.h:
* WebKitSupport/SelectionOverlay.h:

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

9 years agoSlider should snap to datalist tick marks
keishi@webkit.org [Fri, 3 Aug 2012 02:05:51 +0000 (02:05 +0000)]
Slider should snap to datalist tick marks
https://bugs.webkit.org/show_bug.cgi?id=92640

Reviewed by Kent Tamura.

Source/WebCore:

Input type=range slider snaps to datalist tick marks.

Test: fast/forms/datalist/range-snap-to-datalist.html

* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::findClosestTickMarkValue): Just calls InputType::findClosestTickMarkValue.
(WebCore):
* html/HTMLInputElement.h:
(HTMLInputElement):
* html/InputType.cpp:
(WebCore):
(WebCore::InputType::findClosestTickMarkValue): Overridden by RangeInputType.
* html/InputType.h:
(InputType):
* html/RangeInputType.cpp:
(WebCore::RangeInputType::RangeInputType):
(WebCore):
(WebCore::RangeInputType::listAttributeTargetChanged): Mark m_tickMarkValues as dirty.
(WebCore::decimalCompare):
(WebCore::RangeInputType::updateTickMarkValues): Sets m_tickMarkValues to a list of sorted valid datalist values.
(WebCore::RangeInputType::findClosestTickMarkValue): Finds closest tick mark value to a given value.
* html/RangeInputType.h:
(RangeInputType):
* html/shadow/SliderThumbElement.cpp:
(WebCore):
(WebCore::SliderThumbElement::setPositionFromPoint): Snaps to the closest tick mark value if it is within a certain distance.

LayoutTests:

* fast/forms/datalist/range-snap-to-datalist-expected.txt: Added.
* fast/forms/datalist/range-snap-to-datalist.html: Added.

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

9 years ago[EFL] Crash while loading plugin after r121467
ryuan.choi@samsung.com [Fri, 3 Aug 2012 01:54:50 +0000 (01:54 +0000)]
[EFL] Crash while loading plugin after r121467
https://bugs.webkit.org/show_bug.cgi?id=92943

Reviewed by Laszlo Gombos.

r121467 replaced POSIX dlopen to helpers in eina_module, but some codes
are not changed.

No new tests, behavior has not changed.

* plugins/efl/PluginPackageEfl.cpp:
(WebCore::PluginPackage::fetchInfo):
Changes dlsym to eina_module_symbol_get to follow changes of r121467.

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

9 years agoV8 bindings code that tries to find its context should use BindingState functions...
abarth@webkit.org [Fri, 3 Aug 2012 01:51:35 +0000 (01:51 +0000)]
V8 bindings code that tries to find its context should use BindingState functions rather than V8Proxy
https://bugs.webkit.org/show_bug.cgi?id=93038

Reviewed by Eric Seidel.

After this patch, most code in the V8 bindings that tries to determine
it's "context" goes through BindingState.h rather than V8Proxy. This
patch is a step towards unifying all these code paths.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructorCallback):
* bindings/v8/BindingState.cpp:
(WebCore::currentFrame):
(WebCore):
* bindings/v8/BindingState.h:
(WebCore):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::retrieveFrameForEnteredContext):
(WebCore::ScriptController::retrieveFrameForCurrentContext):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::v8UncaughtExceptionHandler):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::reportUnsafeAccessTo):
* bindings/v8/V8Proxy.h:
(V8Proxy):
* bindings/v8/V8Utilities.cpp:
(WebCore::getScriptExecutionContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallback):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::handlePostMessageCallback):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::writeCallback):
(WebCore::V8HTMLDocument::writelnCallback):
(WebCore::V8HTMLDocument::openCallback):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore::v8HTMLImageElementConstructorCallback):

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

9 years ago[WINCE] Return 0 at calculateDSTOffset(double, double)
paroga@webkit.org [Fri, 3 Aug 2012 01:43:05 +0000 (01:43 +0000)]
[WINCE] Return 0 at calculateDSTOffset(double, double)
https://bugs.webkit.org/show_bug.cgi?id=92953

Reviewed by Ryosuke Niwa.

localtime() is implemented as a call to gmtime() in ce_time.c.
Since this will never return correct values, returning 0 instead
does not remove any existing functionality, but decreases the
dependency on the (external) ce_time implementation.

* wtf/DateMath.cpp:
(WTF::calculateDSTOffsetSimple):

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

9 years agoUnreviewed, rolling out r124540.
dimich@chromium.org [Fri, 3 Aug 2012 01:32:28 +0000 (01:32 +0000)]
Unreviewed, rolling out r124540.
http://trac.webkit.org/changeset/124540
https://bugs.webkit.org/show_bug.cgi?id=93055

Broke compile on Chromium Win bot (Requested by dimich on
#webkit).

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

Source/WebCore:

* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
* Modules/indexeddb/IDBCallbacks.h:
(IDBCallbacks):
* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall):
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::metadata):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseCallbacks.h:
(IDBDatabaseCallbacks):
* Modules/indexeddb/IDBFactoryBackendImpl.cpp:
(WebCore::IDBFactoryBackendImpl::open):
* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::deleteDatabase):
* Modules/indexeddb/IDBLevelDBBackingStore.h:
(IDBLevelDBBackingStore):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::commit):

Source/WebKit/chromium:

* tests/IDBAbortOnCorruptTest.cpp:
(WebCore::FailingBackingStore::createIDBDatabaseMetaData):
* tests/IDBFakeBackingStore.h:

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

9 years ago[BlackBerry] Upstream GraphicsLayerClient::contentsVisible()
commit-queue@webkit.org [Fri, 3 Aug 2012 01:14:59 +0000 (01:14 +0000)]
[BlackBerry] Upstream GraphicsLayerClient::contentsVisible()
https://bugs.webkit.org/show_bug.cgi?id=93040

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-08-02
Reviewed by George Staikos.

Our LayerTiler uses both proactive and reactive rendering to populate
tiles. If contentsVisible() is accurate, it will cause the right tiles
to be rendered. Failing that, when a dirty tile is found to be visible
on the compositing thread, a render job is scheduled.

This is not currently testable using BlackBerry testing infrastructure.

* platform/graphics/GraphicsLayerClient.h:
(GraphicsLayerClient): New BlackBerry-specific method "contentsVisible" added.
* rendering/RenderLayerBacking.cpp:
(WebCore):
(WebCore::RenderLayerBacking::contentsVisible): BlackBerry-specific implementation.

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

9 years ago[chromium] deviceViewportSize cleanup
commit-queue@webkit.org [Fri, 3 Aug 2012 00:51:39 +0000 (00:51 +0000)]
[chromium] deviceViewportSize cleanup
https://bugs.webkit.org/show_bug.cgi?id=92794

Patch by Alexandre Elias <aelias@google.com> on 2012-08-02
Reviewed by Adrienne Walker.

In the future, CSS layout size will become increasingly disassociated
from physical device size, and it will become impossible to infer one
from the other inside the compositor.  Therefore, this patch allows
deviceViewportSize to be explicitly passed in by the outside client.

I also renamed the existing viewportSize field to "layoutViewportSize"
for clarity, and converted its uses to deviceViewportSize since
that is more appropriate.

I had to add some default-value scaffolding to WebLayerTreeView in
order to avoid breaking ui/compositor.  We can delete it once that's
updated.

Source/Platform:

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

Source/WebCore:

No new tests (covered by existing tests).

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setViewportSize):
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::setDeviceScaleFactor):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
(WebCore::CCLayerTreeHost::layoutViewportSize):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
(WebCore::CCLayerTreeHostImpl::setViewportSize):
(WebCore::CCLayerTreeHostImpl::setDeviceScaleFactor):
(WebCore::CCLayerTreeHostImpl::updateMaxScrollPosition):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::layoutViewportSize):

Source/WebKit/chromium:

* src/WebLayerTreeView.cpp:
(WebKit::WebLayerTreeView::setViewportSize):
(WebKit::WebLayerTreeView::layoutViewportSize):
(WebKit):
(WebKit::WebLayerTreeView::deviceViewportSize):
(WebKit::WebLayerTreeView::setDeviceScaleFactor):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::paint):
(WebKit::WebViewImpl::updateLayerTreeViewport):

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

9 years agoV8Proxy::currentContext() doesn't do anything and should be removed
abarth@webkit.org [Fri, 3 Aug 2012 00:45:28 +0000 (00:45 +0000)]
V8Proxy::currentContext() doesn't do anything and should be removed
https://bugs.webkit.org/show_bug.cgi?id=93041

Reviewed by Eric Seidel.

Source/WebCore:

It's just a wrapper for GetCurrent().

* bindings/v8/DateExtension.cpp:
(WebCore::DateExtension::setAllowSleep):
* bindings/v8/V8NPUtils.cpp:
(WebCore::convertV8ObjectToNPVariant):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::retrieve):
(WebCore::V8Proxy::mainWorldContext):
* bindings/v8/V8Proxy.h:
(V8Proxy):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::getJSListenerFunctions):

Source/WebKit/chromium:

* src/WebBindings.cpp:
(WebKit::makeIntArrayImpl):
(WebKit::makeStringArrayImpl):

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

9 years agoVersioning.
lforschler@apple.com [Fri, 3 Aug 2012 00:40:57 +0000 (00:40 +0000)]
Versioning.

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

9 years agoIndexedDB: Core upgradeneeded logic
dgrogan@chromium.org [Fri, 3 Aug 2012 00:35:59 +0000 (00:35 +0000)]
IndexedDB: Core upgradeneeded logic
https://bugs.webkit.org/show_bug.cgi?id=92558

Reviewed by Ojan Vafai.

Source/WebCore:

This is the backend webkit logic needed for integer versions. The rest
is in https://bugs.webkit.org/show_bug.cgi?id=89505.

I tried to make use of the existing processPendingCalls and added two
more queues, pendingOpenWithVersionCalls and
pendingSecondHalfOpenWithVersionCalls. The "second half" refers to
how there are two events that need to be fired in response to an
open-with-version call. The "second half" queue holds the open
requests that should immediately follow the caller's upgradeneeded
handler.

No new tests, there are so many they are in their own patch:
https://bugs.webkit.org/show_bug.cgi?id=92560

Though this patch doesn't change any expected behavior anyway, lack of
regressions is what we're hoping for here.

* Modules/indexeddb/IDBBackingStore.h:
(IDBBackingStore):
* Modules/indexeddb/IDBCallbacks.h:
(WebCore::IDBCallbacks::onBlocked):
(WebCore::IDBCallbacks::onUpgradeNeeded):
* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(IDBDatabaseBackendImpl::PendingOpenCall):
(IDBDatabaseBackendImpl::PendingOpenWithVersionCall):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::create):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::callbacks):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::version):
(WebCore::IDBDatabaseBackendImpl::PendingOpenWithVersionCall::PendingOpenWithVersionCall):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::IDBDatabaseBackendImpl):
(WebCore::IDBDatabaseBackendImpl::openInternal):
(WebCore::IDBDatabaseBackendImpl::metadata):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::setIntVersionInternal):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndEventsFired):
When an upgradeneeded event is fired in response to an
open-with-version call, the version change transaction must receive its
complete event before processPendingCalls fires a success event at
IDBOpenDBRequest. In the future this should probably be changed
instead to transactionFinishedAndAbortFired and
transactionFinishedAndCompleteFired so that we'll know to fire a
success or error event at IDBOpenDBRequest. Currently, instead of
firing error when there's an abort, we don't fire anything.

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
Now that this is called after a connection is opened, we unfortunately
lose the invariant that there is only one existing connection when this
is called, but nothing inside this function actually relied on that.
Additionally, the secondHalfOpen calls only ever need to be serviced
in one place: right after a version change transaction completes, so
it could be moved out of here.

(WebCore::IDBDatabaseBackendImpl::registerFrontendCallbacks):
Now that setVersion and deleteDatabase calls are queued up behind
secondHalfOpen calls, we have to service those queues when
secondHalfOpen calls complete, which is here.  So call
processPendingCalls().

(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::openConnectionWithVersion):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase):
(WebCore::IDBDatabaseBackendImpl::close):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseCallbacks.h:
(WebCore::IDBDatabaseCallbacks::onVersionChange):
* Modules/indexeddb/IDBFactoryBackendImpl.cpp:
(WebCore::IDBFactoryBackendImpl::open):
This is refactored some so that the call to openConection{WithVersion}
happens once, at the end.

* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::getIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::createIDBDatabaseMetaData):
(WebCore::IDBLevelDBBackingStore::updateIDBDatabaseIntVersion):
(WebCore):
(WebCore::IDBLevelDBBackingStore::deleteDatabase):
* Modules/indexeddb/IDBLevelDBBackingStore.h:
(IDBLevelDBBackingStore):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::commit):
See above comments about transactionFinishedAndEventsFired. I tried
moving the call to transactionFinished after the events were fired but
that failed some asserts. But changing those asserts is still an
alternative to splitting up transactionFinished as is done here.

Source/WebKit/chromium:

Update overridden methods to match new signatures.

* tests/IDBAbortOnCorruptTest.cpp:
(WebCore::FailingBackingStore::createIDBDatabaseMetaData):
* tests/IDBFakeBackingStore.h:

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

9 years agoSVG text selection doesn't work with hyperlinked text
rwlbuis@webkit.org [Fri, 3 Aug 2012 00:23:14 +0000 (00:23 +0000)]
SVG text selection doesn't work with hyperlinked text
https://bugs.webkit.org/show_bug.cgi?id=29166

Reviewed by Eric Seidel.

Cleanup SVGAElement. There is no need to test for middle mouse button here, this
is handled elsewhere, so remove isMiddleMouseButtonEvent. Similarly handleLinkClick
is not used anymore by HTMLAnchorElement, remove it. Finally, _self indeed is not needed.

No new tests, since no change in behaviour.

* WebCore.order:
* html/HTMLAnchorElement.cpp:
* html/HTMLAnchorElement.h:
(WebCore):
* svg/SVGAElement.cpp:
(WebCore::SVGAElement::defaultEventHandler):

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

9 years agoMove causesFosterParenting() to HTMLStackItem
kseo@webkit.org [Fri, 3 Aug 2012 00:16:33 +0000 (00:16 +0000)]
Move causesFosterParenting() to HTMLStackItem
https://bugs.webkit.org/show_bug.cgi?id=93048

Reviewed by Adam Barth.

Changed to share causesFosterParenting() between HTMLTreeBuilder and HTMLConstructionSite
by moving this function to HTMLStackItem.

No functional change, so no new tests.

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::shouldFosterParent):
* html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::causesFosterParenting):
(HTMLStackItem):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

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

9 years agoRead tag names and attributes from the saved tokens in HTMLTreeBuilder::callTheAdopti...
kseo@webkit.org [Fri, 3 Aug 2012 00:15:18 +0000 (00:15 +0000)]
Read tag names and attributes from the saved tokens in HTMLTreeBuilder::callTheAdoptionAgency(AtomicHTMLToken*)
https://bugs.webkit.org/show_bug.cgi?id=93047

Reviewed by Adam Barth.

This is a follow-up patch for r123577.
Changed to retrieve the stack item of commonAncestor and read the local name from the saved token.

No new tests, covered by existing tests.

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

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

9 years agoRemove old Pointer Lock API.
scheib@chromium.org [Thu, 2 Aug 2012 23:58:09 +0000 (23:58 +0000)]
Remove old Pointer Lock API.
https://bugs.webkit.org/show_bug.cgi?id=88892

Reviewed by Adam Barth.

Source/WebCore:

Removing the old Pointer Lock API as one of the final cleanup
changes for the Update to Fullscreen style locking Spec meta
bug https://bugs.webkit.org/show_bug.cgi?id=84402.

This change primarily removes idl, access in navigator,
one event, and supporting infrastructure in page/PointerLock.

In PointerLockController changes were already noted clearly with
TODOs differentiating old and new api sections.

Test: pointer-lock/pointerlockchange-event-on-lock-lost.html

* WebCore.gypi:
* dom/Element.cpp:
(WebCore::Element::webkitRequestPointerLock):
* dom/EventNames.h:
(WebCore):
* page/Navigator.cpp:
* page/Navigator.h:
(WebCore):
(Navigator):
* page/Navigator.idl:
* page/PointerLock.cpp: Removed.
* page/PointerLock.h: Removed.
* page/PointerLock.idl: Removed.
* page/PointerLockController.cpp:
(WebCore::PointerLockController::requestPointerLock):
(WebCore::PointerLockController::didAcquirePointerLock):
(WebCore::PointerLockController::didNotAcquirePointerLock):
(WebCore::PointerLockController::didLosePointerLock):
* page/PointerLockController.h:
(PointerLockController):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
    Removed #include to old API header.

LayoutTests:

Tests for old API removed, and most remaining tests required only small
changes.

* platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
* pointer-lock/lock-already-locked-expected.txt:
* pointer-lock/lock-already-locked.html:
* pointer-lock/lock-fail-responses-expected.txt: Removed.
* pointer-lock/lock-fail-responses.html: Removed.
    This test only covered the old API. The related concept is tested
    for the new api in pointerlockchange-pointerlockerror-events.html.
* pointer-lock/pointer-lock-api-expected.txt:
* pointer-lock/pointer-lock-api.html:
* pointer-lock/pointerlockchange-event-on-lock-lost-expected.txt: Added.
* pointer-lock/pointerlockchange-event-on-lock-lost.html: Added.
* pointer-lock/pointerlocklost-event-expected.txt: Removed.
* pointer-lock/pointerlocklost-event.html: Removed.
    pointerlocklost-event.html renamed to pointerlockchange-event-on-lock-lost.html.

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

9 years agotest-webkitpy can fail on a clean checkout
dpranke@chromium.org [Thu, 2 Aug 2012 23:09:11 +0000 (23:09 +0000)]
test-webkitpy can fail on a clean checkout
https://bugs.webkit.org/show_bug.cgi?id=93039

Reviewed by Adam Barth.

Now that we run tests in parallel that can cause the installer
to try and install packages in parallel (even the same package),
and that probably won't work. We fix this by autoinstalling
everything up front (serially).

* Scripts/webkitpy/test/main.py:
(Tester._run_tests):
* Scripts/webkitpy/thirdparty/__init__.py:
(autoinstall_everything):

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

9 years agoscripts in formaction should be stripped upon paste
rniwa@webkit.org [Thu, 2 Aug 2012 23:02:30 +0000 (23:02 +0000)]
scripts in formaction should be stripped upon paste
https://bugs.webkit.org/show_bug.cgi?id=92298

Reviewed by Eric Seidel.

Source/WebCore:

Strip formaction attribute values when the URL is of javascript protocol.

Test: editing/pasteboard/paste-noscript-xhtml.html
      editing/pasteboard/paste-noscript.html

* dom/Element.cpp:
(WebCore::isAttributeToRemove): Explicitly compare with href and nohref instead of comparing
the ends of strings since comparing two AtomicString is much faster.

LayoutTests:

Added formaction attributes to tests.

* editing/pasteboard/paste-noscript-expected.txt:
* editing/pasteboard/paste-noscript-xhtml-expected.txt:
* editing/pasteboard/paste-noscript.html:
* editing/pasteboard/resources/paste-noscript-content.html:

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

9 years agoBuilt in quotes don't use lang attribute
commit-queue@webkit.org [Thu, 2 Aug 2012 22:50:52 +0000 (22:50 +0000)]
Built in quotes don't use lang attribute
https://bugs.webkit.org/show_bug.cgi?id=92918

Patch by Elliott Sprehn <esprehn@gmail.com> on 2012-08-02
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Previously even though there was a table in RenderQuote of languages mapped
to quotes we always used basic quotes. This patch removes the broken tree
walking and uses Element::computeInheritedLanguage fixing this.

Tests: fast/css-generated-content/quotes-lang-expected.html
       fast/css-generated-content/quotes-lang.html
       fast/css-generated-content/quotes-xml-lang-expected.html
       fast/css-generated-content/quotes-xml-lang.html

* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::originalText):
(WebCore::RenderQuote::quotesData): New method that determines the right QuotesData to use.
(WebCore):
* rendering/RenderQuote.h:
(RenderQuote):

LayoutTests:

Add a test that the built in quote languages are used and that custom
languages work as well. This also tests that xml:lang takes precedence
over lang.

* fast/css-generated-content/quotes-lang-expected.html: Added.
* fast/css-generated-content/quotes-lang.html: Added.
* fast/css-generated-content/quotes-xml-lang-expected.html: Added.
* fast/css-generated-content/quotes-xml-lang.html: Added.

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

9 years agoAdd back a header I mistakenly removed in my previous commit.
abarth@webkit.org [Thu, 2 Aug 2012 22:48:27 +0000 (22:48 +0000)]
Add back a header I mistakenly removed in my previous commit.

* WebCore.xcodeproj/project.pbxproj:

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

9 years ago[chromium] Remove dependency on Scrollbar.h from ScrollbarLayerChromium
enne@google.com [Thu, 2 Aug 2012 22:47:38 +0000 (22:47 +0000)]
[chromium] Remove dependency on Scrollbar.h from ScrollbarLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=93024

Reviewed by James Robinson.

Change part enum from the Scrollbar version to WebScrollbar's.

Tested by composited layout tests.

* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
(WebCore::ScrollbarBackgroundPainter::create):
(WebCore::ScrollbarBackgroundPainter::ScrollbarBackgroundPainter):
(ScrollbarBackgroundPainter):
(WebCore::ScrollbarLayerChromium::createTextureUpdaterIfNeeded):

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

9 years agoBindingSecurityBase serves no purpose and should be removed
abarth@webkit.org [Thu, 2 Aug 2012 22:46:01 +0000 (22:46 +0000)]
BindingSecurityBase serves no purpose and should be removed
https://bugs.webkit.org/show_bug.cgi?id=93025

Reviewed by Eric Seidel.

Now that we don't use templates in the generic bindings, we can merge
BindingSecurity and BindingSecurityBase. This patch also removes some
functions that are no longer used (and reduces the number of
#includes).

No behavior change.

* GNUmakefile.list.am:
* WebCore.gypi:
* bindings/generic/BindingSecurity.h:
(WebCore):
(BindingSecurity):
* bindings/generic/BindingSecurityBase.cpp: Removed.
* bindings/generic/BindingSecurityBase.h: Removed.
* bindings/v8/V8Binding.h:
* bindings/v8/V8Utilities.cpp:
* bindings/v8/custom/V8MutationObserverCustom.cpp:

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

9 years agoLet XCode have its own away and also sort the files.
rniwa@webkit.org [Thu, 2 Aug 2012 22:41:18 +0000 (22:41 +0000)]
Let XCode have its own away and also sort the files.

* WebCore.xcodeproj/project.pbxproj:

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

9 years ago[chromium] Add CCScrollbarAnimationController class for compositor scrollbar animation
commit-queue@webkit.org [Thu, 2 Aug 2012 22:39:01 +0000 (22:39 +0000)]
[chromium] Add CCScrollbarAnimationController class for compositor scrollbar animation
https://bugs.webkit.org/show_bug.cgi?id=91688

Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-08-02
Reviewed by Adrienne Walker.

Source/WebCore:

Add CCScrollbarAnimationController that serves as the middle man
between the scrolling layer and scrollbar layer. Now all scroll offset
information are pushed through the controller, and individual platform
can provide specialized controller for extra processing.

A basic fadeout controller for Android scrollbar is included.

New test: ScrollbarLayerChromiumTest.scrollOffsetSynchronization
          CCScrollbarAnimationControllerLinearFade.*

* WebCore.gypi:
* page/FrameView.cpp:
(WebCore::FrameView::calculateScrollbarModesForLayout):
* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::createScrollbarLayer):
* platform/graphics/chromium/TreeSynchronizer.cpp:
(WebCore::TreeSynchronizer::synchronizeTreeRecursive):
(WebCore::TreeSynchronizer::updateScrollbarLayerPointersRecursive):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::scrollBy):
(WebCore::CCLayerImpl::setMaxScrollPosition):
(WebCore):
(WebCore::CCLayerImpl::horizontalScrollbarLayer):
(WebCore::CCLayerImpl::setHorizontalScrollbarLayer):
(WebCore::CCLayerImpl::verticalScrollbarLayer):
(WebCore::CCLayerImpl::setVerticalScrollbarLayer):
* platform/graphics/chromium/cc/CCLayerImpl.h:
(WebCore):
(CCLayerImpl):
(WebCore::CCLayerImpl::scrollbarAnimationController):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::animate):
(WebCore::CCLayerTreeHostImpl::pinchGestureBegin):
(WebCore::CCLayerTreeHostImpl::pinchGestureUpdate):
(WebCore::CCLayerTreeHostImpl::pinchGestureEnd):
(WebCore::CCLayerTreeHostImpl::animateScrollbars):
(WebCore):
(WebCore::CCLayerTreeHostImpl::animateScrollbarsRecursive):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCScrollbarAnimationController.cpp: Added.
(WebCore):
(WebCore::CCScrollbarAnimationController::create):
(WebCore::CCScrollbarAnimationController::CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::~CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::getScrollLayerBounds):
(WebCore::CCScrollbarAnimationController::updateScrollOffset):
* platform/graphics/chromium/cc/CCScrollbarAnimationController.h: Added.
(WebCore):
(CCScrollbarAnimationController):
(WebCore::CCScrollbarAnimationController::animate):
(WebCore::CCScrollbarAnimationController::didPinchGestureBegin):
(WebCore::CCScrollbarAnimationController::didPinchGestureUpdate):
(WebCore::CCScrollbarAnimationController::didPinchGestureEnd):
(WebCore::CCScrollbarAnimationController::setHorizontalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::horizontalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::setVerticalScrollbarLayer):
(WebCore::CCScrollbarAnimationController::verticalScrollbarLayer):
* platform/graphics/chromium/cc/CCScrollbarAnimationControllerAndroid.cpp: Added.
(WebCore):
(WebCore::CCScrollbarAnimationController::create):
(WebCore::CCScrollbarAnimationControllerAndroid::CCScrollbarAnimationControllerAndroid):
(WebCore::CCScrollbarAnimationControllerAndroid::~CCScrollbarAnimationControllerAndroid):
(WebCore::CCScrollbarAnimationControllerAndroid::animate):
(WebCore::CCScrollbarAnimationControllerAndroid::didPinchGestureUpdate):
(WebCore::CCScrollbarAnimationControllerAndroid::didPinchGestureEnd):
(WebCore::CCScrollbarAnimationControllerAndroid::updateScrollOffset):
(WebCore::CCScrollbarAnimationControllerAndroid::opacityAtTime):
* platform/graphics/chromium/cc/CCScrollbarAnimationControllerAndroid.h: Added.
(WebCore):
(CCScrollbarAnimationControllerAndroid):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::CCScrollbarLayerImpl):
(WebCore):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::value):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::currentPos):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::totalSize):
(WebCore::CCScrollbarLayerImpl::CCScrollbar::maximum):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
(WebCore::CCScrollbarLayerImpl::orientation):
(WebCore::CCScrollbarLayerImpl::setCurrentPos):
(WebCore::CCScrollbarLayerImpl::setTotalSize):
(WebCore::CCScrollbarLayerImpl::setMaximum):
(CCScrollbarLayerImpl):

Source/WebKit/chromium:

New unit test ScrollbarLayerChromiumTest.scrollOffsetSynchronization to verify
scroll offset is updated during tree synchronization and threaded scrolling.
Another new unit test CCScrollbarAnimationControllerLinearFadeTest to verify
opacity animates as intended.

* tests/ScrollbarLayerChromiumTest.cpp:

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

9 years agoMathML: nested square root symbols have varying descenders
dbarton@mathscribe.com [Thu, 2 Aug 2012 22:34:52 +0000 (22:34 +0000)]
MathML: nested square root symbols have varying descenders
https://bugs.webkit.org/show_bug.cgi?id=43819

Reviewed by Eric Seidel.

Source/WebCore:

This bug stems from the use of offsetHeight() on a renderer that's possibly a
RenderInline, in getBoxModelObjectHeight() in RenderMathMLBlock.h.
RenderInline::offsetHeight() actually returns linesBoundingBox().height(), which can be
overly large, especially for the big STIX fonts that include a few mathematical symbols
with unusually tall ascenders or descenders. A better solution for MathML in general is
the CSS properties { -webkit-line-box-contain: glyphs replaced; line-height: 0; }. This
gives tight glyph-based formatting in radical expressions, subscripts, superscripts,
underscripts, overscripts, numerators, denominators, etc. To make this work, inline
elements such as <mn> and <mi> must be wrapped inside implicit <mrow>s or just
RenderMathMLBlocks, when a tight height is desired. We also replace
getBoxModelObjectWidth(), which uses offsetWidth(), with contentLogicalWidth(). Finally,
we enable the STIXGeneral font for use inside layout tests.

Tested by existing LayoutTests/mathml/presentation/ files including roots.xhtml.

* css/mathml.css:
(math):
(mtext):
(mroot > * + *):
(mtd):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::preferredLogicalHeightAfterSizing):
(WebCore::RenderMathMLBlock::baselinePosition):
* rendering/mathml/RenderMathMLBlock.h:
* rendering/mathml/RenderMathMLFraction.cpp:
(WebCore::RenderMathMLFraction::baselinePosition):
* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::createStackableStyle):
(WebCore::RenderMathMLOperator::baselinePosition):
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::addChild):
(WebCore::RenderMathMLRoot::computePreferredLogicalWidths):
(WebCore::RenderMathMLRoot::paint):
* rendering/mathml/RenderMathMLRoot.h:
* rendering/mathml/RenderMathMLSquareRoot.cpp:
* rendering/mathml/RenderMathMLSquareRoot.h:
* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::layout):
* rendering/mathml/RenderMathMLUnderOver.cpp:
(WebCore::RenderMathMLUnderOver::baselinePosition):
* rendering/mathml/RenderMathMLUnderOver.h:

Tools:

Allow the STIXGeneral font to be used during layout tests, especially for MathML.

* DumpRenderTree/mac/DumpRenderTree.mm:
(allowedFontFamilySet):
* WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:
(WTR::allowedFontFamilySet):

LayoutTests:

These tests are rebaselined to use the STIXGeneral font, and tight glyph-based MathML
layout using the CSS properties
{ -webkit-line-box-contain: glyphs replaced; line-height: 0; }.

* mathml/presentation/style.xhtml:
* platform/mac/mathml/presentation/attributes-expected.png:
* platform/mac/mathml/presentation/attributes-expected.txt:
* platform/mac/mathml/presentation/fenced-expected.png:
* platform/mac/mathml/presentation/fenced-expected.txt:
* platform/mac/mathml/presentation/fenced-mi-expected.png:
* platform/mac/mathml/presentation/fenced-mi-expected.txt:
* platform/mac/mathml/presentation/fractions-expected.png:
* platform/mac/mathml/presentation/fractions-expected.txt:
* platform/mac/mathml/presentation/fractions-vertical-alignment-expected.png:
* platform/mac/mathml/presentation/fractions-vertical-alignment-expected.txt:
* platform/mac/mathml/presentation/mo-expected.png:
* platform/mac/mathml/presentation/mo-expected.txt:
* platform/mac/mathml/presentation/mo-stretch-expected.png:
* platform/mac/mathml/presentation/mo-stretch-expected.txt:
* platform/mac/mathml/presentation/mroot-pref-width-expected.png:
* platform/mac/mathml/presentation/mroot-pref-width-expected.txt:
* platform/mac/mathml/presentation/over-expected.png:
* platform/mac/mathml/presentation/over-expected.txt:
* platform/mac/mathml/presentation/roots-expected.png:
* platform/mac/mathml/presentation/roots-expected.txt:
* platform/mac/mathml/presentation/row-alignment-expected.png:
* platform/mac/mathml/presentation/row-alignment-expected.txt:
* platform/mac/mathml/presentation/row-expected.png:
* platform/mac/mathml/presentation/row-expected.txt:
* platform/mac/mathml/presentation/style-expected.png:
* platform/mac/mathml/presentation/style-expected.txt:
* platform/mac/mathml/presentation/sub-expected.png:
* platform/mac/mathml/presentation/sub-expected.txt:
* platform/mac/mathml/presentation/subsup-expected.png:
* platform/mac/mathml/presentation/subsup-expected.txt:
* platform/mac/mathml/presentation/sup-expected.png:
* platform/mac/mathml/presentation/sup-expected.txt:
* platform/mac/mathml/presentation/tables-expected.png:
* platform/mac/mathml/presentation/tables-expected.txt:
* platform/mac/mathml/presentation/tokenElements-expected.png:
* platform/mac/mathml/presentation/tokenElements-expected.txt:
* platform/mac/mathml/presentation/under-expected.png:
* platform/mac/mathml/presentation/under-expected.txt:
* platform/mac/mathml/presentation/underover-expected.png:
* platform/mac/mathml/presentation/underover-expected.txt:
* platform/mac/mathml/xHeight-expected.png:
* platform/mac/mathml/xHeight-expected.txt:

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

9 years ago[chromium] Make CCScrollbarLayerImpl handle lost contexts properly
enne@google.com [Thu, 2 Aug 2012 22:29:38 +0000 (22:29 +0000)]
[chromium] Make CCScrollbarLayerImpl handle lost contexts properly
https://bugs.webkit.org/show_bug.cgi?id=93021

Reviewed by James Robinson.

Source/WebCore:

The resource ids that CCScrollbarLayerImpl holds onto need to be
discarded during a lost context as the resource provider they came
from is also destroyed.

Make a scrollbarGeometry function that wraps all uses of the
m_geometry member to make it possible to test CCScrollbarLayerImpl
without depending on WebCore.

Test: CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext

* platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
(WebCore::CCScrollbarLayerImpl::scrollbarGeometry):
(WebCore):
(WebCore::CCScrollbarLayerImpl::appendQuads):
(WebCore::CCScrollbarLayerImpl::didLoseContext):
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
(CCScrollbarLayerImpl):

Source/WebKit/chromium:

Add CCScrollbarLayerImpl to the dontUseOldResourceAfterLostContext
test. Additionally, modify this test so that stale resource ids
properly point at invalid texture ids so that the test actually tests
what it is supposed to be testing.

* tests/CCLayerTreeHostImplTest.cpp:

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

9 years agoA few objects aren't being safely protected from GC in all cases
oliver@apple.com [Thu, 2 Aug 2012 22:24:08 +0000 (22:24 +0000)]
A few objects aren't being safely protected from GC in all cases
https://bugs.webkit.org/show_bug.cgi?id=93031

Reviewed by Filip Pizlo.

I haven't seen evidence that anyone is hitting bugs due to this, but any
GC error can lead to later -- hard to diagnose -- bugs if they result in
resurrecting dead objects.

* bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::create):
(WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
* bindings/js/JSCustomXPathNSResolver.h:
(JSCustomXPathNSResolver):
* bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::tryGetProperty):
* bindings/js/JSDictionary.h:
(WebCore::JSDictionary::JSDictionary):
(WebCore::JSDictionary::initializerObject):

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

9 years agoRange::isPointInRange incorrectly throws WRONG_DOCUMENT_ERR
eae@chromium.org [Thu, 2 Aug 2012 21:59:47 +0000 (21:59 +0000)]
Range::isPointInRange incorrectly throws WRONG_DOCUMENT_ERR
https://bugs.webkit.org/show_bug.cgi?id=93009

Reviewed by Ojan Vafai.

Source/WebCore:

The latest working draft of the DOM4 spec has all but killed the
WRONG_DOCUMENT_ERR exception. Update isPointInRange to return false
instead of throwing an exception when the range and point are in
different documents. This matches the Mozilla behavior.

Test: fast/html/range-point-in-range-for-different-documents.html

* dom/Range.cpp:
(WebCore::Range::isPointInRange):
Return false instead of throwing WRONG_DOCUMENT_ERR when the point is in
a different document.

LayoutTests:

Add test for Range::isPointInRange where the point is in a different
document than the range.

* fast/dom/move-nodes-across-documents.html: Change expectations for isPointInRange
* fast/html/range-point-in-range-for-different-documents-expected.txt: Added.
* fast/html/range-point-in-range-for-different-documents.html: Added.

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

9 years agotest-webkitpy: some tests need to run by themselves
dpranke@chromium.org [Thu, 2 Aug 2012 21:38:16 +0000 (21:38 +0000)]
test-webkitpy: some tests need to run by themselves
https://bugs.webkit.org/show_bug.cgi?id=92926

Reviewed by Ojan Vafai.

Due to timing issues some of the executive tests will collide
and fail if they're run concurrently. This patch adds support
for writing tests that will be executed one at a time
(serially); to get them, add "serial_" to the front of the test
method name.

* Scripts/webkitpy/common/system/executive_unittest.py:
(ExecutiveTest.serial_test_kill_process):
(ExecutiveTest.serial_test_kill_all):
(ExecutiveTest.serial_test_check_running_pid):
(ExecutiveTest.serial_test_running_pids):
(ExecutiveTest.serial_test_run_in_parallel):
* Scripts/webkitpy/test/main.py:
(Tester._run_tests):
(Tester._test_names):

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

9 years agotest-webkitpy: integrate proper support for integration tests
dpranke@chromium.org [Thu, 2 Aug 2012 21:36:45 +0000 (21:36 +0000)]
test-webkitpy: integrate proper support for integration tests
https://bugs.webkit.org/show_bug.cgi?id=92925

Reviewed by Ojan Vafai.

This patch merges the custom loader I used for integration tests
into the main test-webkitpy code. Integration tests are not run
by default yet, but at least they can be run.

* Scripts/webkitpy/layout_tests/port/mock_drt_unittest.py:
(MockTestShellTest.test_test_shell_parse_options):
* Scripts/webkitpy/layout_tests/port/port_testcase.py:
(test_path_to_apache_config_file):
* Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:
(WebsocketserverTest):
* Scripts/webkitpy/test/main.py:
(Tester._parse_args):
(Tester._run_tests):
(Tester._test_names):
(Tester._log_exception):
(_Loader):
(_Loader.getTestCaseNames):
(_Loader.getTestCaseNames.isTestMethod):

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

9 years agotest-webkitpy: clean up runner in preparation for running tests serially as necessary
dpranke@chromium.org [Thu, 2 Aug 2012 21:35:34 +0000 (21:35 +0000)]
test-webkitpy: clean up runner in preparation for running tests serially as necessary
https://bugs.webkit.org/show_bug.cgi?id=92922

Reviewed by Ojan Vafai.

In order to run some tests by themselves (serially, rather than
in parallel with other tests), we will need to be able to run
multiple test suites; this causes us to move loading the logic
for finding test method names out of the runner and into main.

I'm taking advantage of this to simplify some other stuff from
the runner as well; it is now very simple and doesn't expose its
dependency on unittest.TestResult at all (nor will the Printer
use TestResult).

Subsequent patches will move the custom loader from
port_testcase so that we can properly choose whether to run
integration tests and/or serial tests, and then update the
appropriate tests to run only serially.

* Scripts/webkitpy/test/main.py:
(Tester._run_tests):
(Tester):
(Tester._check_imports):
(Tester._test_names):
(Tester._all_test_names):
* Scripts/webkitpy/test/printer.py:
(Printer.__init__):
(Printer.write_update):
(Printer):
(Printer.print_finished_test):
(Printer.print_result):
* Scripts/webkitpy/test/runner.py:
(unit_test_name):
(Runner.__init__):
(Runner.run):
(Runner.handle):
(_Worker.handle):
* Scripts/webkitpy/test/runner_unittest.py:
(FakeLoader.loadTestsFromName):
(RunnerTest.test_run):

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

9 years agoDOM4: className should be defined on Element and not on HTMLElement
arv@chromium.org [Thu, 2 Aug 2012 21:28:12 +0000 (21:28 +0000)]
DOM4: className should be defined on Element and not on HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=93014

Reviewed by Adam Barth.

DOM4 specs that Element should have the className WebIDL attribute. This moves the
attribute to the correct IDL file.

Source/WebCore:

Test: fast/dom/Element/class-name.html

* dom/Element.idl:
* html/HTMLElement.idl:

LayoutTests:

* fast/dom/Element/class-name-expected.txt: Added.
* fast/dom/Element/class-name.html: Added.

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

9 years ago[V8] Handle case where Error.prototype returns an empty object
arv@chromium.org [Thu, 2 Aug 2012 21:25:37 +0000 (21:25 +0000)]
[V8] Handle case where Error.prototype returns an empty object
https://bugs.webkit.org/show_bug.cgi?id=91792

Reviewed by Kentaro Hara.

In some edge cases we get an empty object back from Error.prototype.

No new tests. I cannot reproduce this.

* bindings/v8/V8BindingPerContextData.cpp:
(WebCore::V8BindingPerContextData::constructorForTypeSlowCase):

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

9 years agoUnreviewed, build fix for DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).
fpizlo@apple.com [Thu, 2 Aug 2012 21:10:43 +0000 (21:10 +0000)]
Unreviewed, build fix for DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):

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

9 years agoAdd back ASSERT(!needsLayout) to RenderTableSection which is now valid
eric@webkit.org [Thu, 2 Aug 2012 21:06:06 +0000 (21:06 +0000)]
Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Unreviewed, follow-up per Mitz's request.

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint):

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

9 years ago[chromium] Remove unused includes from compositor code
jamesr@google.com [Thu, 2 Aug 2012 21:00:39 +0000 (21:00 +0000)]
[chromium] Remove unused includes from compositor code
https://bugs.webkit.org/show_bug.cgi?id=92930

Reviewed by Adrienne Walker.

* platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
* platform/graphics/chromium/ScrollbarLayerChromium.cpp:
* platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:

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

9 years agoTurn on tests for the mac-ews, for realz this time.
abarth@webkit.org [Thu, 2 Aug 2012 20:50:45 +0000 (20:50 +0000)]
Turn on tests for the mac-ews, for realz this time.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(MacEWS):

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

9 years agoThe generic bindings shouldn't use templates
abarth@webkit.org [Thu, 2 Aug 2012 20:49:19 +0000 (20:49 +0000)]
The generic bindings shouldn't use templates
https://bugs.webkit.org/show_bug.cgi?id=93016

Reviewed by Eric Seidel.

Source/WebCore:

We originally created the generic bindings to share code between the
JavaScriptCore and V8 bindings. However, the code came out sort of ugly
because we used templates (with the idea that templates would let us
use more than one scripting engine).

This patch rips out the templates in an attempt to make the code
prettier and therefore easier to use in both V8 and JSC. I've tried to
keep this patch small by remaning things mostly in place. In the next
patch, I'll move a bunch of code out of headers and into cpp files.

No behavior change.

* GNUmakefile.am:
* UseV8.cmake:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.pri:
* bindings/generic/BindingSecurity.h:
(WebCore):
(BindingSecurity):
(WebCore::BindingSecurity::canAccessWindow):
(WebCore::BindingSecurity::canAccessFrame):
(WebCore::BindingSecurity::shouldAllowAccessToNode):
(WebCore::BindingSecurity::allowPopUp):
(WebCore::BindingSecurity::allowSettingFrameSrcToJavascriptUrl):
(WebCore::BindingSecurity::allowSettingSrcToJavascriptURL):
* bindings/generic/GenericBinding.h:
(WebCore::completeURL):
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateDomainSafeFunctionGetter):
(GenerateNormalAttrGetter):
(GenerateReplaceableAttrSetter):
(GenerateFunctionCallback):
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
* bindings/scripts/test/V8/V8TestException.cpp:
* bindings/scripts/test/V8/V8TestInterface.cpp:
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
* bindings/scripts/test/V8/V8TestNode.cpp:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::contentDocumentAttrGetter):
(WebCore::TestObjV8Internal::getSVGDocumentCallback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
* bindings/v8/BindingState.cpp: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.cpp.
(WebCore):
(WebCore::BindingState::instance):
(WebCore::activeWindow):
(WebCore::firstWindow):
(WebCore::activeFrame):
(WebCore::firstFrame):
(WebCore::immediatelyReportUnsafeAccessTo):
* bindings/v8/BindingState.h: Renamed from Source/WebCore/bindings/v8/specialization/V8BindingState.h.
(WebCore):
(BindingState):
* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::canAccessFromCurrentOrigin):
* bindings/v8/V8Binding.h:
(WebCore):
* bindings/v8/V8DOMWindowShell.cpp:
* bindings/v8/V8Proxy.cpp:
* bindings/v8/V8Utilities.cpp:
(WebCore::callingOrEnteredFrame):
(WebCore::completeURL):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::WindowSetTimeoutImpl):
(WebCore::V8DOMWindow::eventAccessorGetter):
(WebCore::V8DOMWindow::eventAccessorSetter):
(WebCore::V8DOMWindow::locationAccessorSetter):
(WebCore::V8DOMWindow::openerAccessorSetter):
(WebCore::V8DOMWindow::addEventListenerCallback):
(WebCore::V8DOMWindow::removeEventListenerCallback):
(WebCore::V8DOMWindow::showModalDialogCallback):
(WebCore::V8DOMWindow::openCallback):
(WebCore::V8DOMWindow::namedSecurityCheck):
(WebCore::V8DOMWindow::indexedSecurityCheck):
* bindings/v8/custom/V8DocumentLocationCustom.cpp:
(WebCore::V8Document::locationAccessorSetter):
* bindings/v8/custom/V8EntryCustom.cpp:
* bindings/v8/custom/V8EntrySyncCustom.cpp:
* bindings/v8/custom/V8HTMLFrameElementCustom.cpp:
(WebCore::V8HTMLFrameElement::locationAccessorSetter):
* bindings/v8/custom/V8HistoryCustom.cpp:
(WebCore::V8History::indexedSecurityCheck):
(WebCore::V8History::namedSecurityCheck):
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
* bindings/v8/custom/V8InjectedScriptManager.cpp:
(WebCore::InjectedScriptManager::canAccessInspectedWindow):
* bindings/v8/custom/V8LocationCustom.cpp:
(WebCore::V8Location::hashAccessorSetter):
(WebCore::V8Location::hostAccessorSetter):
(WebCore::V8Location::hostnameAccessorSetter):
(WebCore::V8Location::hrefAccessorSetter):
(WebCore::V8Location::pathnameAccessorSetter):
(WebCore::V8Location::portAccessorSetter):
(WebCore::V8Location::protocolAccessorSetter):
(WebCore::V8Location::searchAccessorSetter):
(WebCore::V8Location::reloadAccessorGetter):
(WebCore::V8Location::replaceAccessorGetter):
(WebCore::V8Location::assignAccessorGetter):
(WebCore::V8Location::reloadCallback):
(WebCore::V8Location::replaceCallback):
(WebCore::V8Location::assignCallback):
(WebCore::V8Location::toStringCallback):
(WebCore::V8Location::indexedSecurityCheck):
(WebCore::V8Location::namedSecurityCheck):
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
* bindings/v8/custom/V8NodeCustom.cpp:

Source/WebKit/chromium:

Update #include.

* src/WebBindings.cpp:

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

9 years agoNo isChildAllowed checked when adding RenderFullScreen as the child..
inferno@chromium.org [Thu, 2 Aug 2012 20:44:31 +0000 (20:44 +0000)]
No isChildAllowed checked when adding RenderFullScreen as the child..
https://bugs.webkit.org/show_bug.cgi?id=92995

Reviewed by Eric Seidel.

Source/WebCore:

Test: fullscreen/fullscreen-child-not-allowed-crash.html

* dom/Document.cpp:
(WebCore::Document::webkitWillEnterFullScreenForElement): pass the object's parent
pointer as an additional argument.
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRendererFactory::createRendererIfNeeded): pass the to be parent |parentRenderer|
as the argument.
* rendering/RenderFullScreen.cpp:
(RenderFullScreen::wrapRenderer): make sure that parent allows RenderFullScreen as the child.
* rendering/RenderFullScreen.h:
(RenderFullScreen): support the object's parent
pointer as an additional argument.

LayoutTests:

* fullscreen/fullscreen-child-not-allowed-crash-expected.txt: Added.
* fullscreen/fullscreen-child-not-allowed-crash.html: Added.

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

9 years ago[chromium] Wrap shared context getters in WebKit API and avoid WebCore::GraphicsConte...
jamesr@google.com [Thu, 2 Aug 2012 20:33:42 +0000 (20:33 +0000)]
[chromium] Wrap shared context getters in WebKit API and avoid WebCore::GraphicsContext3D use in compositor internals
https://bugs.webkit.org/show_bug.cgi?id=92917

Reviewed by Adrienne Walker.

Source/Platform:

This adds Platform API for creating and accessing shared GraphicsContext3D and Ganesh contexts from the main or
compositor threads. These can be used for evaluating filters or doing accelerated painting. These contexts are
generally leaked until lost or process exit, the details are documented in WebSharedGraphicsContext3D.h

* Platform.gypi:
* chromium/public/WebSharedGraphicsContext3D.h: Added.
(WebKit):
(WebSharedGraphicsContext3D):

Source/WebCore:

This uses Platform API wrappers to access the shared WebGraphicsContext3D / Ganesh contexts from the compositor
to evaluate accelerated filters or do accelerated painting.

Filters changes covered by css3/filters/*-hw.html layout tests.

* WebCore.gypi:
* platform/chromium/support/WebSharedGraphicsContext3D.cpp:
(WebKit):
(WebKit::WebSharedGraphicsContext3D::mainThreadContext):
(WebKit::WebSharedGraphicsContext3D::mainThreadGrContext):
(WebKit::WebSharedGraphicsContext3D::compositorThreadContext):
(WebKit::WebSharedGraphicsContext3D::compositorThreadGrContext):
(WebKit::WebSharedGraphicsContext3D::haveCompositorThreadContext):
(WebKit::WebSharedGraphicsContext3D::createCompositorThreadContext):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:
(WebCore::createAcceleratedCanvas):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):
* platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:
(WebKit):
(FrameBufferSkPictureCanvasLayerTextureUpdater):
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::applyFilters):
* platform/graphics/chromium/cc/CCRenderSurfaceFilters.cpp:
(WebCore::CCRenderSurfaceFilters::apply):
* platform/graphics/chromium/cc/CCRenderSurfaceFilters.h:
(WebKit):
(CCRenderSurfaceFilters):

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=93020
bdakin@apple.com [Thu, 2 Aug 2012 20:30:15 +0000 (20:30 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=93020
REGRESSION (tiled scrolling): Full-screen video is broken if page is
scrolled
-and corresponding-
<rdar://problem/11629778>

Reviewed by Anders Carlsson.

The bug here is that ScrollingTreeNodeMac::setScrollLayerPosition()
uses the CALayer (PlatformLayer) directly to set the position. That
means that the GraphicsLayer that owns that PlatformLayer does not
have updated position information. That results in this bug when we
switch from fast scrolling to main thread scrolling, because at that
point, the GraphicsLayer needs to have the correct information. So
make sure to update the main thread scroll position and layer
position before transitioning to main thread scrolling.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):

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

9 years agoUnreviewed debug build fix (bug 92889)
commit-queue@webkit.org [Thu, 2 Aug 2012 20:23:16 +0000 (20:23 +0000)]
Unreviewed debug build fix (bug 92889)

Patch by Antonio Gomes <agomes@rim.com> on 2012-08-02

* WebKitSupport/InRegionScroller.cpp:
(BlackBerry::WebKit::pushBackInRegionScrollable):

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

9 years ago[BlackBerry] Rounding error of destination rect of checkerboard
commit-queue@webkit.org [Thu, 2 Aug 2012 19:53:52 +0000 (19:53 +0000)]
[BlackBerry] Rounding error of destination rect of checkerboard
https://bugs.webkit.org/show_bug.cgi?id=93012

Patch by Leo Yang <leoyang@rim.com> on 2012-08-02
Reviewed by Rob Buis.

Reviewed internally by Jakob Petsovits.

Intersect with the destination rectangle to eliminate the rounding error.

* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::blitContents):

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

9 years agoWeb Inspector: Rename 'User agent' to 'Overrides' in settings screen
commit-queue@webkit.org [Thu, 2 Aug 2012 19:42:01 +0000 (19:42 +0000)]
Web Inspector: Rename 'User agent' to 'Overrides' in settings screen
https://bugs.webkit.org/show_bug.cgi?id=92990

Patch by Addy Osmani <addyo@chromium.org> on 2012-08-02
Reviewed by Pavel Feldman.

Simple setting rename of User agent -> Overrides

* English.lproj/localizedStrings.js:
* inspector/front-end/SettingsScreen.js:

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

9 years agoDo not dispatch modification events in SVG attribute synchronization
pdr@google.com [Thu, 2 Aug 2012 19:36:04 +0000 (19:36 +0000)]
Do not dispatch modification events in SVG attribute synchronization
https://bugs.webkit.org/show_bug.cgi?id=92604

Reviewed by Ryosuke Niwa.

Source/WebCore:

Previously, calling hasAttribute() during layout could hit a
layout-during-layout bug because calling hasAttribute() could dispatch a
subtree modification event which could synchronously force a layout. hasAttribute()
exhibits this behavior because property synchronization is done lazily.

This patch skips dispatching subtree modification events during attribute
synchronization.

Additionally, this patch contains a refactoring of lazy attribute setting. We
now have a single place where lazy attributes are set (setSynchronizedLazyAttribute)
and lazy attribute flags have been moved to just Element and ElementAttributeData.

Test: svg/custom/path-domsubtreemodified-crash.html

* dom/Element.cpp:
(WebCore::Element::setAttribute):
(WebCore::Element::setSynchronizedLazyAttribute):
(WebCore):
(WebCore::Element::setAttributeInternal):
* dom/Element.h:
(Element):
* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::addAttribute):
(WebCore::ElementAttributeData::removeAttribute):
* dom/ElementAttributeData.h:
(ElementAttributeData):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
* svg/properties/SVGAnimatedPropertyMacros.h:
(WebCore::SVGSynchronizableAnimatedProperty::synchronize):

LayoutTests:

* svg/custom/path-domsubtreemodified-crash-expected.txt: Added.
* svg/custom/path-domsubtreemodified-crash.html: Added.

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

9 years agoWeb Inspector: Override the DeviceOrientation
kpiascik@rim.com [Thu, 2 Aug 2012 19:29:26 +0000 (19:29 +0000)]
Web Inspector: Override the DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=91008

Reviewed by Pavel Feldman.

Source/WebCore:

Re-added the m_page member variable to DeviceOrientationController and
added InspectorInstrumentation to see if the DeviceOrientationData
should be overridden or not.

Added UI to the web inspector front-end to allow users to override the
device orientation.  This is currently hidden behind an experiment.

Test: inspector/device-orientation-success.html

* English.lproj/localizedStrings.js:
* dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::DeviceOrientationController):
(WebCore::DeviceOrientationController::create):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
(WebCore::provideDeviceOrientationTo):
* dom/DeviceOrientationController.h:
(DeviceOrientationController):
* inspector/Inspector.json:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::overrideDeviceOrientationImpl):
* inspector/InspectorInstrumentation.h:
(WebCore):
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::overrideDeviceOrientation):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::setDeviceOrientationOverride):
(WebCore):
(WebCore::InspectorPageAgent::clearDeviceOrientationOverride):
(WebCore::InspectorPageAgent::canOverrideDeviceOrientation):
(WebCore::InspectorPageAgent::overrideDeviceOrientation):
* inspector/InspectorPageAgent.h:
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/SettingsScreen.js:
(WebInspector.UserAgentSettingsTab):
(WebInspector.UserAgentSettingsTab.prototype._createInput):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceMetricsElement):
(WebInspector.UserAgentSettingsTab.prototype._createGeolocationOverrideElement):
(WebInspector.UserAgentSettingsTab.prototype._onDeviceOrientationOverrideCheckboxClicked):
(WebInspector.UserAgentSettingsTab.prototype._applyDeviceOrientationUserInput):
(WebInspector.UserAgentSettingsTab.prototype._setDeviceOrientation.set if):
(WebInspector.UserAgentSettingsTab.prototype._setDeviceOrientation):
(WebInspector.UserAgentSettingsTab.prototype._createDeviceOrientationOverrideElement):
* inspector/front-end/UserAgentSupport.js:
(WebInspector.UserAgentSupport.DeviceOrientation):
(WebInspector.UserAgentSupport.DeviceOrientation.prototype.toSetting):
(WebInspector.UserAgentSupport.DeviceOrientation.parseSetting):
(WebInspector.UserAgentSupport.DeviceOrientation.parseUserInput):
(WebInspector.UserAgentSupport.DeviceOrientation.clearDeviceOrientationOverride):
* inspector/front-end/inspector.js:
(WebInspector.doLoadedDone):

LayoutTests:

New tests for Device Orientation override.

* inspector/device-orientation-success-expected.txt: Added.
* inspector/device-orientation-success.html: Added.

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

9 years agoTypedArray set method is slow when called with another typed array
commit-queue@webkit.org [Thu, 2 Aug 2012 19:20:33 +0000 (19:20 +0000)]
TypedArray set method is slow when called with another typed array
https://bugs.webkit.org/show_bug.cgi?id=92556

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-08-02
Reviewed by Kenneth Russell.

PerformanceTests:

* Bindings/typed-array-set-from-typed.html: Added.

Source/WebCore:

When setting multiples values to a typed array from an array like
element, try to determine if the argument is a typed array. If so,
cast the argument to a typed array, and read each element with .item()
method. That avoid reading the value as a JSValue, and speedups set
method by approximatively 10x.

Introduce setWebGLArrayWithTypedArrayArgument template function which
checks if argument is a typed array. If so, it copies the data to
target typed array and returns true. Otherwise, it returns false.

Introduce copyTypedArrayBuffer template function which copies data
from a typed array to another one. This function is also used from
constructArrayBufferViewWithTypedArrayArgument.

* bindings/js/JSArrayBufferViewHelper.h:
(WebCore):
(WebCore::copyTypedArrayBuffer):
(WebCore::setWebGLArrayWithTypedArrayArgument):
(WebCore::setWebGLArrayHelper):
(WebCore::constructArrayBufferViewWithTypedArrayArgument):
* bindings/js/JSFloat32ArrayCustom.cpp:
(WebCore::JSFloat32Array::set):
* bindings/js/JSFloat64ArrayCustom.cpp:
(WebCore::JSFloat64Array::set):
* bindings/js/JSInt16ArrayCustom.cpp:
(WebCore::JSInt16Array::set):
* bindings/js/JSInt32ArrayCustom.cpp:
(WebCore::JSInt32Array::set):
* bindings/js/JSInt8ArrayCustom.cpp:
(WebCore::JSInt8Array::set):
* bindings/js/JSUint16ArrayCustom.cpp:
(WebCore::JSUint16Array::set):
* bindings/js/JSUint32ArrayCustom.cpp:
(WebCore::JSUint32Array::set):
* bindings/js/JSUint8ArrayCustom.cpp:
(WebCore::JSUint8Array::set):
* bindings/js/JSUint8ClampedArrayCustom.cpp:
(WebCore::JSUint8ClampedArray::set):

Source/WTF:

Add an checkInboundData function to TypedArrayBase to check if a
position will be not be out of bound or overflow from the typed array.

* wtf/TypedArrayBase.h:
(WTF::TypedArrayBase::checkInboundData):
(TypedArrayBase):

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

9 years agoAXEnabled = false for AXIncrementors inside text fields
cfleizach@apple.com [Thu, 2 Aug 2012 18:53:16 +0000 (18:53 +0000)]
AXEnabled = false for AXIncrementors inside text fields
https://bugs.webkit.org/show_bug.cgi?id=93008

Reviewed by Anders Carlsson.

Source/WebCore:

Mock objects should return "enabled" by default, since they are valid objects.

* accessibility/AccessibilityMockObject.h:
(WebCore::AccessibilityMockObject::isEnabled):
(AccessibilityMockObject):

LayoutTests:

Update tests to reflect that mock objects should be enabled by default.

* platform/mac/accessibility/html5-input-number-expected.txt:
* platform/mac/accessibility/html5-input-number.html:
* platform/mac/accessibility/table-attributes-expected.txt:
* platform/mac/accessibility/table-sections-expected.txt:

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

9 years ago[Chromium-Android] Run layout tests on multiple devices in parallel
wangxianzhu@chromium.org [Thu, 2 Aug 2012 18:46:24 +0000 (18:46 +0000)]
[Chromium-Android] Run layout tests on multiple devices in parallel
https://bugs.webkit.org/show_bug.cgi?id=92877

Reviewed by Dirk Pranke.

Moved methods that run command on a particular device from ChromiumAndroidPort to ChromiumAndroidDriver.
The drivers run adb commands with the '-s serial_number' parameter which specifies the device according to the work_number.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.__init__):
(ChromiumAndroidPort.default_child_processes): Default to the number of attached devices.
(ChromiumAndroidPort.test_expectations): Removed because it is unused.
(ChromiumAndroidPort.setup_test_run): Most contents moved into ChromiumAndroidDriver._setup_test()
(ChromiumAndroidPort.clean_up_test_run): Now the http server is stopped here.
(ChromiumAndroidPort._get_devices):
(ChromiumAndroidPort._get_device_serial):
(ChromiumAndroidDriver):
(ChromiumAndroidDriver.__init__):
(ChromiumAndroidDriver.__del__):
(ChromiumAndroidDriver._setup_test): Original contents of ChromiumAndroidPort.setup_test_run().
(ChromiumAndroidDriver._push_executable): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._push_fonts): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._push_test_resources): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._synchronize_datetime): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._run_adb_command): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._teardown_performance): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver._get_crash_log): Moved from ChromiumAndroidPort.
(ChromiumAndroidDriver.cmd_line):
(ChromiumAndroidDriver._file_exists_on_device):
(ChromiumAndroidDriver._remove_all_pipes):
(ChromiumAndroidDriver._start):
(ChromiumAndroidDriver._start_once):
(ChromiumAndroidDriver.stop):
* Scripts/webkitpy/layout_tests/port/chromium_android_unittest.py:
(MockRunCommand):
(MockRunCommand.__init__):
(MockRunCommand.mock_run_command_fn):
(MockRunCommand.mock_no_device):
(MockRunCommand.mock_one_device):
(MockRunCommand.mock_two_devices):
(MockRunCommand.mock_no_tombstone_dir):
(MockRunCommand.mock_no_tombstone_file):
(MockRunCommand.mock_ten_tombstones):
(MockRunCommand.mock_logcat):
(ChromiumAndroidPortTest):
(ChromiumAndroidPortTest.make_port):
(ChromiumAndroidPortTest.test_driver_cmd_line):
(ChromiumAndroidPortTest.test_get_devices_no_device):
(ChromiumAndroidPortTest.test_get_devices_one_device):
(ChromiumAndroidPortTest.test_get_devices_two_devices):
(ChromiumAndroidPortTest.test_get_device_serial_no_device):
(ChromiumAndroidPortTest.test_get_device_serial_one_device):
(ChromiumAndroidPortTest.test_get_device_serial_two_devices):
(ChromiumAndroidDriverTest):
(ChromiumAndroidDriverTest.setUp):
(ChromiumAndroidDriverTest.test_get_last_stacktrace):
(ChromiumAndroidDriverTest.test_get_crash_log):
(ChromiumAndroidDriverTest.test_cmd_line):
(ChromiumAndroidDriverTwoDriversTest):
(ChromiumAndroidDriverTwoDriversTest.test_two_drivers):
* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver.run_test):
(Driver._get_crash_log): Added to allow subclasses to override.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args): Removed the --adb-args command-line parameter because now we select device automatically. Added --adb-device to specify devices.

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

9 years agoLayout Test: compositing/backface-visibility/backface-visibility-webgl.html is not...
commit-queue@webkit.org [Thu, 2 Aug 2012 18:41:47 +0000 (18:41 +0000)]
Layout Test: compositing/backface-visibility/backface-visibility-webgl.html is not supported on Windows.
No WebGL support.
https://bugs.webkit.org/show_bug.cgi?id=92929

Patch by Roger Fong <roger_fong@apple.com> on 2012-08-02
Reviewed by Tim Horton.

* platform/win/Skipped:
compositing/backface-visibility/backface-visibility-webgl.html added to Windows skip list.

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

9 years ago[GTK] Inspector should set a default attached height before being attached
carlosgc@webkit.org [Thu, 2 Aug 2012 17:44:28 +0000 (17:44 +0000)]
[GTK] Inspector should set a default attached height before being attached
https://bugs.webkit.org/show_bug.cgi?id=90767

Reviewed by Xan Lopez.

We are currently using the minimum attached height in
WebKitWebViewBase as the default height for the inspector when
attached. It would be easier for WebKitWebViewBase and embedders
implementing attach() if the inspector already had an attached
height set when it's being attached.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerAdd): Don't initialize
inspectorViewHeight.
(webkitWebViewBaseSetInspectorViewHeight): Allow to set the
inspector view height before having an inpector view, but only
queue a resize when the view already has an inspector view.
* UIProcess/API/gtk/tests/TestInspector.cpp:
(testInspectorDefault):
(testInspectorManualAttachDetach):
* UIProcess/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformAttach): Set the default
attached height before attach the inspector view.

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

9 years ago[Chromium] Add a stub for WebView::getTouchHighlightQuads()
peter@chromium.org [Thu, 2 Aug 2012 17:40:27 +0000 (17:40 +0000)]
[Chromium] Add a stub for WebView::getTouchHighlightQuads()
https://bugs.webkit.org/show_bug.cgi?id=92997

Reviewed by Adam Barth.

Chrome on Android will be using this method for the link preview
implementation, discussion about which is available in Bug 79150. Since
that system is fairly big, will require refactoring, and the unavailable
APIs are blocking API compatibility, add a stub for now.

Together with the WebView API, also add the "WebTouchCandidatesInfo"
structure which is being used by it.

Source/Platform:

* Platform.gypi: List WebTouchCandidatesInfo.h
* chromium/public/WebTouchCandidatesInfo.h: Added.
(WebKit):
(WebTouchCandidatesInfo):
(WebKit::WebTouchCandidatesInfo::WebTouchCandidatesInfo):

Source/WebKit/chromium:

* public/WebView.h:
(WebKit):
(WebView):
* src/WebViewImpl.cpp:
(WebKit):
(WebKit::WebViewImpl::getTouchHighlightQuads):
* src/WebViewImpl.h:
(WebViewImpl):

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

9 years agoWebKitTestRunner needs layoutTestController.setUserStyleSheetEnabled
commit-queue@webkit.org [Thu, 2 Aug 2012 17:36:59 +0000 (17:36 +0000)]
WebKitTestRunner needs layoutTestController.setUserStyleSheetEnabled
https://bugs.webkit.org/show_bug.cgi?id=42679

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-08-02
Reviewed by Eric Seidel.

Source/WebKit2:

Added WKBundleSetUserStyleSheetLocation API.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetUserStyleSheetLocation): Added.
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetUserStyleSheetLocation.
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setUserStyleSheetLocation): Added. Sets the user style sheet location
for all pages in the page group.
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Added
setUserStyleSheetEnabled and setUserStyleSheetLocation.
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::LayoutTestController): Initialize new members added.
(WTR::LayoutTestController::setUserStyleSheetEnabled): Added.
(WTR::LayoutTestController::setUserStyleSheetLocation): Added.
* WebKitTestRunner/InjectedBundle/LayoutTestController.h: Added members
userStyleSheetEnabled, and m_userStyleSheetLocation and methods
setUserStyleSheetEnabled, and setUserStyleSheetLocation.

LayoutTests:

Removed tests that are now passing.

* platform/wk2/Skipped:

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

9 years agoRemove all uses of ClassInfo for JSStrings in JIT code
mhahnenberg@apple.com [Thu, 2 Aug 2012 17:32:35 +0000 (17:32 +0000)]
Remove all uses of ClassInfo for JSStrings in JIT code
https://bugs.webkit.org/show_bug.cgi?id=92935

Reviewed by Geoffrey Garen.

This is the first step in removing our dependence on in-object ClassInfo pointers
in JIT code. Most of the changes are to check the Structure, which is unique for
JSString primitives.

* bytecode/SpeculatedType.cpp:
(JSC::speculationFromClassInfo):
(JSC::speculationFromStructure): Changed to check the TypeInfo in the Structure
since there wasn't a JSGlobalData immediately available to grab the JSString
Structure out of.
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* jit/JITInlineMethods.h:
(JSC::JIT::emitLoadCharacterString):
* jit/JITOpcodes.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emit_op_convert_this):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::emit_op_to_primitive):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_convert_this):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
* jit/SpecializedThunkJIT.h:
(JSC::SpecializedThunkJIT::loadJSStringArgument):
* jit/ThunkGenerators.cpp:
(JSC::stringCharLoad):
(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):

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

9 years agoAdd back ASSERT(!needsLayout) to RenderTableSection which is now valid
eric@webkit.org [Thu, 2 Aug 2012 17:25:10 +0000 (17:25 +0000)]
Add back ASSERT(!needsLayout) to RenderTableSection which is now valid
https://bugs.webkit.org/show_bug.cgi?id=92954

Reviewed by Julien Chaffraix.

* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint):

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

9 years agoSpeech JavaScript API: Fire speech start event at the same time as sound start event
hans@chromium.org [Thu, 2 Aug 2012 17:14:03 +0000 (17:14 +0000)]
Speech JavaScript API: Fire speech start event at the same time as sound start event
https://bugs.webkit.org/show_bug.cgi?id=92971

Reviewed by Adam Barth.

Source/WebKit/chromium:

Chromium's speech recognizer doesn't differentiate between "sound
started" and "speech started". Just fire those events at the same
time, and don't provide functions for them in
WebSpeechRecognizerClient.

* public/WebSpeechRecognizerClient.h:
* src/SpeechRecognitionClientProxy.cpp:
(WebKit::SpeechRecognitionClientProxy::didStartSound):
(WebKit::SpeechRecognitionClientProxy::didEndSound):
* src/SpeechRecognitionClientProxy.h:
(SpeechRecognitionClientProxy):

Tools:

Update the MockWebSpeechRecognizer to not fire "speech started" events
separately.

* DumpRenderTree/chromium/MockWebSpeechRecognizer.cpp:
(MockWebSpeechRecognizer::start):

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

9 years agoMonth-year selector on calendar picker should be touch friendly.
commit-queue@webkit.org [Thu, 2 Aug 2012 17:01:56 +0000 (17:01 +0000)]
Month-year selector on calendar picker should be touch friendly.
https://bugs.webkit.org/show_bug.cgi?id=92678

Patch by Kevin Ellis <kevers@chromium.org> on 2012-08-02
Reviewed by Kent Tamura.

Previously the month-year popup menu was implemented using a listbox,
which does not support CSS customization.  Entries in the listbox
were too shallow to reliably target with touch gestures.  The
replacement popup is CSS configurable with larger entries on devices
that support touch input.

Manually tested with and without touch support in English, Japanese
and Arabic.

* Resources/calendarPicker.css:
(.month-selector-popup): Update to use scrollable div instead of listbox.
(.month-selector-popup-contents): Render popup as a table within a scrollable div.
(.month-selector-popup-entry): Formatting entries in the month-year popup.
(.selected-month-year): Highlight the selected month-year.
(@media (pointer:coarse)): Enlarge entries in the popup meu on devices that support touch.
* Resources/calendarPicker.js:
(YearMonthController.prototype.attachTo): Change selector popup from a list-box to a div.
(YearMonthController.prototype._redraw): Populate table based popup rather than listbox.
(YearMonthController.prototype._showPopup): Set scroll position and resize for scrollbar.
(YearMonthController.prototype._closePopup): Restore focus to the calendar.
(YearMonthController.prototype._getSelection): Added to retrieve the selected month-year.
(YearMonthController.prototype._handleMouseMove): Added to update selected month-year on hover.
(YearMonthController.prototype._handleMonthPopupKey): Add keyboard navigation.
(YearMonthController.prototype._handleYearMonthChange): Retrieve value from selected month-year.

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

9 years ago[GTK] make sometimes using a single core
philn@webkit.org [Thu, 2 Aug 2012 16:53:21 +0000 (16:53 +0000)]
[GTK] make sometimes using a single core
https://bugs.webkit.org/show_bug.cgi?id=92998

Reviewed by Martin Robinson.

In the GTK 64-bit Release buildbot some builds use a single core
for the make process. I suspect this is because in those cases
nproc reports a single core available. The proposed solution is to
always rely on all the cores available in the machine.

* Scripts/webkitdirs.pm:
(determineNumberOfCPUs):

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

9 years ago[Chromium] WebViewImpl::showTouchHighlightQuads isn't needed for Android
abarth@webkit.org [Thu, 2 Aug 2012 16:48:33 +0000 (16:48 +0000)]
[Chromium] WebViewImpl::showTouchHighlightQuads isn't needed for Android
https://bugs.webkit.org/show_bug.cgi?id=92921

Reviewed by Nate Chapin.

We originally added a stub implementation of this function to make
merging detectContentOnTouch easier, but showTouchHighlightQuads is
being removed from the chromium-android branch in favor of the code in
https://bugs.webkit.org/show_bug.cgi?id=84487. This patch removes the
stub.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::detectContentIntentOnTouch):
* src/WebViewImpl.h:
(WebViewImpl):

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

9 years ago[BlackBerry] Implement InRegionScroller class as a in-region scroll controller
tonikitoo@webkit.org [Thu, 2 Aug 2012 16:42:13 +0000 (16:42 +0000)]
[BlackBerry] Implement InRegionScroller class as a in-region scroll controller
https://bugs.webkit.org/show_bug.cgi?id=92889
PR #186587

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

Internally reviewed by Arvid Nilsson.

Source/WebKit:

* PlatformBlackBerry.cmake: Added InRegionScroller.cpp|h to the build system.

Source/WebKit/blackberry:

Moved all in-region scrolling code out of WebPagePrivate to the just
created InRegionScroller class. This class aims to:

1) Centralize all in-region scroll code and clean up WebPagePrivate as a consequence.
2) Be the bases to add UI/Compositing thread driven scrolls to in-region.

The patch does not change any functionallity change.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::scrollBy):
(BlackBerry::WebKit::WebPagePrivate::notifyInRegionScrollStatusChanged):
(BlackBerry::WebKit::WebPagePrivate::clearDocumentData):
(BlackBerry::WebKit::WebPagePrivate::setScrollOriginPoint):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::layer):
* WebKitSupport/InRegionScroller.cpp: Added.
(WebKit):
(BlackBerry::WebKit::canScrollInnerFrame):
(BlackBerry::WebKit::canScrollRenderBox):
(BlackBerry::WebKit::parentLayer):
(BlackBerry::WebKit::enclosingLayerNode):
(BlackBerry::WebKit::isNonRenderViewFixedPositionedContainer):
(BlackBerry::WebKit::pushBackInRegionScrollable):
(BlackBerry::WebKit::InRegionScroller::InRegionScroller):
(BlackBerry::WebKit::InRegionScroller::setNode):
(BlackBerry::WebKit::InRegionScroller::node):
(BlackBerry::WebKit::InRegionScroller::reset):
(BlackBerry::WebKit::InRegionScroller::isNull):
(BlackBerry::WebKit::InRegionScroller::scrollBy):
(BlackBerry::WebKit::InRegionScroller::inRegionScrollableAreasForPoint):
(BlackBerry::WebKit::InRegionScroller::scrollNodeRecursively):
(BlackBerry::WebKit::InRegionScroller::scrollRenderer):
(BlackBerry::WebKit::InRegionScroller::adjustScrollDelta):
* WebKitSupport/InRegionScroller.h: Added.
(WebCore):
(WebKit):
(InRegionScroller):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

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

9 years agoWeb Inspector: [Regression] context menu does not open on Sources panel tabs on mac
vsevik@chromium.org [Thu, 2 Aug 2012 16:36:56 +0000 (16:36 +0000)]
Web Inspector: [Regression] context menu does not open on Sources panel tabs on mac
https://bugs.webkit.org/show_bug.cgi?id=93000

Reviewed by Pavel Feldman.

* inspector/front-end/UIUtils.js:
(WebInspector._elementDragStart):

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

9 years agoRe-land http://trac.webkit.org/changeset/94441 now that lforschler is ready.
abarth@webkit.org [Thu, 2 Aug 2012 16:36:50 +0000 (16:36 +0000)]
Re-land trac.webkit.org/changeset/94441 now that lforschler is ready.

This patch enables testing on the mac-ews bots.

* Scripts/webkitpy/tool/commands/earlywarningsystem.py:

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

9 years ago[Chromium] Merge final nits to DumpRenderTree.gyp for Android
abarth@webkit.org [Thu, 2 Aug 2012 16:30:43 +0000 (16:30 +0000)]
[Chromium] Merge final nits to DumpRenderTree.gyp for Android
https://bugs.webkit.org/show_bug.cgi?id=90920

Reviewed by Tony Chang.

This patch contains the last few small changes to DumpRenderTree.gyp
from the chromium-android branch. After this change, this file will be
fully merged.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

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

9 years ago[EFL][GTK] Implement font-feature settings
commit-queue@webkit.org [Thu, 2 Aug 2012 16:14:35 +0000 (16:14 +0000)]
[EFL][GTK] Implement font-feature settings
https://bugs.webkit.org/show_bug.cgi?id=84239

Unreviewed EFL gardening.

Now working after bug 91864 is closed.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-08-02

* platform/efl/TestExpectations:
* platform/efl/css3/font-feature-settings-rendering-expected.png:
* platform/efl/css3/font-feature-settings-rendering-expected.txt:

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

9 years agoCheck if the last table element's parent node is an element when determining the...
commit-queue@webkit.org [Thu, 2 Aug 2012 16:11:50 +0000 (16:11 +0000)]
Check if the last table element's parent node is an element when determining the foster parent element.
https://bugs.webkit.org/show_bug.cgi?id=92977

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-08-02
Reviewed by Adam Barth.

Source/WebCore:

According to the HTML5 spec, if the last table element in the stack of open elements has no parent,
or ITS PARENT NODE IS NOT AN ELEMENT, then the foster parent element is the element
before the last table element in the stack of open elements.

Changed to check if the table element's parent node is an element.

Test: fast/parser/foster-parent.html

* html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::findFosterSite):

LayoutTests:

This new test changes the table element's parent node to a newly created document fragment node.
Because a document fragment node is not an element, the foster parent element must be the element
before the last table element in the stack of open elements.

* fast/parser/foster-parent-expected.txt: Added.
* fast/parser/foster-parent.html: Added.

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

9 years ago[GStreamer] Use GST_DEBUG instead of LOG_VERBOSE
philn@webkit.org [Thu, 2 Aug 2012 16:09:32 +0000 (16:09 +0000)]
[GStreamer] Use GST_DEBUG instead of LOG_VERBOSE
https://bugs.webkit.org/show_bug.cgi?id=89350

Reviewed by Martin Robinson.

Wrap the media player's logging calls to a new macro that also
hooks into GStreamer's logging facilities. This way the developer
gets the best of both worlds, leaving the choice between GST_DEBUG
and WEBKIT_DEBUG environment variables.

* platform/graphics/gstreamer/GStreamerUtilities.h:
(WebCore):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::initializeGStreamerAndRegisterWebKitElements):
(WebCore::MediaPlayerPrivateGStreamer::load):
(WebCore::MediaPlayerPrivateGStreamer::commitLoad):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::duration):
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::naturalSize):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
(WebCore::MediaPlayerPrivateGStreamer::processBufferingStats):
(WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
(WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
(WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded):
(WebCore::MediaPlayerPrivateGStreamer::didLoadingProgress):

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

9 years agoInline stylesheets can confuse style sharing
antti@apple.com [Thu, 2 Aug 2012 16:08:48 +0000 (16:08 +0000)]
Inline stylesheets can confuse style sharing
https://bugs.webkit.org/show_bug.cgi?id=92970

Reviewed by Dan Bernstein.

Source/WebCore:

Consider document

<div class="i30"></div>
<style>.i30 { background-color:green; }</style>
<div class="i30"></div>

When processing the <style> element the scope optimization marks the first div as needing style recalc.
Next the parser adds the second div to the tree and immediately calculates its style. Since it looks exactly
like the first div the style sharing optimization copies the style from there. The pending recalc of the
first div is resolved by a timer but the second div is left with the old style.

Fix by disallowing style sharing from elements with pending style recalc.

Test: fast/css/style-sharing-inline-stylesheet.html

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

LayoutTests:

* fast/css/style-sharing-inline-stylesheet-expected.txt: Added.
* fast/css/style-sharing-inline-stylesheet.html: Added.

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

9 years ago[Qt] Fix axis locking when panning on N9
commit-queue@webkit.org [Thu, 2 Aug 2012 16:07:01 +0000 (16:07 +0000)]
[Qt] Fix axis locking when panning on N9
https://bugs.webkit.org/show_bug.cgi?id=92394

Patch by Lauro Neto <lauro.neto@openbossa.org> on 2012-08-02
Reviewed by Simon Hausmann.

Make the QQuickWebView axis locker calculate the
time between events using QInputEvent.timestamp, which
is set from the native event when available.

Also use touchPoint.pos() instead of screenPos() to
correct the axis detection when running on N9, which
has a native landscape display and the applications usually
run in portrait mode.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::FlickableAxisLocker::FlickableAxisLocker):
(QQuickWebViewPrivate::FlickableAxisLocker::touchVelocity):
(QQuickWebViewPrivate::FlickableAxisLocker::update):
* UIProcess/API/qt/qquickwebview_p_p.h:
(FlickableAxisLocker):

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

9 years ago[EFL][WK2]Add ewk_view_ui_client.
commit-queue@webkit.org [Thu, 2 Aug 2012 16:03:46 +0000 (16:03 +0000)]
[EFL][WK2]Add ewk_view_ui_client.
https://bugs.webkit.org/show_bug.cgi?id=89864

Patch by Hyerim Bae <hyerim.bae@samsung.com> on 2012-08-02
Reviewed by Kentaro Hara.

Add ewk_view_ui_client.h / cpp files for wrapping WKPageSetPageUIClient,
add close, createNewPage callback member to WKPageSetPageUIClient.

* PlatformEfl.cmake:
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_base_add):
(ewk_view_page_close):
(ewk_view_page_create):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/ewk_view_private.h:
* UIProcess/API/efl/ewk_view_ui_client.cpp: Added.
(toEwkView):
(closePage):
(createNewPage):
(ewk_view_ui_client_attach):
* UIProcess/API/efl/ewk_view_ui_client_private.h: Added.

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

9 years agoMediaStream API: Add RTCPeerConnectionHandler infrastructure
tommyw@google.com [Thu, 2 Aug 2012 15:56:21 +0000 (15:56 +0000)]
MediaStream API: Add RTCPeerConnectionHandler infrastructure
https://bugs.webkit.org/show_bug.cgi?id=92866

Reviewed by Adam Barth.

Introducing RTCPeerConnectionHandler & RTCPeerConnectionHandlerClient,
together with the Chromium WebKit interface, following the pattern of
the previous PeerConnection00Handler but with the optimizations from MediaStreamCenter.

Source/Platform:

* Platform.gypi:
* chromium/public/Platform.h:
(WebKit):
(Platform):
(WebKit::Platform::createRTCPeerConnectionHandler):
* chromium/public/WebRTCPeerConnectionHandler.h: Added.
(WebKit):
(WebRTCPeerConnectionHandler):
(WebKit::WebRTCPeerConnectionHandler::~WebRTCPeerConnectionHandler):
* chromium/public/WebRTCPeerConnectionHandlerClient.h: Added.
(WebKit):
(WebRTCPeerConnectionHandlerClient):
(WebKit::WebRTCPeerConnectionHandlerClient::~WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Not yet testable due to not enough code landed.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* WebCore.gypi:
* platform/mediastream/RTCPeerConnectionHandler.cpp: Added.
(WebCore):
(RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerDummy::RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::~RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::initialize):
* platform/mediastream/RTCPeerConnectionHandler.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.
(WebCore):
(RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::~RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::RTCPeerConnectionHandler):
* platform/mediastream/RTCPeerConnectionHandlerClient.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.
(WebCore):
(RTCPeerConnectionHandlerClient):
(WebCore::RTCPeerConnectionHandlerClient::~RTCPeerConnectionHandlerClient):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Added.
(WebCore):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::~RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::initialize):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Added.
(WebCore):
(RTCPeerConnectionHandlerChromium):

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

9 years agoMove number localization code in LocaleICU.cpp to new class
tkent@chromium.org [Thu, 2 Aug 2012 15:53:58 +0000 (15:53 +0000)]
Move number localization code in LocaleICU.cpp to new class
https://bugs.webkit.org/show_bug.cgi?id=92976

Reviewed by Kentaro Hara.

The number localization code by character mapping is usefull for non-ICU
platforms.

No new tests. This is just a refactoring, and is covered by
Source/WebKit/chromium/tests/LocalizedNumberICUTest.cpp.

* WebCore.gypi: Add NumberLocalizer.{cpp,h}.
* platform/text/LocaleICU.cpp:
(WebCore::LocaleICU::decimalSymbol):
Renamed from setDecimalSymbol. This function returns the resultant
string instead of setting it to a data member.
(WebCore::LocaleICU::decimalTextAttribute):
Renamed from setDecimalTextAttributel. This function returns the
resultant string instead of setting it to the specified string.
(WebCore::LocaleICU::initializeNumberLocalizerData):
Renamed from initializeDecimalFormat.
Calls NumberLocaizer::setNumberLocalizerData.
(WebCore::LocaleICU::localizedDecimalSeparator):
Rename initializeDecimalFormat to initializeNumberLocalizerData.
* platform/text/LocaleICU.h:
(LocaleICU): Remove some members, and inherit NumberLocalizer.
* platform/text/NumberLocalizer.cpp: Added. Move the code from LocaleICU.cpp
(WebCore):
(WebCore::NumberLocalizer::~NumberLocalizer):
(WebCore::NumberLocalizer::setNumberLocalizerData): Added.
(WebCore::NumberLocalizer::convertToLocalizedNumber):
(WebCore::matches):
(WebCore::NumberLocalizer::detectSignAndGetDigitRange):
(WebCore::NumberLocalizer::matchedDecimalSymbolIndex):
(WebCore::NumberLocalizer::convertFromLocalizedNumber):
(WebCore::NumberLocalizer::localizedDecimalSeparator):
* platform/text/NumberLocalizer.h: Added.
(NumberLocalizer):
(WebCore::NumberLocalizer::NumberLocalizer):

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

9 years agoWeb Inspector: Move DOM breakpoints-related context menu items into a submenu
apavlov@chromium.org [Thu, 2 Aug 2012 15:19:20 +0000 (15:19 +0000)]
Web Inspector: Move DOM breakpoints-related context menu items into a submenu
https://bugs.webkit.org/show_bug.cgi?id=92989

Reviewed by Vsevolod Vlasov.

A "Break on..." submenu is added to the element context menu, to host all DOM breakpoint items.

* English.lproj/localizedStrings.js:
* inspector/front-end/DOMBreakpointsSidebarPane.js:
(WebInspector.DOMBreakpointsSidebarPane):
(WebInspector.DOMBreakpointsSidebarPane.prototype.populateNodeContextMenu):

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

9 years ago[Chromium] Toggle the type of ant compile for webkit_unit_tests and TestWebKitAPI
peter@chromium.org [Thu, 2 Aug 2012 15:09:11 +0000 (15:09 +0000)]
[Chromium] Toggle the type of ant compile for webkit_unit_tests and TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=92858

Reviewed by Adam Barth.

Now that the sdk_build variable is available, we can remove these two differences
as well. This goes together with Adam's bug 90920.

After this patch, the whole Tools/ directory will be unforked :-).

Source/WebKit/chromium:

* WebKitUnitTests.gyp:

Tools:

* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

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

9 years ago[GTK] No main resource in WebView on load committed when page has been loaded from...
carlosgc@webkit.org [Thu, 2 Aug 2012 15:01:14 +0000 (15:01 +0000)]
[GTK] No main resource in WebView on load committed when page has been loaded from history cache
https://bugs.webkit.org/show_bug.cgi?id=91482

Reviewed by Martin Robinson.

We assume that on load committed, we already have a main resource
in the web view, and it has already received a response. This is
not true for pages loaded from the history cache, so when going
back/forward, we don't have a main resource when the
load-committed signal is emitted. We must ensure that the loading
process documented in the API is the same for pages loaded from
the history cache too.

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(didCommitLoadForFrame): Call webkitWebViewLoadChanged() and let
the web view handle the certificate.
* UIProcess/API/gtk/WebKitWebResource.cpp:
(webkitWebResourceGetFrame): Helper private function to easily get
the WKFrame associated with a WebResource.
* UIProcess/API/gtk/WebKitWebResourcePrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewDisconnectMainResourceResponseChangedSignalHandler):
Disconnect the notify::response signal of the main resource.
(webkitWebViewFinalize): Call
webkitWebViewDisconnectMainResourceResponseChangedSignalHandler().
(setCertificateToMainResource): Set the TLS certificate on the
response of the main resource.
(webkitWebViewEmitLoadChanged): Helper function to emit
load-chancged signal.
(webkitWebViewEmitDelayedLoadEvents): If we were waiting for the
main resource, emit the signals that were delayed.
(webkitWebViewLoadChanged): Do not emit committed or finished if
we are still waiting for the main resource. Set the TLS
certificate if we already have a main resource or wait until we
have the main resource with a response.
(mainResourceResponseChangedCallback): Emitted when the main
resource received the response. Set the certificate on the
response and emit load signals delayed.
(waitForMainResourceResponseIfWaitingForResource): If we are
waiting for the main resource, connect to the notify::response
signal of the WebResource to make sure it has a response already
when load signal delayed are emitted.
(webkitWebViewResourceLoadStarted): Call
waitForMainResourceResponseIfWaitingForResource().
* UIProcess/API/gtk/tests/LoadTrackingTest.cpp:
(loadChangedCallback):
(LoadTrackingTest::goBack):
(LoadTrackingTest::goForward):
* UIProcess/API/gtk/tests/LoadTrackingTest.h:
(LoadTrackingTest):
* UIProcess/API/gtk/tests/TestLoaderClient.cpp:
(testWebViewHistoryLoad):
(serverCallback):
(beforeAll):

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

9 years ago[Qt][WK2] Click, mouse and links rely on touch mocking.
abecsi@webkit.org [Thu, 2 Aug 2012 14:42:30 +0000 (14:42 +0000)]
[Qt][WK2] Click, mouse and links rely on touch mocking.
https://bugs.webkit.org/show_bug.cgi?id=83091

Reviewed by Simon Hausmann.

Send the incoming mouse events directly to the gesture recognizers to make
the WebView behave consistent with other Flickables.
This patch unifies the code paths for input events and makes it possible
to enable mouse events on the flickable web view again, thus makes the
mobile-version of QQuickWebView usable on desktop.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::handleMouseEvent):
(QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::handleMouseEvent):
(QQuickWebView::mousePressEvent):
(QQuickWebView::mouseMoveEvent):
(QQuickWebView::mouseReleaseEvent):
(QQuickWebView::mouseDoubleClickEvent):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):
* UIProcess/qt/QtPanGestureRecognizer.cpp:
(WebKit::QtPanGestureRecognizer::update):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
(WebKit::QtWebPageEventHandler::handleInputEvent):
(WebKit):
(WebKit::QtWebPageEventHandler::doneWithTouchEvent):
* UIProcess/qt/QtWebPageEventHandler.h:
(QtWebPageEventHandler):

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

9 years ago[Cairo] Add complex font drawing using HarfbuzzNG
commit-queue@webkit.org [Thu, 2 Aug 2012 14:21:10 +0000 (14:21 +0000)]
[Cairo] Add complex font drawing using HarfbuzzNG
https://bugs.webkit.org/show_bug.cgi?id=91864

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

Source/WebCore:

Unfortunately the Freetype based approach that avoids allocations and UTF8 conversion
fails to produce correct results for some tests.

No new tests, at least
  fast/dom/52776.html
  fast/text/atsui-negative-spacing-features.html
  fast/text/atsui-spacing-features.html
expose this problem.

* platform/graphics/harfbuzz/ng/HarfBuzzNGFaceCairo.cpp:
(WebCore::harfbuzzGetGlyph): Revert to initial cairo_scaled_font based approach.

LayoutTests:

Unskipping tests, now passing with valid complex font results.

* platform/efl/TestExpectations:
* platform/efl/fast/text/atsui-pointtooffset-calls-cg-expected.txt:
* platform/efl/fast/text/international/text-spliced-font-expected.png: Added.
* platform/efl/fast/text/international/text-spliced-font-expected.txt: Added.

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

9 years agoWeb Inspector: Fix protocol version check.
commit-queue@webkit.org [Thu, 2 Aug 2012 14:19:35 +0000 (14:19 +0000)]
Web Inspector: Fix protocol version check.
https://bugs.webkit.org/show_bug.cgi?id=91497

Patch by Eugene Klyuchnikov <eustas.big@gmail.com> on 2012-08-02
Reviewed by Pavel Feldman.

Generated method 'supportsInspectorProtocolVersion' should return
false when requested  minor version is *greater* than actual
minor version.

* inspector/generate-inspector-protocol-version: Fixed stub text

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

9 years agoWeb Inspector: count RenderStyle objects in the native memory profiler
commit-queue@webkit.org [Thu, 2 Aug 2012 14:14:58 +0000 (14:14 +0000)]
Web Inspector: count RenderStyle objects in the native memory profiler
https://bugs.webkit.org/show_bug.cgi?id=91759

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-02
Reviewed by Yury Semikhatsky.

Source/WebCore:

The patch adds instrumentation to the following classes:
  - RenderStyle
  - StyleRareInheritedData
  - StyleRareNonInheritedData

* bindings/js/ScriptWrappable.h:
* bindings/v8/ScriptWrappable.h:
* dom/MemoryInstrumentation.h:
(WebCore):
(WebCore::MemoryInstrumentation::OwningTraits::addObject):
(WebCore::MemoryInstrumentation::addInstrumentedObjectImpl):
(WebCore::MemoryInstrumentation::addObjectImpl):
* dom/Node.cpp:
(WebCore::Node::reportMemoryUsage):
* dom/Node.h:
(WebCore):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::reportMemoryUsage):
(WebCore):
* rendering/style/RenderStyle.h:
(WebCore):
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::reportMemoryUsage):
(WebCore):
* rendering/style/StyleRareInheritedData.h:
(WebCore):
(StyleRareInheritedData):
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::reportMemoryUsage):
(WebCore):
* rendering/style/StyleRareNonInheritedData.h:
(WebCore):
(StyleRareNonInheritedData):

Source/WebKit/chromium:

Add a test for DataRef<T> wrapped member instrumentation.

* tests/MemoryInstrumentationTest.cpp:
(WebCore::InstrumentedRefPtr::create):
(WebCore::TEST):
(WebCore):

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

9 years agoWeb Inspector: rename host->origin in the inspector protocol DOMStorage entry
commit-queue@webkit.org [Thu, 2 Aug 2012 14:10:10 +0000 (14:10 +0000)]
Web Inspector: rename host->origin in the inspector protocol DOMStorage entry
https://bugs.webkit.org/show_bug.cgi?id=92979

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-08-02
Reviewed by Yury Semikhatsky.

* inspector/Inspector.json:
* inspector/InspectorDOMStorageResource.cpp:
(WebCore::InspectorDOMStorageResource::bind):
* inspector/front-end/DOMStorage.js:
(WebInspector.DOMStorageDispatcher.prototype.addDOMStorage):

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

9 years ago[EFL] Change return value of battey level
commit-queue@webkit.org [Thu, 2 Aug 2012 13:45:41 +0000 (13:45 +0000)]
[EFL] Change return value of battey level
https://bugs.webkit.org/show_bug.cgi?id=92964

Patch by Kihong Kwon <kihong.kwon@samsung.com> on 2012-08-02
Reviewed by Simon Hausmann.

Change return value of navigator.webkitBattery.level from 0~100 to 0~1.0.
Battery level have to returns 0~1.0 by Battery Status API spec.

* platform/efl/BatteryProviderEfl.cpp:
(WebCore::BatteryProviderEfl::setBatteryClient):

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

9 years ago[GTK] When farstream is not present do not enable MediaStream
mrobinson@webkit.org [Thu, 2 Aug 2012 13:45:07 +0000 (13:45 +0000)]
[GTK] When farstream is not present do not enable MediaStream

Reviewed by Philippe Normand.

When farstream libraries are no present, simply do not build MediaStream
support.

* configure.ac:

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

9 years ago[Chromium] Unreviewed, mark accessibility/loading-iframe-updates-axtree.html as crash...
apavlov@chromium.org [Thu, 2 Aug 2012 13:17:06 +0000 (13:17 +0000)]
[Chromium] Unreviewed, mark accessibility/loading-iframe-updates-axtree.html as crashy on Mac.

* platform/chromium/TestExpectations:

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

9 years ago[Qt] MSVC specific buildfix for DRT.
commit-queue@webkit.org [Thu, 2 Aug 2012 13:13:29 +0000 (13:13 +0000)]
[Qt] MSVC specific buildfix for DRT.
https://bugs.webkit.org/show_bug.cgi?id=92978

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-08-02
Reviewed by Simon Hausmann.

DumpRenderTree/qt subdirectory is missing from generated makefile under MSVC build, need to be added to the pro file.

* DumpRenderTree/qt/DumpRenderTree.pro:

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

9 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 2 Aug 2012 13:13:20 +0000 (13:13 +0000)]
Unreviewed GTK gardening.

Updating baselines for fast/box-sizing/box-sizing.html after r124347
and fast/forms/basic-selects.html after r124416.

Also fix a bogus TestExpectations entry so fast/css/widget-region-parser.html
is properly skipped.

* platform/gtk/TestExpectations:
* platform/gtk/fast/box-sizing/box-sizing-expected.png:
* platform/gtk/fast/box-sizing/box-sizing-expected.txt: Added.
* platform/gtk/fast/forms/basic-selects-expected.png:
* platform/gtk/fast/forms/basic-selects-expected.txt:

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

9 years ago[EFL][WK2] WTR is failing when X server is not running
commit-queue@webkit.org [Thu, 2 Aug 2012 12:56:16 +0000 (12:56 +0000)]
[EFL][WK2] WTR is failing when X server is not running
https://bugs.webkit.org/show_bug.cgi?id=92719

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-08-02
Reviewed by Hajime Morita.

EFL's WebKitTestRunner doesn't execute tests when X server is not running.
This patch fixes the problem by checking environment variable before ecore x initialization.

* Scripts/webkitpy/layout_tests/port/efl.py:
(EflPort.setup_environ_for_server):
* WebKitTestRunner/efl/main.cpp:
(main):

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

9 years agoWeb Inspector: remove extraObjectSize parameter from MemoryClassInfo constructor
yurys@chromium.org [Thu, 2 Aug 2012 12:52:27 +0000 (12:52 +0000)]
Web Inspector: remove extraObjectSize parameter from MemoryClassInfo constructor
https://bugs.webkit.org/show_bug.cgi?id=92981

Reviewed by Alexander Pavlov.

Refactored MemoryInstrumentation to get rid of extraSize parameter from
MemoryObjectInfo constructor and MemoryObjectInfo::reportObjectInfo. The
extra size should always be reported as an object that occupies these extra
bytes.

* dom/ElementAttributeData.cpp:
(WebCore::ElementAttributeData::reportMemoryUsage):
(WebCore):
* dom/ElementAttributeData.h:
(WebCore):
(ElementAttributeData):
* dom/MemoryInstrumentation.h:
(WebCore::MemoryObjectInfo::reportObjectInfo):
(WebCore::MemoryClassInfo::MemoryClassInfo):

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

9 years agoUnreviewed, rolling out r124439.
commit-queue@webkit.org [Thu, 2 Aug 2012 12:33:47 +0000 (12:33 +0000)]
Unreviewed, rolling out r124439.
http://trac.webkit.org/changeset/124439
https://bugs.webkit.org/show_bug.cgi?id=92980

Broke Chromium Mac Release compile (Requested by apavlov on
#webkit).

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

Source/Platform:

* Platform.gypi:
* chromium/public/Platform.h:
(WebKit):
(Platform):
(WebKit::Platform::createPeerConnectionHandler):
* chromium/public/WebRTCPeerConnectionHandler.h: Removed.
* chromium/public/WebRTCPeerConnectionHandlerClient.h: Removed.

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.h:
* WebCore.gypi:
* platform/mediastream/RTCPeerConnectionHandler.cpp: Removed.
* platform/mediastream/RTCPeerConnectionHandler.h: Removed.
* platform/mediastream/RTCPeerConnectionHandlerClient.h: Removed.
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Removed.
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Removed.

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

9 years ago[Qt] Uninitialized memory read in QObject runtime bridge
commit-queue@webkit.org [Thu, 2 Aug 2012 12:26:13 +0000 (12:26 +0000)]
[Qt] Uninitialized memory read in QObject runtime bridge
https://bugs.webkit.org/show_bug.cgi?id=92972

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-08-02
Reviewed by Kenneth Rohde Christiansen.

The vargs array has an initial size of 0 and when calling a method with no return value
and no arguments, vargs remains empty. Therefore unconditional access to vargs[0] results
in access to uninitialized memory.

No new tests, covered by valgrind in existing qobjectbridge tests.

* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMetaMethod::call):
* bridge/qt/qt_runtime_qt4.cpp:
(JSC::Bindings::QtRuntimeMetaMethod::call):

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

9 years agoAlignment issue for readTime in PluginDatabase.cpp
zherczeg@webkit.org [Thu, 2 Aug 2012 12:03:13 +0000 (12:03 +0000)]
Alignment issue for readTime in PluginDatabase.cpp
https://bugs.webkit.org/show_bug.cgi?id=92746

Reviewed by Simon Hausmann.

When the byte stream is written, nothing guarantees that
the time_t data is aligned. This issue caused alignment
traps on ARM CPUs.

No new tests. Covered by existing tests.

* plugins/PluginDatabase.cpp:
(WebCore::readTime):

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

9 years ago[Qt] Unreviewed gardening. Skip a failing test.
kkristof@inf.u-szeged.hu [Thu, 2 Aug 2012 12:02:22 +0000 (12:02 +0000)]
[Qt] Unreviewed gardening. Skip a failing test.
https://bugs.webkit.org/show_bug.cgi?id=92963.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-08-02

* platform/qt-5.0-wk2/Skipped:

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

9 years agoMediaStream API: Add RTCPeerConnectionHandler infrastructure
tommyw@google.com [Thu, 2 Aug 2012 11:43:00 +0000 (11:43 +0000)]
MediaStream API: Add RTCPeerConnectionHandler infrastructure
https://bugs.webkit.org/show_bug.cgi?id=92866

Reviewed by Kentaro Hara.

Introducing RTCPeerConnectionHandler & RTCPeerConnectionHandlerClient,
together with the Chromium WebKit interface, following the pattern of
the previous PeerConnection00Handler but with the optimizations from MediaStreamCenter.

Source/Platform:

* Platform.gypi:
* chromium/public/Platform.h:
(WebKit):
(Platform):
(WebKit::Platform::createRTCPeerConnectionHandler):
* chromium/public/WebRTCPeerConnectionHandler.h: Added.
(WebKit):
(WebRTCPeerConnectionHandler):
(WebKit::WebRTCPeerConnectionHandler::~WebRTCPeerConnectionHandler):
* chromium/public/WebRTCPeerConnectionHandlerClient.h: Added.
(WebKit):
(WebRTCPeerConnectionHandlerClient):
(WebKit::WebRTCPeerConnectionHandlerClient::~WebRTCPeerConnectionHandlerClient):

Source/WebCore:

Not yet testable due to not enough code landed.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::create):
(WebCore::RTCPeerConnection::RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* WebCore.gypi:
* platform/mediastream/RTCPeerConnectionHandler.cpp: Added.
(WebCore):
(RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerDummy::RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::~RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::initialize):
* platform/mediastream/RTCPeerConnectionHandler.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.
(WebCore):
(RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::~RTCPeerConnectionHandler):
(WebCore::RTCPeerConnectionHandler::RTCPeerConnectionHandler):
* platform/mediastream/RTCPeerConnectionHandlerClient.h: Copied from Source/WebCore/Modules/mediastream/RTCPeerConnection.h.
(WebCore):
(RTCPeerConnectionHandlerClient):
(WebCore::RTCPeerConnectionHandlerClient::~RTCPeerConnectionHandlerClient):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp: Added.
(WebCore):
(WebCore::RTCPeerConnectionHandler::create):
(WebCore::RTCPeerConnectionHandlerChromium::RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::~RTCPeerConnectionHandlerChromium):
(WebCore::RTCPeerConnectionHandlerChromium::initialize):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h: Added.
(WebCore):
(RTCPeerConnectionHandlerChromium):

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

9 years ago[Chromium] Unreviewed, mark 3 404-related appcache tests as TEXT.
apavlov@chromium.org [Thu, 2 Aug 2012 11:28:37 +0000 (11:28 +0000)]
[Chromium] Unreviewed, mark 3 404-related appcache tests as TEXT.

* platform/chromium/TestExpectations:

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

9 years ago[Chromium] Rebaseline test color-suggestion-picker-with-scrollbar-appearance.html
keishi@webkit.org [Thu, 2 Aug 2012 11:02:22 +0000 (11:02 +0000)]
[Chromium] Rebaseline test color-suggestion-picker-with-scrollbar-appearance.html

Unreviewed.

* platform/chromium-linux/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
* platform/chromium-mac-snowleopard/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
* platform/chromium-win/platform/chromium/fast/forms/color/color-suggestion-picker-with-scrollbar-appearance-expected.png: Added.
* platform/chromium/TestExpectations:

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