WebKit-https.git
7 years agoWeb Inspector: Native Memory Instrumentation: remove fake root MemoryObjectInfo.
loislo@chromium.org [Wed, 12 Dec 2012 16:06:34 +0000 (16:06 +0000)]
Web Inspector: Native Memory Instrumentation: remove fake root MemoryObjectInfo.
https://bugs.webkit.org/show_bug.cgi?id=104796

Reviewed by Yury Semikhatsky.

It was not a good idea to introduce a fake root MemoryObjectInfo.
It makes a problem when we visit an object without its own MemoryObjectType.

Example: RenderBox has a global pointer to a hash map.
HashMap doesn't have its own object type because it is a generic container.
It will inherit object type from the fake root memory object info.
The same could happen for another container in another class with other MemoryObjectType.

This fact forces me to create custom process method for root objects
because they need to have their own MemoryObjectInfo with customisable memory object type.

Source/JavaScriptCore:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

Source/WebCore:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

* inspector/MemoryInstrumentationImpl.cpp:
(WebCore::MemoryInstrumentationImpl::processDeferredObjects):
(WebCore::MemoryInstrumentationImpl::deferObject):
(WebCore::MemoryInstrumentationImpl::reportMemoryUsage):
* inspector/MemoryInstrumentationImpl.h:
(MemoryInstrumentationImpl):

Source/WTF:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

* wtf/MemoryInstrumentation.cpp:
(WTF::MemoryInstrumentation::MemoryInstrumentation):
(WTF::MemoryInstrumentation::WrapperBase::WrapperBase):
(WTF::MemoryInstrumentation::WrapperBase::process):
(WTF::MemoryInstrumentation::WrapperBase::processRootObjectRef):
(WTF):
* wtf/MemoryInstrumentation.h:
(WTF::MemoryInstrumentation::addRootObject):
(MemoryInstrumentation):
(WrapperBase):
(WTF::MemoryInstrumentation::WrapperBase::~WrapperBase):
(Wrapper):
(OwningTraits):
(WTF::MemoryInstrumentation::OwningTraits::addRootObject):
(WTF::MemoryInstrumentation::addObjectImpl):
(WTF::::Wrapper):
(WTF::::callReportMemoryUsage):

Tools:

* TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:

Drive by fix: InstrumentedPointer* was replaced with Wrapper* because actually it is using
for instrumented and not instrumented object classes.

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

7 years ago[EFL [WebGL] [Wk2] Resizing the canvas breaks WebGL.
commit-queue@webkit.org [Wed, 12 Dec 2012 15:55:45 +0000 (15:55 +0000)]
[EFL [WebGL] [Wk2] Resizing the canvas breaks WebGL.
https://bugs.webkit.org/show_bug.cgi?id=104535.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

GraphicsContext3DEfl does not re-create the surface on canvas resize, this
conflicted with the logic in coordinated graphics Layer.
CoordinatedGraphicsLayer checks for GraphicsSurfaceToken to decide if the surface
in UI-Process should be recreated or not. With this
patch we also check for size of the platform Layer.

Source/WebCore:

* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::createGraphicsSurfaces):
* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::didResizeCanvas):
(GraphicsContext3DPrivate::platformLayerSize):
* platform/graphics/efl/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):

Source/WebKit2:

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
(CoordinatedGraphicsLayer):

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

7 years agoWeb Inspector: Crash in InspectorDOMAgent::pushNodePathToFrontend when inspecting...
commit-queue@webkit.org [Wed, 12 Dec 2012 15:54:20 +0000 (15:54 +0000)]
Web Inspector: Crash in InspectorDOMAgent::pushNodePathToFrontend when inspecting document with CSS generated content
https://bugs.webkit.org/show_bug.cgi?id=104780

Patch by Antoine Quint <graouts@apple.com> on 2012-12-12
Reviewed by Pavel Feldman.

Source/WebCore:

The pushNodePathForRenderLayerToFrontend() method added to InspectorDOMAgent naively assumed
that all RenderLayers have a Node associated to them. However, in the case of CSS generated
content, that will not be the case and we would call into pushNodePathToFrontend() with a 0
parameter that would hit the first ASSERT in this method. We're now checking that we indeed
have an associated node for the provided RenderLayer and return 0 in case we don't, without
calling into pushNodePathToFrontend().

Test: inspector-protocol/layer-tree-generated-content.html

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

LayoutTests:

Adding a new test for the LayerTreeAgent to check that it does not crash when inspecting
a page with CSS generated content, and correctly returns nodeId === 0 in the situation
where there is no Node associated with a given RenderLayer.

* inspector-protocol/layer-tree-generated-content-expected.txt: Added.
* inspector-protocol/layer-tree-generated-content.html: Added.

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

7 years ago[EFL] Unreviewed gardening.
dominik.rottsches@intel.com [Wed, 12 Dec 2012 15:52:08 +0000 (15:52 +0000)]
[EFL] Unreviewed gardening.

Rebaselining tests with anonymous empty blocks aftter r137336.
Floating elements rebaselined after r137331.
Newly intrduced reftest is failing, introduced in r137368.
Unskipping a few new passed that had something to do with AC.

* platform/efl/TestExpectations:
* platform/efl/css1/formatting_model/floating_elements-expected.png: Added.
* platform/efl/css1/formatting_model/floating_elements-expected.txt:
* platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.png:
* platform/efl/fast/css-generated-content/table-row-group-to-inline-expected.txt:
* platform/efl/fast/css/empty-generated-content-expected.png:
* platform/efl/fast/css/empty-generated-content-expected.txt:
* platform/efl/http/tests/misc/acid3-expected.txt:

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

7 years agoWeb Inspector: [Crash] Clear cached stylesheet rules in InspectorStyleSheet::deleteRule()
apavlov@chromium.org [Wed, 12 Dec 2012 15:01:31 +0000 (15:01 +0000)]
Web Inspector: [Crash] Clear cached stylesheet rules in InspectorStyleSheet::deleteRule()
https://bugs.webkit.org/show_bug.cgi?id=104806

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Cached rules (m_flatRules) should get cleared whenever a rule is deleted.

Test: inspector/styles/undo-add-rule-crash.html

* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::deleteRule):

LayoutTests:

* inspector/styles/undo-add-rule-crash-expected.txt: Added.
* inspector/styles/undo-add-rule-crash.html: Added.

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

7 years agoUnreviewed, rolling out r136975.
senorblanco@chromium.org [Wed, 12 Dec 2012 15:00:23 +0000 (15:00 +0000)]
Unreviewed, rolling out r136975.
http://trac.webkit.org/changeset/136975
https://bugs.webkit.org/show_bug.cgi?id=90405

Correctness issues.

Source/WebCore:

* dom/Element.cpp:
* dom/Element.h:
(Element):
* dom/ElementRareData.h:
(ElementRareData):
(WebCore::ElementRareData::ElementRareData):
* platform/graphics/texmap/TextureMapperImageBuffer.cpp:
(WebCore::BitmapTextureImageBuffer::applyFilters):
* rendering/FilterEffectRenderer.cpp:
(WebCore::createCustomFilterEffect):
(WebCore::FilterEffectRenderer::buildReferenceFilter):
(WebCore::FilterEffectRenderer::build):
* rendering/FilterEffectRenderer.h:
(FilterEffectRenderer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeDestroyed):
* rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::registerResource):
* rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::buildCachedResources):
* rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::addResourcesFromRenderObject):
(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::SVGResourcesCache::resourceDestroyed):
* svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::addPendingResource):
(WebCore::SVGDocumentExtensions::isElementPendingResources):
(WebCore::SVGDocumentExtensions::isElementPendingResource):
(WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
(WebCore::SVGDocumentExtensions::removeElementFromPendingResourcesForRemoval):
* svg/SVGDocumentExtensions.h:
(WebCore):
(SVGDocumentExtensions):
* svg/SVGElement.cpp:
(WebCore::SVGElement::hasPendingResources):
(WebCore):
(WebCore::SVGElement::setHasPendingResources):
(WebCore::SVGElement::clearHasPendingResourcesIfPossible):
* svg/SVGElement.h:
(SVGElement):
(WebCore::SVGElement::buildPendingResource):
* svg/SVGElementRareData.h:
(WebCore::SVGElementRareData::SVGElementRareData):
(WebCore::SVGElementRareData::hasPendingResources):
(WebCore::SVGElementRareData::setHasPendingResources):
(SVGElementRareData):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded):

LayoutTests:

* css3/filters/effect-reference-after-expected.txt: Removed.
* css3/filters/effect-reference-after.html: Removed.
* css3/filters/effect-reference-delete-crash-expected.txt: Removed.
* css3/filters/effect-reference-delete-crash.html: Removed.
* css3/filters/effect-reference-delete-expected.txt: Removed.
* css3/filters/effect-reference-delete.html: Removed.
* css3/filters/effect-reference-rename-expected.txt: Removed.
* css3/filters/effect-reference-rename.html: Removed.
* css3/filters/effect-reference-reset-style-delete-crash-expected.txt: Removed.
* css3/filters/effect-reference-reset-style-delete-crash.html: Removed.
* css3/filters/script-tests/effect-reference-delete-crash.js: Removed.
* css3/filters/script-tests/effect-reference-reset-style-delete-crash.js: Removed.
* platform/chromium-linux/css3/filters/effect-reference-after-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-delete-expected.png: Removed.
* platform/chromium-linux/css3/filters/effect-reference-rename-expected.png: Removed.
* svg/filters/filter-cycle-expected.html: Removed.
* svg/filters/filter-cycle.html: Removed.

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

7 years agoUnreviewed, rolling out r137000.
senorblanco@chromium.org [Wed, 12 Dec 2012 14:58:35 +0000 (14:58 +0000)]
Unreviewed, rolling out r137000.
http://trac.webkit.org/changeset/137000

Precursor to rolling out r136975.

* platform/chromium-linux/css3/filters/effect-reference-after-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-after-expected.png.
* platform/chromium-linux/css3/filters/effect-reference-delete-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-delete-expected.png.
* platform/chromium-linux/css3/filters/effect-reference-rename-expected.png: Renamed from LayoutTests/platform/chromium-win/css3/filters/effect-reference-rename-expected.png.
* platform/chromium-mac/css3/filters/effect-reference-after-expected.png: Removed.
* platform/chromium-mac/css3/filters/effect-reference-delete-expected.png: Removed.
* platform/chromium-mac/css3/filters/effect-reference-rename-expected.png: Removed.

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

7 years ago[Qt] Unreviewed gardening, remove duplicated expectations and fix broken expectations.
ossy@webkit.org [Wed, 12 Dec 2012 14:56:59 +0000 (14:56 +0000)]
[Qt] Unreviewed gardening, remove duplicated expectations and fix broken expectations.

* platform/qt-4.8/TestExpectations:
* platform/qt-5.0-wk2/TestExpectations:
* platform/qt-mac/TestExpectations:
* platform/qt/TestExpectations:

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

7 years agoUnreviewed, rolling out r137022.
senorblanco@chromium.org [Wed, 12 Dec 2012 14:54:57 +0000 (14:54 +0000)]
Unreviewed, rolling out r137022.
http://trac.webkit.org/changeset/137022

Precursor to rollout of 136975.

* rendering/svg/SVGResources.cpp:
(WebCore::SVGResources::buildCachedResources):

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

7 years agoUnreviewed, rolling out r137027.
senorblanco@chromium.org [Wed, 12 Dec 2012 14:53:44 +0000 (14:53 +0000)]
Unreviewed, rolling out r137027.
http://trac.webkit.org/changeset/137027

Precursor to rollout of 136975.

* dom/ElementRareData.h:
(ElementRareData):

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

7 years agoUnreviewed. Marked inspector-protocol/take-heap-snapshot.html as CRASH only in Debug...
yurys@chromium.org [Wed, 12 Dec 2012 13:39:48 +0000 (13:39 +0000)]
Unreviewed. Marked inspector-protocol/take-heap-snapshot.html as CRASH only in Debug mode, it passes in Release.

* platform/chromium/TestExpectations:

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

7 years agoWeb Inspector: add memory used by memory allocator itself to NMI
commit-queue@webkit.org [Wed, 12 Dec 2012 13:32:48 +0000 (13:32 +0000)]
Web Inspector: add memory used by memory allocator itself to NMI
https://bugs.webkit.org/show_bug.cgi?id=93372

Make native memory instrumentation report memory retained
for the memory allocator internal purposes.

Patch by Alexei Filippov <alph@chromium.org> on 2012-12-12
Reviewed by Yury Semikhatsky.

Source/Platform:

* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::memoryAllocatorWasteInBytes):

Source/WebCore:

* inspector/front-end/NativeMemorySnapshotView.js:
(WebInspector.MemoryBlockViewProperties._initialize):
* platform/chromium/MemoryUsageSupportChromium.cpp:
(WebCore::MemoryUsageSupport::memoryUsageByComponents):

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

7 years agoUnreviewed gardening. Marked inspector-protocol/take-heap-snapshot.html as CRASH.
haraken@chromium.org [Wed, 12 Dec 2012 13:31:13 +0000 (13:31 +0000)]
Unreviewed gardening. Marked inspector-protocol/take-heap-snapshot.html as CRASH.

* platform/chromium/TestExpectations:

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

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Wed, 12 Dec 2012 13:24:03 +0000 (13:24 +0000)]
[Qt] Unreviewed gardening.

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

* platform/qt/TestExpectations: Skip test because ENABLE(MOUSE_CURSOR_SCALE) is disabled on Qt.
* platform/qt/fast/css-generated-content/table-row-group-to-inline-expected.txt: rebaselining after r137336.
* platform/qt/fast/css/empty-generated-content-expected.txt: rebaselining after r137336.
* platform/qt/http/tests/misc/acid3-expected.txt: rebaselining after r137336.

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

7 years ago[Qt] Unskip compositing tests
ossy@webkit.org [Wed, 12 Dec 2012 13:21:15 +0000 (13:21 +0000)]
[Qt] Unskip compositing tests
https://bugs.webkit.org/show_bug.cgi?id=104129

Unreviewed gardening, skip only failing tests.

* platform/qt-5.0-wk1/TestExpectations:

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

7 years agoUnreviewed, rolling out r137438.
commit-queue@webkit.org [Wed, 12 Dec 2012 13:01:21 +0000 (13:01 +0000)]
Unreviewed, rolling out r137438.
http://trac.webkit.org/changeset/137438
https://bugs.webkit.org/show_bug.cgi?id=104798

assertion reached when removing tile (Requested by tmpsantos
on #webkit).

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

Source/WebCore:

* page/Frame.cpp:
(WebCore::Frame::setTiledBackingStoreEnabled):
* platform/graphics/TiledBackingStore.cpp:
(WebCore::TiledBackingStore::TiledBackingStore):
(WebCore::TiledBackingStore::setTileCreationDelay):
(WebCore::TiledBackingStore::coverWithTilesIfNeeded):
(WebCore::TiledBackingStore::updateTileBuffers):
(WebCore::TiledBackingStore::createTiles):
(WebCore::TiledBackingStore::isTileBufferUpdatesSuspended):
(WebCore::TiledBackingStore::startTileBufferUpdateTimer):
(WebCore::TiledBackingStore::tileBufferUpdateTimerFired):
(WebCore::TiledBackingStore::startBackingStoreUpdateTimer):
(WebCore::TiledBackingStore::backingStoreUpdateTimerFired):
* platform/graphics/TiledBackingStore.h:
(TiledBackingStore):
(WebCore::TiledBackingStore::tileCreationDelay):
* platform/graphics/TiledBackingStoreClient.h:
(WebCore::TiledBackingStoreClient::tiledBackingStoreUpdatesAllowed):

Source/WebKit2:

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

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

7 years ago[Qt] Unreviewed typo fix after r137446.
ossy@webkit.org [Wed, 12 Dec 2012 12:56:57 +0000 (12:56 +0000)]
[Qt] Unreviewed typo fix after r137446.

* WebCore.pri:

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

7 years ago[GTK] Remove the last of unnecessary configuration options in configure.ac
zandobersek@gmail.com [Wed, 12 Dec 2012 12:25:45 +0000 (12:25 +0000)]
[GTK] Remove the last of unnecessary configuration options in configure.ac
https://bugs.webkit.org/show_bug.cgi?id=104793

Reviewed by Martin Robinson.

.:

Remove the last of the configuration options that don't introduce any dependencies and/or
are enabled by default in the GNUmakefile.features.am.in file.

* configure.ac:

Source/WebCore:

Remove the feature define overriding that's based on the automake variables which are
not set anymore due to the corresponding configuration options being removed.

No new tests - no new functionality.

* GNUmakefile.am:

Tools:

Removing the filters and indexed database features from the list of features
being configurable through the configure script. This is not the case anymore
as the corresponding configuration options are being removed.

* Scripts/webkitdirs.pm:
(buildAutotoolsProject):

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

7 years ago[GTK][WK2] New API to detect display/execution of insecure content
mario@webkit.org [Wed, 12 Dec 2012 12:01:24 +0000 (12:01 +0000)]
[GTK][WK2] New API to detect display/execution of insecure content
https://bugs.webkit.org/show_bug.cgi?id=104578

Reviewed by Martin Robinson.

Source/WebKit2:

Added new API and documentation for detecting insecure content.

Implemented needed functions from C API's WKPageLoaderClient

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(didDisplayInsecureContentForFrame): Implemented.
(didRunInsecureContentForFrame): Ditto.
(attachLoaderClientToView): Added newly implemented functions.

Added new 'insecure-content-detected' signal to API.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init): Installed new signal.
(webkitWebViewInsecureContentDetected): Helper function aded to
private API to emit the new signal from the page loader client.
* UIProcess/API/gtk/WebKitWebView.h:
(_WebKitWebViewClass): Added new signal.

* UIProcess/API/gtk/WebKitWebViewPrivate.h: Added prototype of the
new helper function webkitWebViewInsecureContentDetected().

Added new unit tests.

* UIProcess/API/gtk/tests/TestSSL.cpp:
(testSSL): Updated to the new variable name for the https server.
(testInsecureContent): New unit test.
(httpsServerCallback): Renamed from serverCallback() and updated
to return HTML content linking to external resources in an
insecure (plain http) server, to be used by the new test.
(httpServerCallback): New callback for a new http server, that
will serve a script and an image when requested.
(beforeAll): Run the new http server, besides the https one.
(afterAll): Delete both the http and the https server.

Updated documentation with new API.

* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added references
to the new WebKitInsecureContentEvent enum type.

Tools:

Add coding style exception for 'readability/enum_casing' in GTK.

The GTK+ API use upper case, underscore separated, words in
certain types of enums (e.g. signals, properties).

* Scripts/webkitpy/style/checker.py: Added exception, both for
WebKitGTK+ and WebKit2GTK+.

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

7 years agoFix QNX Qt build by enabling JIT.
commit-queue@webkit.org [Wed, 12 Dec 2012 11:39:10 +0000 (11:39 +0000)]
Fix QNX Qt build by enabling JIT.
https://bugs.webkit.org/show_bug.cgi?id=102794

Patch by Sergio Martins <sergio.martins@kdab.com> on 2012-12-12
Reviewed by Simon Hausmann.

JIT is working, so enable it. Otherwise LLINT gets enabled, and
that doesn't compile.

YARR_JIT is crashing at this time though, so disable it.

* wtf/Platform.h:

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

7 years ago[chromium] Fix build on chromium-win
jochen@chromium.org [Wed, 12 Dec 2012 11:36:06 +0000 (11:36 +0000)]
[chromium] Fix build on chromium-win

Unreviewed build-fix.

MSVS indeed doesn't have snprintf, adding wtf/StringExtras.h include
to work around that.

* DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:

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

7 years ago[GTK][AC] GraphicsLayers are not shown on the viewport
joone.hur@intel.com [Wed, 12 Dec 2012 11:34:46 +0000 (11:34 +0000)]
[GTK][AC] GraphicsLayers are not shown on the viewport
https://bugs.webkit.org/show_bug.cgi?id=104670

Reviewed by Gustavo Noronha Silva.

GraphicsLayers are not shown on the viewport because the container(GtkClutterEmbed)
is not resized and shown, so this patch allows it to fit to the viewport.

* WebCoreSupport/AcceleratedCompositingContext.h:
* WebCoreSupport/AcceleratedCompositingContextClutter.cpp:
(WebKit::AcceleratedCompositingContext::renderLayersToWindow):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::resizeRootLayer):
(WebKit::AcceleratedCompositingContext::layerFlushTimerFiredCallback):
(WebKit::AcceleratedCompositingContext::scheduleLayerFlush):

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

7 years ago[Qt] Fix build on Mac
hausmann@webkit.org [Wed, 12 Dec 2012 11:21:53 +0000 (11:21 +0000)]
[Qt] Fix build on Mac

Reviewed by Csaba Osztrogonác.

On Mac OS X we have sqlite as a system library available.

Source/WebCore:

* WebCore.pri:

Tools:

* qmake/mkspecs/features/features.prf:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 12 Dec 2012 11:12:21 +0000 (11:12 +0000)]
Unreviewed GTK gardening.

Skipping another unit test that regressed in r137432.

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

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

7 years ago[Qt] Fix linkage against SQLite
hausmann@webkit.org [Wed, 12 Dec 2012 10:46:55 +0000 (10:46 +0000)]
[Qt] Fix linkage against SQLite
https://bugs.webkit.org/show_bug.cgi?id=104781

Reviewed by Csaba Osztrogonác.

Detect SQLite either through pkg-config, from the SQLITE3SRCDIR
environment variable or from qtbase via a qt5.git build. Bail out early
with an error message if neither option applies.

This removes the usage of $$QT.core.sources and the dependency on Qt's
system-sqlite configure setting. We should always favour a system
library over a copy in Qt.

Source/WebCore:

* Target.pri:
* WebCore.pri:

Tools:

* qmake/mkspecs/features/features.prf:

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

7 years agoUnreviewed gardening.
zandobersek@gmail.com [Wed, 12 Dec 2012 10:46:12 +0000 (10:46 +0000)]
Unreviewed gardening.

Adding failure expectations for tests that regressed in r137365 on GTK, Qt and EFL.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/qt/TestExpectations:

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

7 years ago[TexMap] Uninitialized m_context pointer in TextureMapper
allan.jensen@digia.com [Wed, 12 Dec 2012 10:44:46 +0000 (10:44 +0000)]
[TexMap] Uninitialized m_context pointer in TextureMapper
https://bugs.webkit.org/show_bug.cgi?id=104785

Reviewed by Kenneth Rohde Christiansen.

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

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

7 years agoMediaStream API: Change the data channel descriptor pattern to a handler pattern
tommyw@google.com [Wed, 12 Dec 2012 10:42:40 +0000 (10:42 +0000)]
MediaStream API: Change the data channel descriptor pattern to a handler pattern
https://bugs.webkit.org/show_bug.cgi?id=104543

Reviewed by Kent Tamura.

Source/Platform:

In short the code is refactured to use the Handler/Client pattern (see RTCPeerConnectionHandler)
instead of the Descriptor pattern.
This will fix lifetime/memory/code structure issues in the chromium port.

* Platform.gypi:
* chromium/public/WebRTCDataChannel.h: Removed.
* chromium/public/WebRTCDataChannelHandler.h: Added.
(WebKit):
(WebRTCDataChannelHandler):
(WebKit::WebRTCDataChannelHandler::~WebRTCDataChannelHandler):
* chromium/public/WebRTCDataChannelHandlerClient.h: Added.
(WebKit):
(WebRTCDataChannelHandlerClient):
(WebKit::WebRTCDataChannelHandlerClient::~WebRTCDataChannelHandlerClient):
* chromium/public/WebRTCPeerConnectionHandler.h:
(WebKit):
(WebKit::WebRTCPeerConnectionHandler::createDataChannel):
* chromium/public/WebRTCPeerConnectionHandlerClient.h:
(WebKit):
(WebKit::WebRTCPeerConnectionHandlerClient::didAddRemoteDataChannel):

Source/WebCore:

In short the code is refactured to use the Handler/Client pattern (see RTCPeerConnectionHandler)
instead of the Descriptor pattern.
This will fix lifetime/memory/code structure issues in the chromium port.

Existing tests cover this patch.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::create):
(WebCore::RTCDataChannel::RTCDataChannel):
(WebCore::RTCDataChannel::~RTCDataChannel):
(WebCore::RTCDataChannel::label):
(WebCore::RTCDataChannel::reliable):
(WebCore::RTCDataChannel::readyState):
(WebCore::RTCDataChannel::bufferedAmount):
(WebCore::RTCDataChannel::send):
(WebCore::RTCDataChannel::close):
(WebCore::RTCDataChannel::didChangeReadyState):
(WebCore::RTCDataChannel::didReceiveStringData):
(WebCore::RTCDataChannel::didReceiveRawData):
(WebCore::RTCDataChannel::didDetectError):
(WebCore::RTCDataChannel::stop):
* Modules/mediastream/RTCDataChannel.h:
(WebCore):
(RTCDataChannel):
* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::didAddRemoteDataChannel):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* WebCore.gypi:
* platform/chromium/support/WebRTCDataChannel.cpp: Removed.
* platform/mediastream/RTCDataChannelDescriptor.h: Removed.
* platform/mediastream/RTCDataChannelHandler.h: Copied from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.
(WebCore):
(RTCDataChannelHandler):
(WebCore::RTCDataChannelHandler::~RTCDataChannelHandler):
* platform/mediastream/RTCDataChannelHandlerClient.h: Renamed from Source/WebCore/platform/mediastream/RTCDataChannelDescriptor.cpp.
(WebCore):
(RTCDataChannelHandlerClient):
(WebCore::RTCDataChannelHandlerClient::~RTCDataChannelHandlerClient):
* platform/mediastream/RTCPeerConnectionHandler.cpp:
(WebCore):
(WebCore::RTCPeerConnectionHandler::create):
* platform/mediastream/RTCPeerConnectionHandler.h:
(WebCore):
(RTCPeerConnectionHandler):
* platform/mediastream/RTCPeerConnectionHandlerClient.h:
(WebCore):
(RTCPeerConnectionHandlerClient):
* platform/mediastream/chromium/RTCDataChannelHandlerChromium.cpp: Added.
(WebCore):
(WebCore::RTCDataChannelHandlerChromium::create):
(WebCore::RTCDataChannelHandlerChromium::RTCDataChannelHandlerChromium):
(WebCore::RTCDataChannelHandlerChromium::~RTCDataChannelHandlerChromium):
(WebCore::RTCDataChannelHandlerChromium::setClient):
(WebCore::RTCDataChannelHandlerChromium::label):
(WebCore::RTCDataChannelHandlerChromium::isReliable):
(WebCore::RTCDataChannelHandlerChromium::bufferedAmount):
(WebCore::RTCDataChannelHandlerChromium::sendStringData):
(WebCore::RTCDataChannelHandlerChromium::sendRawData):
(WebCore::RTCDataChannelHandlerChromium::close):
(WebCore::RTCDataChannelHandlerChromium::didChangeReadyState):
(WebCore::RTCDataChannelHandlerChromium::didReceiveStringData):
(WebCore::RTCDataChannelHandlerChromium::didReceiveRawData):
(WebCore::RTCDataChannelHandlerChromium::didDetectError):
* platform/mediastream/chromium/RTCDataChannelHandlerChromium.h: Added.
(WebCore):
(RTCDataChannelHandlerChromium):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::createDataChannel):
(WebCore::RTCPeerConnectionHandlerChromium::didAddRemoteDataChannel):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(WebCore):
(RTCPeerConnectionHandlerChromium):

Source/WebKit/chromium:

* src/AssertMatchingEnums.cpp:

Tools:

Adding mocks to be able to test this refactoring.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/MockWebRTCDataChannelHandler.cpp: Added.
(DataChannelReadyStateTask):
(DataChannelReadyStateTask::DataChannelReadyStateTask):
(MockWebRTCDataChannelHandler::MockWebRTCDataChannelHandler):
(MockWebRTCDataChannelHandler::setClient):
(MockWebRTCDataChannelHandler::bufferedAmount):
(MockWebRTCDataChannelHandler::sendStringData):
(MockWebRTCDataChannelHandler::sendRawData):
(MockWebRTCDataChannelHandler::close):
* DumpRenderTree/chromium/MockWebRTCDataChannelHandler.h: Added.
(MockWebRTCDataChannelHandler):
(MockWebRTCDataChannelHandler::taskList):
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
(RTCPeerConnectionReadyStateTask::RTCPeerConnectionReadyStateTask):
(RemoteDataChannelTask::RemoteDataChannelTask):
(MockWebRTCPeerConnectionHandler::createDataChannel):
(MockWebRTCPeerConnectionHandler::stop):
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
(MockWebRTCPeerConnectionHandler):

LayoutTests:

Expanding data channels tests.

* fast/mediastream/RTCPeerConnection-datachannel-expected.txt:
* fast/mediastream/RTCPeerConnection-datachannel.html:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 12 Dec 2012 10:39:26 +0000 (10:39 +0000)]
Unreviewed GTK gardening.

Rebaselining after r137331. r137336, r137393 and other, unknown revisions.
Marking two failures as timing out instead of producing textual diff.

* platform/gtk/TestExpectations:
* platform/gtk/css1/formatting_model/floating_elements-expected.txt:
* platform/gtk/fast/css-generated-content/table-row-group-to-inline-expected.txt:
* platform/gtk/fast/css/empty-generated-content-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:
* platform/gtk/svg/css/shadow-changes-expected.txt:

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

7 years ago[chromium] WebTestPlugin must not depend on WTF::String
jochen@chromium.org [Wed, 12 Dec 2012 10:37:31 +0000 (10:37 +0000)]
[chromium] WebTestPlugin must not depend on WTF::String
https://bugs.webkit.org/show_bug.cgi?id=104783

Reviewed by Kent Tamura.

In a component build, we can't access the WTF that is part of the
WebKit component. Accessing WTF instead will pull in a separate copy
into the TestRunner library. Instead of WTF::String::number use
snprintf() to print numbers.

* DumpRenderTree/chromium/TestRunner/src/WebTestPlugin.cpp:

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

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

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

Source/WebCore:

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

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

Refactoring covered by existing tests.

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

Source/WebKit2:

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

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

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

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

7 years ago[Qt] Do not automatically enable force_static_libs_as_shared when using debug_and_release
jocelyn.turcotte@digia.com [Wed, 12 Dec 2012 10:20:20 +0000 (10:20 +0000)]
[Qt] Do not automatically enable force_static_libs_as_shared when using debug_and_release
https://bugs.webkit.org/show_bug.cgi?id=104562

Reviewed by Tor Arne Vestbø.

force_static_libs_as_shared creates issues on Mac if QtWebKit is built as a framework.
QtWebProcess, for example, will link to the framework's release library and will rely
on DYLD_IMAGE_SUFFIX to switch to the debug build. Since QtWebProcess will also links
directly to the debug build of WebCore, and that QtWebKit release will link in the
release build of WebCore, both the debug and release version will be loaded.

To fix this properly we should make sure that applications always link to the release
build of dependent libraries by bypassing resolveFinalLibraryName.
Disable it for now as force_static_libs_as_shared is mainly for development while
debug_and_release is mainly for production builds.

* qmake/mkspecs/features/default_post.prf:

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

7 years ago[Qt] Fix the inspector not showing up on Windows
jocelyn.turcotte@digia.com [Wed, 12 Dec 2012 10:12:57 +0000 (10:12 +0000)]
[Qt] Fix the inspector not showing up on Windows
https://bugs.webkit.org/show_bug.cgi?id=104677

Reviewed by Simon Hausmann.

.:

Resources aren't transfered properly from a static WebCore to the final DLL
with MSVC since the linker only pick from the static lib symbols that
are referenced in the final binary.

Move the resource files directly to Qt5WebKit.dll to make sure that they are
available.

* Source/api.pri:

Source/WebCore:

* Target.pri:

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

7 years agoWeb Inspector: Native Memory Instrumentation: simplify Sequences processing code.
loislo@chromium.org [Wed, 12 Dec 2012 09:53:32 +0000 (09:53 +0000)]
Web Inspector: Native Memory Instrumentation: simplify Sequences processing code.
https://bugs.webkit.org/show_bug.cgi?id=104777

Reviewed by Yury Semikhatsky.

Redesign reportMemoryUsage for the sequences.
With the old schema we couldn't instrument HashMap<key, WebCore::LayoutUnit>
because LayoutUnit has overloaded conversion operators for double, int, etc.
I wrote an empty SequenceMemoryInstrumentationTraits for LayoutUnit class
but it doesn't help because the root of problem was hidden in the free template function reportSequenceMemoryUsage.
I could overload reportSequenceMemoryUsage too but in this case I need to fully specify all the types
for the iterators like HashMap<.....>::const_iterator. Too many letters.
I found a better solution. Free reportSequenceMemoryUsage can be converted into default implementation of static
reportMemoryUsage traits method. In this case the types of iterators will be inferred automaticaly. The old default
implementation becomes a custom implementation for the user defined types.

* wtf/MemoryInstrumentationHashCountedSet.h:
(WTF::reportMemoryUsage):
* wtf/MemoryInstrumentationHashMap.h:
(WTF::reportMemoryUsage):
* wtf/MemoryInstrumentationHashSet.h:
(WTF::reportMemoryUsage):
* wtf/MemoryInstrumentationListHashSet.h:
(WTF::reportMemoryUsage):
* wtf/MemoryInstrumentationSequence.h:
(WTF):
(WTF::SequenceMemoryInstrumentationTraits::reportMemoryUsage):
(SequenceMemoryInstrumentationTraits):
* wtf/MemoryInstrumentationVector.h:
(WTF::reportMemoryUsage):

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

7 years agoUnreviewed GTK gardening of the unit tests.
zandobersek@gmail.com [Wed, 12 Dec 2012 09:46:22 +0000 (09:46 +0000)]
Unreviewed GTK gardening of the unit tests.

Skip two unit tests that regressed during the hackfest.

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

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

7 years agoWeb Inspector: Heap snapshot crashes on any page in MacOS Canary
yurys@chromium.org [Wed, 12 Dec 2012 09:22:28 +0000 (09:22 +0000)]
Web Inspector: Heap snapshot crashes on any page in MacOS Canary
https://bugs.webkit.org/show_bug.cgi?id=103076

Reviewed by Adam Barth.

Source/WebCore:

Provide global object name resolver to the heap profiler. The callback allows
to safely retrieve document URL to be used as a label for corresponding global
object in the heap snapshot.

Test: inspector-protocol/take-heap-snapshot.html

* bindings/v8/ScriptProfiler.cpp:
(WebCore):
(WebCore::ScriptProfiler::takeHeapSnapshot):

LayoutTests:

Test that heap profiler doesn't crash on pages that keep references to functions
from iframe that has already navigated to a different page.

* inspector-protocol/resources/page-with-function.html: Added.
* inspector-protocol/take-heap-snapshot-expected.txt: Added.
* inspector-protocol/take-heap-snapshot.html: Added.
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:

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

7 years ago[GTK] Cookies' storage path and policy are not set when the WebProcess is killed...
commit-queue@webkit.org [Wed, 12 Dec 2012 09:19:44 +0000 (09:19 +0000)]
[GTK] Cookies' storage path and policy are not set when the WebProcess is killed and relaunched
https://bugs.webkit.org/show_bug.cgi?id=104370

Patch by Joaquim Rocha <jrocha@igalia.com> on 2012-12-12
Reviewed by Carlos Garcia Campos.

This issue happens on ports that use Soup and causes problems like not finding the stored cookies
nor their policy when the WebProcess is relaunched. As an example of a problem caused by this,
a previously logged in user will not be logged in again when the process is relaunched and the
policy used is always the same one.

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode): Encode cookies' persistent storage path,
storage type and acceptance policy.
(WebKit::WebProcessCreationParameters::decode): Decode cookies' persistent storage path,
storage type and acceptance policy.
* Shared/WebProcessCreationParameters.h: Create 3 variables to hold the values mentioned above.
(WebProcessCreationParameters):
* UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Call WebCookieManagerProxySoup::setCookieAcceptPolicy.
* UIProcess/WebCookieManagerProxy.h: Declare new Soup's methods setCookieAcceptPolicy, cookieAcceptPolicy and
cookiePersistentStorage as well as the variables m_cookieAcceptPolicy and m_cookiePersistentStorage.
(WebCookieManagerProxy):
* UIProcess/efl/WebContextEfl.cpp: Assign the parameters' cookiePersistentStoragePath and
cookiePersistentStorageType with the respective values.
(WebKit::WebContext::platformInitializeWebProcess):
* UIProcess/gtk/WebContextGtk.cpp: Assign the parameters' cookiePersistentStoragePath and
cookiePersistentStorageType with the respective values.
(WebKit::WebContext::platformInitializeWebProcess):
* UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::setCookiePersistentStorage): Assign the m_cookiePersistentStorage pair
with the method's parameters.
(WebKit):
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage): Implement this getter.
* WebProcess/Cookies/WebCookieManager.h: Declare setCookiePersistentStorage.
(WebCookieManager):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess): Set the cookies' persistent storage and policy
using the WebCookieManager's methods.

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

7 years agoUnreviewed, rolling out r137428.
ossy@webkit.org [Wed, 12 Dec 2012 09:15:39 +0000 (09:15 +0000)]
Unreviewed, rolling out r137428.
http://trac.webkit.org/changeset/137428
https://bugs.webkit.org/show_bug.cgi?id=104776

It broke the build everywhere (Requested by Ossy on #webkit).

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

* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawQuad):
(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore):
(WebCore::TextureMapperGL::drawTextureRectangleARB):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
* platform/graphics/texmap/TextureMapperGL.h:
(TextureMapperGL):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::getShaderSpec):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(TextureMapperShaderProgram):

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

7 years agoWeb inspector prints a warning about "Debug" not being localized
commit-queue@webkit.org [Wed, 12 Dec 2012 08:17:35 +0000 (08:17 +0000)]
Web inspector prints a warning about "Debug" not being localized
https://bugs.webkit.org/show_bug.cgi?id=104679

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-12-12
Reviewed by Vsevolod Vlasov.

Add a missing localization entry for the "Debug" string which is used in the web
inspector front-end. This prevents warnings about a missing localized version
of the word "Debug" and allows it to be properly localized.

* English.lproj/localizedStrings.js: Add "Debug"

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

7 years ago[Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
shinyak@chromium.org [Wed, 12 Dec 2012 08:13:09 +0000 (08:13 +0000)]
[Shadow DOM] Implement HTMLShadowElement::olderShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=104218

Reviewed by Hajime Morita.

Source/WebCore:

Implements HTMLShadowElement::olderShadowRoot, which returns the ShadowRoot the HTMLShadowElement is assigned to.
When such ShadowRoot does not exist, 0 is returned.

Test: fast/dom/shadow/olderShadowRoot-in-shadowelement.html

* dom/ElementShadow.cpp:
(WebCore::ElementShadow::ensureDistributionFromDocument): Ensures distribution of this ElementShadow and
all of the parent TreeScope distribution. This function will be shared for Bug 104345.
(WebCore):
* dom/ElementShadow.h:
(ElementShadow):
* html/shadow/HTMLShadowElement.cpp:
(WebCore::HTMLShadowElement::olderShadowRoot):
(WebCore):
* html/shadow/HTMLShadowElement.h:
* html/shadow/HTMLShadowElement.idl:

LayoutTests:

* fast/dom/shadow/olderShadowRoot-in-shadowelement-expected.txt: Added.
* fast/dom/shadow/olderShadowRoot-in-shadowelement.html: Added.

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

7 years ago[Texmap] Consolidate redundant code for ARB_RECT texture
commit-queue@webkit.org [Wed, 12 Dec 2012 08:10:44 +0000 (08:10 +0000)]
[Texmap] Consolidate redundant code for ARB_RECT texture
https://bugs.webkit.org/show_bug.cgi?id=104705

Patch by No'am Rosenthal <noam@webkit.org> on 2012-12-12
Reviewed by Kenneth Rohde Christiansen.

Instead of having a whole different function for RECT textures,
keep the existing functions and pass a flag that tells
TextureMapperGL to use the non-normalized coordinates and the
RECT shaders.

No new tests, refactor only. Tested to not break WebGL on
Qt-Mac.

* platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::TextureMapperGL::drawQuad):
    Compensate for rect textures in drawQuad.

(WebCore::TextureMapperGL::drawBorder):
(WebCore::TextureMapperGL::drawTexture):
(WebCore::TextureMapperGL::drawSolidColor):
(WebCore::TextureMapperGL::drawTextureWithAntialiasing):
(WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
    Pass flags to TextureMapperGL::drawQuad instead of a bool.

* platform/graphics/texmap/TextureMapperGL.h:
(TextureMapperGL):
* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::getShaderSpec):
* platform/graphics/texmap/TextureMapperShaderManager.h:
(TextureMapperShaderProgram):
    Compensate for the texture-size in the vertex
    shader instead of in the fragment shader.

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

7 years agoMark a Linux compositing test as failing after a change to the Chromium compositor.
adamk@chromium.org [Wed, 12 Dec 2012 08:02:19 +0000 (08:02 +0000)]
Mark a Linux compositing test as failing after a change to the Chromium compositor.

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoImplement add64 for ARM traditional assembler after r136601
commit-queue@webkit.org [Wed, 12 Dec 2012 08:00:33 +0000 (08:00 +0000)]
Implement add64 for ARM traditional assembler after r136601
https://bugs.webkit.org/show_bug.cgi?id=104103

Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-12-11
Reviewed by Zoltan Herczeg.

Implement add64 function for ARM traditional macroassembler.

* assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::add64):
(MacroAssemblerARM):

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

7 years agoREGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot ...
hayato@chromium.org [Wed, 12 Dec 2012 07:54:30 +0000 (07:54 +0000)]
REGRESSION(r137408): breaks chromium's browser tests which use WebKitShadowRoot (Requested by hayato on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=104770

Unreviewed, build fix.

Source/WebCore:

* dom/ShadowRoot.idl:
* page/DOMWindow.idl:

LayoutTests:

* fast/js/global-constructors-expected.txt:
* platform/efl/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

7 years agoUnreviewed, rolling out r137333, r137344, r137364, and
commit-queue@webkit.org [Wed, 12 Dec 2012 07:49:39 +0000 (07:49 +0000)]
Unreviewed, rolling out r137333, r137344, r137364, and
r137377.
http://trac.webkit.org/changeset/137333
http://trac.webkit.org/changeset/137344
http://trac.webkit.org/changeset/137364
http://trac.webkit.org/changeset/137377
https://bugs.webkit.org/show_bug.cgi?id=104771

Caused a raft of browser_test failures in Chromium (Requested
by aklein on #webkit).

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

Source/WebCore:

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader):
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::~MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::willCancel):
(WebCore::MainResourceLoader::didCancel):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::addData):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::didReceiveResponse):
(WebCore::MainResourceLoader::didReceiveData):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::didFail):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::loadNow):
(WebCore):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
* loader/MainResourceLoader.h:
(MainResourceLoader):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
* loader/ResourceLoader.h:
(ResourceLoader):
(WebCore::ResourceLoader::defersLoading):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequest):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::willSendRequest):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::loadDone):
* loader/mac/DocumentLoaderMac.cpp:
(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

* http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
* platform/chromium-linux/fast/replaced/border-radius-clip-content-edge-expected.png:
* platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:

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

7 years ago[EFL][WK2] Duplicated WebPageGroup initialization
commit-queue@webkit.org [Wed, 12 Dec 2012 07:41:08 +0000 (07:41 +0000)]
[EFL][WK2] Duplicated WebPageGroup initialization
https://bugs.webkit.org/show_bug.cgi?id=103229

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.

As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
is created with default context.

* UIProcess/API/efl/ewk_view.cpp:
(createEwkView):

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

7 years agoUnreviewed, rolling out r137398.
haraken@chromium.org [Wed, 12 Dec 2012 07:36:07 +0000 (07:36 +0000)]
Unreviewed, rolling out r137398.
http://trac.webkit.org/changeset/137398
https://bugs.webkit.org/show_bug.cgi?id=104188

A bunch of webaudio tests hit ASSERTs

Source/WebCore:

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createOfflineContext):
(WebCore):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/DOMWindowWebAudio.idl:
* Modules/webaudio/OfflineAudioContext.cpp: Removed.
* Modules/webaudio/OfflineAudioContext.h: Removed.
* Modules/webaudio/OfflineAudioContext.idl: Removed.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/RuntimeEnabledFeatures.h:
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContextConstructor::constructJSAudioContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

* inspector-protocol/nmi-webaudio.html:
* inspector-protocol/resources/audio-context.html:
* webaudio/audiobuffersource-loop-comprehensive.html:
* webaudio/audiobuffersource-loop-points.html:
* webaudio/audiobuffersource-multi-channels.html:
* webaudio/audiobuffersource-playbackState.html:
* webaudio/audiobuffersource-playbackrate.html:
* webaudio/audiobuffersource-start.html:
* webaudio/audiobuffersource.html:
* webaudio/audiochannelmerger-stereo.html:
* webaudio/audiochannelsplitter.html:
* webaudio/audionode-connect-order.html:
* webaudio/audionode-expected.txt:
* webaudio/audioparam-connect-audioratesignal.html:
* webaudio/audioparam-summingjunction.html:
* webaudio/automatic-pull-node.html:
* webaudio/biquad-allpass.html:
* webaudio/biquad-bandpass.html:
* webaudio/biquad-highpass.html:
* webaudio/biquad-highshelf.html:
* webaudio/biquad-lowpass.html:
* webaudio/biquad-lowshelf.html:
* webaudio/biquad-notch.html:
* webaudio/biquad-peaking.html:
* webaudio/convolution-mono-mono.html:
* webaudio/delaynode-max-default-delay.html:
* webaudio/delaynode-max-nondefault-delay.html:
* webaudio/delaynode-maxdelay.html:
* webaudio/delaynode-maxdelaylimit.html:
* webaudio/delaynode-scheduling.html:
* webaudio/delaynode.html:
* webaudio/distance-exponential.html:
* webaudio/distance-inverse.html:
* webaudio/distance-linear.html:
* webaudio/gain.html:
* webaudio/javascriptaudionode-zero-input-channels.html:
* webaudio/javascriptaudionode.html:
* webaudio/mediaelementaudiosourcenode-gc.html:
* webaudio/mixing.html:
* webaudio/note-grain-on-play.html:
* webaudio/note-grain-on-timing.html:
* webaudio/oscillator-basic.html:
* webaudio/panner-equalpower-stereo.html:
* webaudio/panner-equalpower.html:
* webaudio/realtimeanalyser-fft-sizing.html:
* webaudio/resources/audio-codec-test.js:
(runDecodingTest):
* webaudio/resources/audioparam-testing.js:
(createAudioGraphAndTest):
* webaudio/resources/javascriptaudionode-testing.js:
(runJSNodeTest):
* webaudio/sample-accurate-scheduling.html:
* webaudio/stereo2mono-down-mixing.html:
* webaudio/up-mixing-mono-51.html:
* webaudio/up-mixing-mono-stereo.html:
* webaudio/up-mixing-stereo-51.html:
* webaudio/waveshaper.html:

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

7 years ago[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
shinyak@chromium.org [Wed, 12 Dec 2012 07:22:34 +0000 (07:22 +0000)]
[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of a document.
https://bugs.webkit.org/show_bug.cgi?id=104346

Reviewed by Hajime Morita.

Source/WebCore:

We need to register InsertionPoints even if ShadowRoot is out of Document, since distribution should work
out of Document, too.

Instead of checking isInDocument(), we have to make sure InsertionPoint and an element which InsertionPoint
inserted into have the same treescope.

Tests: fast/dom/shadow/has-content-elements.html
       fast/dom/shadow/has-shadow-insertion-point.html

* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::insertedInto):
(WebCore::InsertionPoint::removedFrom):

LayoutTests:

Added tests for out-of-Document version and calling insertedInto/removedFrom several times.

* fast/dom/shadow/has-content-elements-expected.txt:
* fast/dom/shadow/has-content-elements.html:
* fast/dom/shadow/has-shadow-insertion-point-expected.txt:
* fast/dom/shadow/has-shadow-insertion-point.html:

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

7 years agoAdd API to set the maximum number of processes allowed in a WKContext
weinig@apple.com [Wed, 12 Dec 2012 07:01:03 +0000 (07:01 +0000)]
Add API to set the maximum number of processes allowed in a WKContext
https://bugs.webkit.org/show_bug.cgi?id=104769

Reviewed by Dan Bernstein.

Switch from using NSUserDefaults to a WKContext API to set the maximum number of processes
for a context.

* UIProcess/API/C/WKContext.cpp:
(WKContextSetMaximumNumberOfProcesses):
(WKContextGetMaximumNumberOfProcesses):
* UIProcess/API/C/WKContext.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::setMaximumNumberOfProcesses):
(WebKit):
* UIProcess/WebContext.h:
(WebContext):
(WebKit::WebContext::maximumNumberOfProcesses):
* UIProcess/mac/WebContextMac.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitialize):

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

7 years agoAdd Koji Ishii to the list of contributors.
rniwa@webkit.org [Wed, 12 Dec 2012 06:37:00 +0000 (06:37 +0000)]
Add Koji Ishii to the list of contributors.

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

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

7 years agoText nodes in shadow roots don't inherit style properly
tasak@google.com [Wed, 12 Dec 2012 06:24:30 +0000 (06:24 +0000)]
Text nodes in shadow roots don't inherit style properly
https://bugs.webkit.org/show_bug.cgi?id=101116

Reviewed by Hajime Morita.

Source/WebCore:

Use NodeRenderingContext to resolve styles of text nodes.
If text nodes are direct children of shadow roots, the text nodes
should be inherited styles from their shadow hosts.
But if reset-style-inheritance flag is true, the text nodes should
not be inherited. And if text nodes are distributed nodes,
we have to check whether their insertion point's
reset-style-inheritance.
c.f. shadow dom spec is:
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#styles

Test: fast/dom/shadow/text-node-in-shadow.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForElement):
Modified to use defaultStyleForElement if the given element has
no parent style.
(WebCore::StyleResolver::initForStyleResolve):
Removed shouldResetStyleInheritance, because now NodeRenderingContext
resetStyleInheritance() takes care of reset-style-inheritance of
both shadow roots and insertion points.
(WebCore::StyleResolver::defaultStyleForElement):
Added to create a default style for elements.
(WebCore):
(WebCore::StyleResolver::styleForText):
Use NodeRenderingContext to find the parent node for style from the
given text node. If no parent node is found or reset-style-inheritance
is true, returns a default style (i.e. empty render style).
Otherwise, just returns the found node's style.
* css/StyleResolver.h:
(StyleResolver):
* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::ParentTraversalDetails::didTraverseInsertionPoint):
Modify to consider insertion point's resetStyleInheritance.
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):
Since NodeRenderingContext has already found a parent node for
rendering and style and a parentRenderer is just the found node's
renderer, we have to only check reset-style-inheritance.
If reset, use default style. Otherwise, the parentRenderer's style.
* dom/Text.cpp:
(WebCore::Text::recalcTextStyle):
Use styleForText instead of parentRenderer's styles if the given text
node is a direct child of a shadow root or a direct child of a shadow
host.

LayoutTests:

* fast/dom/shadow/text-node-in-shadow-expected.html: Added.
* fast/dom/shadow/text-node-in-shadow.html: Added.

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

7 years agoHide HOST_RULE behind SHADOW_DOM flag.
tasak@google.com [Wed, 12 Dec 2012 06:20:38 +0000 (06:20 +0000)]
Hide HOST_RULE behind SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=102321

Reviewed by Dimitri Glazkov.

@host @-rules are only available when the rules are declared in styles
in shadow dom trees. So if SHADOW_DOM is disabled, we don't need
@host @-rules.

No new tests. Just hide HOST_RULE behind SHADOW_DOM flag.

* css/StyleResolver.h:
Hide "class ShadowRuleHost".
* css/StyleRule.cpp:
(WebCore::StyleRuleBase::reportMemoryUsage):
(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):
* css/StyleRule.h:
(StyleRuleBase):
Hide "Host" type and isHostRule.
(StyleRuleHost):
Hide "class StyleRuleHost".
* css/StyleSheetContents.cpp:
(WebCore::childRulesHaveFailedOrCanceledSubresources):

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

7 years agoAX: accessibilityIsIgnored should avoid computing textUnderElement
dmazzoni@google.com [Wed, 12 Dec 2012 06:04:13 +0000 (06:04 +0000)]
AX: accessibilityIsIgnored should avoid computing textUnderElement
https://bugs.webkit.org/show_bug.cgi?id=104688

Reviewed by Chris Fleizach.

Simplify the logic in accessibilityIsIgnored without affecting
the results of any tests. In particular, avoid expensive calls to
textUnderElement.

Covered by existing tests.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):

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

7 years ago[V8] Reachable event listeners on image elements can be collected in a minor DOM GC
haraken@chromium.org [Wed, 12 Dec 2012 05:58:45 +0000 (05:58 +0000)]
[V8] Reachable event listeners on image elements can be collected in a minor DOM GC
https://bugs.webkit.org/show_bug.cgi?id=104734

Reviewed by Kenneth Russell.

A major DOM GC treats image elements specially. In
V8GCController::opaqueRootForGC(), a major DOM GC puts image elements
that have pending activities into the same object group of their document.
This guarantees that image elements that have pending activities
are not garbage collected in the major DOM GC.

This patch adds the same special handling to a minor DOM GC to guarantee
the same thing in the minor DOM GC too.

In long-term, we might want to remove the special handling by making
image elements active DOM nodes.

Test: Manually confirmed that all characters in
http://alteredqualia.com/three/examples/webgl_animation_skinning_tf2.html
are rendered correctly.

* bindings/v8/V8GCController.cpp:
(WebCore::V8GCController::opaqueRootForGC):
(WebCore::gcTree):

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

7 years agoAX: Make isActionSupported cross-platform.
dmazzoni@google.com [Wed, 12 Dec 2012 05:52:08 +0000 (05:52 +0000)]
AX: Make isActionSupported cross-platform.
https://bugs.webkit.org/show_bug.cgi?id=104681

Reviewed by Chris Fleizach.

Source/WebCore:

Add UserGestureIndicator to increment() and decrement()
so that all accessibility actions are treated as
user actions, not scripted actions.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):

Source/WebKit/chromium:

Add support for press, increment, and decrement actions,
including tests to see whether they're supported on a given
object. This allows Chromium to pass three tests that were
previously skipped.

* public/WebAccessibilityObject.h:
(WebAccessibilityObject):
* src/WebAccessibilityObject.cpp:
(WebKit::WebAccessibilityObject::canDecrement):
(WebKit):
(WebKit::WebAccessibilityObject::canIncrement):
(WebKit::WebAccessibilityObject::canPress):
(WebKit::WebAccessibilityObject::increment):
(WebKit::WebAccessibilityObject::decrement):
(WebKit::WebAccessibilityObject::press):

Tools:

Replace isActionSupported, which takes a platform-specific
argument, with three cross-platform methods.

* DumpRenderTree/AccessibilityUIElement.cpp:
(isPressActionSupportedCallback):
(isIncrementActionSupportedCallback):
(isDecrementActionSupportedCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
(AccessibilityUIElement):
* DumpRenderTree/blackberry/AccessibilityUIElementBlackBerry.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::isPressActionSupportedCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::isIncrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::isDecrementActionSupportedCallback):
(WebTestRunner::AccessibilityUIElement::incrementCallback):
(WebTestRunner::AccessibilityUIElement::decrementCallback):
(WebTestRunner::AccessibilityUIElement::pressCallback):
* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:
(AccessibilityUIElement):
* DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::isPressActionSupported):
(AccessibilityUIElement::isIncrementActionSupported):
(AccessibilityUIElement::isDecrementActionSupported):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
(AccessibilityUIElement):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):

LayoutTests:

Refactor tests that called isActionSupported to call new
cross-platform variants, and unskip three test for Chromium
as a result.

* accessibility/aria-link-supports-press.html:
* accessibility/button-press-action.html:
* accessibility/onclick-handlers.html:
* platform/chromium/TestExpectations:
* platform/chromium/accessibility/aria-popup-expected.txt: Removed.
* platform/mac/accessibility/aria-popup-expected.txt:
* platform/mac/accessibility/aria-popup.html:
* platform/mac/accessibility/slider-supports-actions.html:

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

7 years agoRemove conversion to/from float and float division from ImageFrame::setRGBA
commit-queue@webkit.org [Wed, 12 Dec 2012 05:35:01 +0000 (05:35 +0000)]
Remove conversion to/from float and float division from ImageFrame::setRGBA
https://bugs.webkit.org/show_bug.cgi?id=103693

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Brent Fulgham.

Replace floating point operations used for alpha premultiply with fixed point arithmetic
which is basically integer operations. Allows to shave extra couple percent from decoding
images with transparency.

Covered by existing tests.

* platform/image-decoders/ImageDecoder.h:
(ImageFrame):
(WebCore::ImageFrame::fixPointUnsignedMultiply):
(WebCore::ImageFrame::setRGBA):

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

7 years agonrwt: remove result_summary.total_tests_by_expectation
dpranke@chromium.org [Wed, 12 Dec 2012 05:34:04 +0000 (05:34 +0000)]
nrwt: remove result_summary.total_tests_by_expectation
https://bugs.webkit.org/show_bug.cgi?id=104756

Reviewed by Eric Seidel.

This field wasn't being used by anything.

* Scripts/webkitpy/layout_tests/models/result_summary.py:
(ResultSummary.__init__):

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

7 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Wed, 12 Dec 2012 05:28:03 +0000 (05:28 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

7 years agoVibration API: IDL type doesn't match implementation type
kihong.kwon@samsung.com [Wed, 12 Dec 2012 05:25:11 +0000 (05:25 +0000)]
Vibration API: IDL type doesn't match implementation type
https://bugs.webkit.org/show_bug.cgi?id=103899

Reviewed by Kentaro Hara.

Source/WebCore:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

No new tests, it is covered by exist test.

* Modules/vibration/NavigatorVibration.cpp:
(WebCore::NavigatorVibration::vibrate):
* Modules/vibration/NavigatorVibration.h:
(NavigatorVibration):
* Modules/vibration/Vibration.cpp:
(WebCore::Vibration::vibrate):
* Modules/vibration/Vibration.h:
(Vibration):
* Modules/vibration/VibrationClient.h:
(VibrationClient):
* bindings/js/JSDOMBinding.h:
* bindings/scripts/CodeGeneratorJS.pm:
Remove workaround codes for the Vibration API which is mapped from unsigned long to unsigned long.
It should be mapped from unsigned long to unsigned by WebIDL spec.
(GetNativeVectorInnerType):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):

Source/WebKit/blackberry:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

* WebCoreSupport/VibrationClientBlackBerry.cpp:
(WebCore::VibrationClientBlackBerry::vibrate):
* WebCoreSupport/VibrationClientBlackBerry.h:
(VibrationClientBlackBerry):

Source/WebKit/efl:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from unsigned long to unsigned.

* WebCoreSupport/VibrationClientEfl.cpp:
(WebCore::VibrationClientEfl::vibrate):
* WebCoreSupport/VibrationClientEfl.h:
(VibrationClientEfl):

Source/WebKit2:

According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
Therefore unsigned long need to be changed to unsigned for the Vibration API.
- Change a parameter type of vibrate function from uint64_t to uint_32_t.

* UIProcess/API/C/WKVibration.h:
* UIProcess/API/efl/EwkViewCallbacks.h:
* UIProcess/WebVibrationProvider.cpp:
(WebKit::WebVibrationProvider::vibrate):
* UIProcess/WebVibrationProvider.h:
(WebVibrationProvider):
* UIProcess/WebVibrationProxy.cpp:
(WebKit::WebVibrationProxy::vibrate):
* UIProcess/WebVibrationProxy.h:
(WebVibrationProxy):
* UIProcess/WebVibrationProxy.messages.in:
* UIProcess/efl/VibrationClientEfl.cpp:
(VibrationClientEfl::vibrateCallback):
* UIProcess/efl/VibrationClientEfl.h:
(VibrationClientEfl):
* WebProcess/WebCoreSupport/WebVibrationClient.cpp:
(WebKit::WebVibrationClient::vibrate):
* WebProcess/WebCoreSupport/WebVibrationClient.h:
(WebVibrationClient):

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

7 years agoScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view...
wangxianzhu@chromium.org [Wed, 12 Dec 2012 05:14:18 +0000 (05:14 +0000)]
ScrollingCoordinator::hasVisibleSlowRepaintFixedObject() should exclude out-of-view fixed position elements
https://bugs.webkit.org/show_bug.cgi?id=102543

Source/WebCore:

Let RenderLayerCompositor manage the reasons that fixed position elements are not composited.
Check the reason in ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects(), don't let fixed position layer not composited with explicit reasons cause slow scrolling.

Reviewed by James Robinson.

Test: compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html

* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::hasVisibleSlowRepaintFixedObjects): Exclude fixed position elements that are not composited for explicit reasons.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements): Manages m_fixedPositionLayerNotCompositedReasonMap.
(WebCore::RenderLayerCompositor::needsToBeComposited):
(WebCore::RenderLayerCompositor::requiresCompositingLayer):
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):
* rendering/RenderLayerCompositor.h:
(WebCore::RenderLayerCompositor::fixedPositionLayerNotCompositedReason): Now outputs fixedPositionLayerNotCompositedreason.
(RenderLayerCompositor):

LayoutTests:

Reviewed by James Robinson.

* compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Ensure slow-scrolling is not triggered.
* compositing/layer-creation/fixed-position-out-of-view-scroll-reason.html: Added.

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

7 years ago[Shadow DOM] Kill ShadowRoot constructor
hayato@chromium.org [Wed, 12 Dec 2012 04:52:49 +0000 (04:52 +0000)]
[Shadow DOM] Kill ShadowRoot constructor
https://bugs.webkit.org/show_bug.cgi?id=102913

Reviewed by Dimitri Glazkov.

Source/WebCore:

Remove ShadowRoot constructor in favor of Element.webkitCreateShadowRoot().

No new tests. Update existing tests.

* dom/ShadowRoot.idl:
* page/DOMWindow.idl:
* testing/Internals.cpp:
(WebCore::Internals::createShadowRoot):
(WebCore):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

LayoutTests:

* editing/pasteboard/copy-paste-float.html:
* editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html:
* editing/shadow/bold-twice-in-shadow.html:
* editing/shadow/breaking-editing-boundaries-2.html:
* editing/shadow/breaking-editing-boundaries.html:
* editing/shadow/breaking-editing-boundary-with-table.html:
* editing/shadow/compare-positions-in-nested-shadow.html:
* editing/shadow/contenteditable-propagation-at-shadow-boundary.html:
* editing/shadow/delete-characters-in-distributed-node-crash.html:
* editing/shadow/delete-list-in-shadow.html:
* editing/shadow/doubleclick-on-meter-in-shadow-crash.html:
* editing/shadow/execcommand-indent-in-shadow.html:
* editing/shadow/insertorderedlist-crash.html:
* editing/shadow/pressing-enter-on-list.html:
* editing/shadow/rightclick-on-meter-in-shadow-crash.html:
* editing/shadow/select-contenteditable-shadowhost.html:
* editing/shadow/selection-of-orphan-shadowroot.html:
* editing/shadow/selection-of-shadowroot.html:
* editing/shadow/shadow-selection-not-exported.html:
* fast/css/style-scoped/style-scoped-apply-author-styles-expected.txt:
* fast/css/style-scoped/style-scoped-apply-author-styles.html:
* fast/css/style-scoped/style-scoped-change-scoped-in-shadow-expected.txt:
* fast/css/style-scoped/style-scoped-change-scoped-in-shadow.html:
* fast/css/style-scoped/style-scoped-in-shadow-expected.txt:
* fast/css/style-scoped/style-scoped-in-shadow.html:
* fast/dom/shadow/adopt-node-with-shadow-root.html:
* fast/dom/shadow/athost-atrules.html:
* fast/dom/shadow/base-in-shadow-tree.html:
* fast/dom/shadow/caret-range-from-point-in-nested-shadow.html:
* fast/dom/shadow/content-after-style.html:
* fast/dom/shadow/content-element-in-media-element.html:
* fast/dom/shadow/content-element-in-meter-element.html:
* fast/dom/shadow/content-element-in-progress-element.html:
* fast/dom/shadow/content-element-in-select-element.html:
* fast/dom/shadow/content-element-outside-shadow-style.html:
* fast/dom/shadow/content-reprojection-complex.html:
* fast/dom/shadow/content-reprojection-dynamic.html:
* fast/dom/shadow/content-reprojection-fallback-crash.html:
* fast/dom/shadow/content-reprojection-fallback-reprojection.html:
* fast/dom/shadow/content-reprojection-fallback.html:
* fast/dom/shadow/content-reprojection-order.html:
* fast/dom/shadow/content-reprojection-shadow.html:
* fast/dom/shadow/cppevent-in-shadow.html:
* fast/dom/shadow/cppevent-input-in-shadow.html:
* fast/dom/shadow/distribution-attribute-modified.html:
* fast/dom/shadow/distribution-className-modified.html:
* fast/dom/shadow/distribution-id-modified.html:
* fast/dom/shadow/drag-to-meter-in-shadow-crash.html:
* fast/dom/shadow/drop-event-for-input-in-shadow.html:
* fast/dom/shadow/drop-event-in-shadow.html:
* fast/dom/shadow/element-from-point-in-nested-shadow.html:
* fast/dom/shadow/form-in-shadow.html:
* fast/dom/shadow/get-element-by-id-in-shadow-mutation.html:
* fast/dom/shadow/has-content-elements.html:
* fast/dom/shadow/has-elementshadow.html:
* fast/dom/shadow/has-shadow-insertion-point.html:
* fast/dom/shadow/host-wrapper-reclaimed.html:
* fast/dom/shadow/iframe-shadow.html:
* fast/dom/shadow/input-with-validation-without-shadow.html:
* fast/dom/shadow/input-with-validation.html:
* fast/dom/shadow/insertion-point-list-menu-crash.html:
* fast/dom/shadow/insertion-point-resetStyleInheritance.html:
* fast/dom/shadow/insertion-point-shadow-crash.html:
* fast/dom/shadow/insertion-point-video-crash.html:
* fast/dom/shadow/invalidate-distribution.html:
* fast/dom/shadow/link-in-shadow-tree.html:
* fast/dom/shadow/multiple-shadowroot-adopt.html:
* fast/dom/shadow/multiple-shadowroot-rendering.html:
* fast/dom/shadow/multiple-shadowroot.html:
* fast/dom/shadow/parent-tree-scope-in-shadow.html:
* fast/dom/shadow/pseudo-attribute-dynamic.html:
* fast/dom/shadow/pseudo-attribute-rendering.html:
* fast/dom/shadow/pseudoclass-update-checked-input.html:
* fast/dom/shadow/pseudoclass-update-checked-option.html:
* fast/dom/shadow/pseudoclass-update-disabled-button.html:
* fast/dom/shadow/pseudoclass-update-disabled-fieldset.html:
* fast/dom/shadow/pseudoclass-update-disabled-input.html:
* fast/dom/shadow/pseudoclass-update-disabled-optgroup.html:
* fast/dom/shadow/pseudoclass-update-disabled-option.html:
* fast/dom/shadow/pseudoclass-update-disabled-select.html:
* fast/dom/shadow/pseudoclass-update-disabled-textarea.html:
* fast/dom/shadow/pseudoclass-update-enabled-anchor.html:
* fast/dom/shadow/pseudoclass-update-enabled-area.html:
* fast/dom/shadow/pseudoclass-update-enabled-button.html:
* fast/dom/shadow/pseudoclass-update-enabled-fieldset.html:
* fast/dom/shadow/pseudoclass-update-enabled-input.html:
* fast/dom/shadow/pseudoclass-update-enabled-optgroup.html:
* fast/dom/shadow/pseudoclass-update-enabled-option.html:
* fast/dom/shadow/pseudoclass-update-enabled-select.html:
* fast/dom/shadow/pseudoclass-update-enabled-textarea.html:
* fast/dom/shadow/pseudoclass-update-indeterminate-input.html:
* fast/dom/shadow/pseudoclass-update-indeterminate-progress.html:
* fast/dom/shadow/pseudoclass-update-link-anchor.html:
* fast/dom/shadow/pseudoclass-update-link-area.html:
* fast/dom/shadow/pseudoclass-update-target.html:
* fast/dom/shadow/pseudoclass-update-visited-anchor.html:
* fast/dom/shadow/pseudoclass-update-visited-area.html:
* fast/dom/shadow/remove-styles-in-shadow-crash.html:
* fast/dom/shadow/reprojection-attribute-modified.html:
* fast/dom/shadow/reprojection-className-modified.html:
* fast/dom/shadow/reprojection-id-modified.html:
* fast/dom/shadow/resize-in-shadow-dom.html:
* fast/dom/shadow/resources/polyfill.js:
(.Element.prototype.webkitCreateShadowRoot):
* fast/dom/shadow/resources/shadow-dom.js:
(createDOM):
* fast/dom/shadow/select-image-with-shadow.html:
* fast/dom/shadow/selection-shouldnt-expose-shadow-dom.html:
* fast/dom/shadow/selections-in-shadow.html:
* fast/dom/shadow/shadow-and-list-elements.html:
* fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt:
* fast/dom/shadow/shadow-aware-create-shadow-root.html:
* fast/dom/shadow/shadow-content-crash.html:
* fast/dom/shadow/shadow-disable-expected.txt:
* fast/dom/shadow/shadow-disable.html:
* fast/dom/shadow/shadow-div-reflow.html:
* fast/dom/shadow/shadow-dynamic-style-change-via-mutation-and-selector.html:
* fast/dom/shadow/shadow-element-rendering-multiple.html:
* fast/dom/shadow/shadow-element-rendering-single.html:
* fast/dom/shadow/shadow-nested-pseudo-id.html:
* fast/dom/shadow/shadow-on-image.html:
* fast/dom/shadow/shadow-pseudo-id.html:
* fast/dom/shadow/shadow-removechild-and-blur-event.html:
* fast/dom/shadow/shadow-reprojection-click.html:
* fast/dom/shadow/shadow-reprojection-dynamic.html:
* fast/dom/shadow/shadow-reprojection-fallback.html:
* fast/dom/shadow/shadow-reprojection.html:
* fast/dom/shadow/shadow-reprojection2.html:
* fast/dom/shadow/shadow-root-append.html:
* fast/dom/shadow/shadow-root-applyAuthorStyles.html:
* fast/dom/shadow/shadow-root-attached.html:
* fast/dom/shadow/shadow-root-innerHTML.html:
* fast/dom/shadow/shadow-root-js-api-expected.txt:
* fast/dom/shadow/shadow-root-js-api.html:
* fast/dom/shadow/shadow-root-new-expected.txt:
* fast/dom/shadow/shadow-root-new.html:
* fast/dom/shadow/shadow-root-resetStyleInheritance.html:
* fast/dom/shadow/shadow-select-attribute-featureset.html:
* fast/dom/shadow/shadow-ul-li.html:
* fast/dom/shadow/shadowdom-dynamic-styling.html:
* fast/dom/shadow/shadowdom-for-button-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-button-only-shadow.html:
* fast/dom/shadow/shadowdom-for-button-without-shadow.html:
* fast/dom/shadow/shadowdom-for-button.html:
* fast/dom/shadow/shadowdom-for-fieldset-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-fieldset-only-shadow.html:
* fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html:
* fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html:
* fast/dom/shadow/shadowdom-for-image-alt-update.html:
* fast/dom/shadow/shadowdom-for-image-alt.html:
* fast/dom/shadow/shadowdom-for-image-content.html:
* fast/dom/shadow/shadowdom-for-image-dynamic.html:
* fast/dom/shadow/shadowdom-for-image-event-click.html:
* fast/dom/shadow/shadowdom-for-image-event.html:
* fast/dom/shadow/shadowdom-for-image-in-shadowdom.html:
* fast/dom/shadow/shadowdom-for-image-map.html:
* fast/dom/shadow/shadowdom-for-image-style.html:
* fast/dom/shadow/shadowdom-for-image-with-multiple-shadow.html:
* fast/dom/shadow/shadowdom-for-image-with-pseudo-id.html:
* fast/dom/shadow/shadowdom-for-image-with-width-and-height.html:
* fast/dom/shadow/shadowdom-for-image.html:
* fast/dom/shadow/shadowdom-for-keygen-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-only-shadow.html:
* fast/dom/shadow/shadowdom-for-keygen-without-shadow.html:
* fast/dom/shadow/shadowdom-for-media.html:
* fast/dom/shadow/shadowdom-for-meter-dynamic.html:
* fast/dom/shadow/shadowdom-for-meter-multiple.html:
* fast/dom/shadow/shadowdom-for-meter-with-style.html:
* fast/dom/shadow/shadowdom-for-meter-without-appearance.html:
* fast/dom/shadow/shadowdom-for-meter-without-shadow-element.html:
* fast/dom/shadow/shadowdom-for-meter.html:
* fast/dom/shadow/shadowdom-for-object-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-object-only-shadow.html:
* fast/dom/shadow/shadowdom-for-object-without-shadow.html:
* fast/dom/shadow/shadowdom-for-output-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-output-only-shadow.html:
* fast/dom/shadow/shadowdom-for-output-without-shadow.html:
* fast/dom/shadow/shadowdom-for-progress-dynamic.html:
* fast/dom/shadow/shadowdom-for-progress-multiple.html:
* fast/dom/shadow/shadowdom-for-progress-with-style.html:
* fast/dom/shadow/shadowdom-for-progress-without-appearance.html:
* fast/dom/shadow/shadowdom-for-progress-without-shadow-element.html:
* fast/dom/shadow/shadowdom-for-progress.html:
* fast/dom/shadow/shadowdom-for-select-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-select-only-shadow.html:
* fast/dom/shadow/shadowdom-for-select-without-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-complex-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-only-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea-with-attribute.html:
* fast/dom/shadow/shadowdom-for-textarea-with-placeholder.html:
* fast/dom/shadow/shadowdom-for-textarea-with-style.html:
* fast/dom/shadow/shadowdom-for-textarea-without-shadow.html:
* fast/dom/shadow/shadowdom-for-textarea.html:
* fast/dom/shadow/shadowroot-clonenode.html:
* fast/dom/shadow/shadowroot-of-insertionpoint.html:
* fast/dom/shadow/shadowroot-type.html:
* fast/dom/shadow/style-of-distributed-node.html:
* fast/dom/shadow/style-scoped-not-enabled.html:
* fast/dom/shadow/styling-pseudo-attribute.html:
* fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html:
* fast/dom/shadow/transition-on-shadow-host-with-distributed-node.html:
* fast/dom/shadow/user-modify-inheritance.html:
* fast/dom/shadow/wheel-event-in-shadow-dom.html:
* fast/dom/shadow/wheel-event-on-input-in-shadow-dom.html:
* fast/frames/detached-shadow-frame.html:
* fast/js/global-constructors-expected.txt:
* inspector/elements/shadow-root.html:
* inspector/elements/update-shadowdom.html:
* platform/efl/fast/js/global-constructors-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:

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

7 years agogarden-o-matic doesn't know about reftests
dpranke@chromium.org [Wed, 12 Dec 2012 03:38:31 +0000 (03:38 +0000)]
garden-o-matic doesn't know about reftests
https://bugs.webkit.org/show_bug.cgi?id=101976

Reviewed by Ojan Vafai.

This is a first attempt at fixing this, sort of a "stop-the-bleeding"
fix. We will now look at the list of tests we're asked to rebaseline,
and log which ones are reftests into the status area, and rebaseline
the rest.

Longer-term, we should display feedback in the results area based on
which tests we're looking at. If the test list contains no reftests,
we should behave as today; if the list is all reftest, we should
probably disable the button, and if the list is a mix, we should
probably display an alert next to the button or something. It would
also be nice to annotate which tests were reftests, maybe with a
"(reftest)" next to the test name or something.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
(.):
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
(.):
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results_unittests.js:

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

7 years agoAdd Element-specific traversal functions
antti@apple.com [Wed, 12 Dec 2012 03:12:23 +0000 (03:12 +0000)]
Add Element-specific traversal functions
https://bugs.webkit.org/show_bug.cgi?id=104685

Reviewed by Ryosuke Niwa.

In many cases where we use NodeTraversal we really only want Elements. By having
Element specific iteration functions we can tighten the code and make it faster too.

This patch adds ElementTraversal namespace, similar to NodeTraversal. It also switches
bunch of NodeTraversal call sites that obviously only care about elements to using
the new interface.

This should be a speedup too as we avoid number of branches by not having to look
for children of non-ContainerNodes and by allowing use of ContainerNode specific
accessors.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::addImageMapChildren):
* css/SelectorChecker.cpp:
(WebCore::linkAttribute):
(WebCore::SelectorChecker::allVisitedStateChanged):
(WebCore::SelectorChecker::visitedStateChanged):
* css/StyleInvalidationAnalysis.cpp:
(WebCore::elementMatchesSelectorScopes):
(WebCore::StyleInvalidationAnalysis::invalidateStyle):
* dom/ContainerNodeAlgorithms.h:
(WebCore::ChildFrameDisconnector::collectDescendant):
* dom/Document.cpp:
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::updateBaseURL):
(WebCore::Document::processBaseElement):
* dom/DocumentOrderedMap.cpp:
(WebCore::DocumentOrderedMap::get):
* dom/Element.cpp:
(WebCore::Element::firstElementChild):
* dom/Element.h:
(WebCore):
* dom/ElementShadow.cpp:
(WebCore::ElementShadow::collectSelectFeatureSetFrom):
* dom/NodeTraversal.h:
(ElementTraversal):
(WebCore):
(WebCore::ElementTraversal::traverseNextElementTemplate):
(WebCore::ElementTraversal::next):
(WebCore::ElementTraversal::firstWithin):
(WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
(WebCore::ElementTraversal::nextSkippingChildren):
(NodeTraversal):
* dom/TreeScope.cpp:
(WebCore::TreeScope::labelElementForId):
(WebCore::TreeScope::findAnchor):
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
* editing/DeleteSelectionCommand.cpp:
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
* editing/FrameSelection.cpp:
(WebCore::scanForForm):
* editing/markup.cpp:
(WebCore::completeURLs):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
(WebCore::HTMLFieldSetElement::childrenChanged):
(WebCore::HTMLFieldSetElement::legend):
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::formElementIndex):
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::control):
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::associatedControl):
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::mapMouseEvent):
* html/HTMLNameCollection.cpp:
(WebCore::HTMLNameCollection::virtualItemAfter):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::containsJavaApplet):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::recalcListItems):
* html/shadow/ContentDistributor.cpp:
(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList):
* page/FocusController.cpp:
(WebCore::FocusController::findFocusCandidateInContainer):
* rendering/RenderCounter.cpp:
(WebCore::nextInPreOrder):
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::title):
* svg/SVGUseElement.cpp:
(WebCore::removeDisallowedElementsFromSubtree):
* svg/animation/SMILTimeContainer.cpp:
(WebCore::SMILTimeContainer::updateDocumentOrderIndexes):

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

7 years ago[Chromium] Rebaseline for recent forms changes.
tkent@chromium.org [Wed, 12 Dec 2012 02:51:35 +0000 (02:51 +0000)]
[Chromium] Rebaseline for recent forms changes.
https://bugs.webkit.org/show_bug.cgi?id=103834
https://bugs.webkit.org/show_bug.cgi?id=104438
https://bugs.webkit.org/show_bug.cgi?id=104567

* platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-linux/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-linux/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
* platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-mac-lion/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
* platform/chromium-win-xp/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-win-xp/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt: Removed.
* platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-basic-expected.png: Added.
* platform/chromium-win/fast/forms/datetimelocal/datetimelocal-appearance-l10n-expected.png: Added.
* platform/chromium-win/fast/forms/time-multiple-fields/time-multiple-fields-localization-expected.txt:
* platform/chromium/TestExpectations:

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

7 years agoREGRESSION(r133380): new tests without expected file reported as failing tests on...
dpranke@chromium.org [Wed, 12 Dec 2012 02:22:28 +0000 (02:22 +0000)]
REGRESSION(r133380): new tests without expected file reported as failing tests on the bots
https://bugs.webkit.org/show_bug.cgi?id=101469

Reviewed by Ryosuke Niwa.

Fix parsing of NRWT's output to identify missing results separately
from other regressions.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests._parseNewRunWebKitTestsOutput):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(MasterCfgTest.test_nrwt_leaks_parsing):
(test_nrwt_missing_results):

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

7 years agobuildbot: change run-webkit-tests --no-launch-safari to --no-show-results
dpranke@chromium.org [Wed, 12 Dec 2012 02:21:46 +0000 (02:21 +0000)]
buildbot: change run-webkit-tests --no-launch-safari to --no-show-results
https://bugs.webkit.org/show_bug.cgi?id=104299

Reviewed by Ryosuke Niwa.

Since --no-show-results is the more generically-named flag that NRWT uses.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests):

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

7 years agoremove --use-remote-links-to-tests from buildbot configs (except apple win)
dpranke@chromium.org [Wed, 12 Dec 2012 02:20:51 +0000 (02:20 +0000)]
remove --use-remote-links-to-tests from buildbot configs (except apple win)
https://bugs.webkit.org/show_bug.cgi?id=104291

Reviewed by Csaba Osztrogonác.

This flag is ignored by NRWT and was just implemented for compatibility.
ORWT still uses it, though.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunWebKitTests):
(RunWebKitTests.start):

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

7 years agoUnreviewed. Fix build with DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).
fpizlo@apple.com [Wed, 12 Dec 2012 02:19:25 +0000 (02:19 +0000)]
Unreviewed. Fix build with DFG_ENABLE(DEBUG_PROPAGATION_VERBOSE).

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::tallyFrequentExitSites):

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

7 years ago[soup] Unused parameter in ResourceHandleSoup.cpp
commit-queue@webkit.org [Wed, 12 Dec 2012 02:05:29 +0000 (02:05 +0000)]
[soup] Unused parameter in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=104728

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-11
Reviewed by Kentaro Hara.

The soupLogPrinter has unused parameter 'logger',
remove the parameter name to fix 'unused parameter' build warning.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::soupLogPrinter):

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

7 years agoFixed position out-of-view check is incorrect when page is scaled
wangxianzhu@chromium.org [Wed, 12 Dec 2012 01:53:34 +0000 (01:53 +0000)]
Fixed position out-of-view check is incorrect when page is scaled
https://bugs.webkit.org/show_bug.cgi?id=104303

Source/WebCore:

Reviewed by Kenneth Rohde Christiansen.

Test: compositing/layer-creation/fixed-position-out-of-view-scaled.html
      compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html

* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition): Scale the content rect of the fixed position layer before checking out-of-view.

LayoutTests:

Test if fixed position elements are correctly composited or not composited when page is scaled up and down.

Reviewed by Kenneth Rohde Christiansen.

* compositing/layer-creation/fixed-position-out-of-view-scaled.html: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll.html: Added.
* compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.

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

7 years agoImplement OfflineAudioContext constructor
crogers@google.com [Wed, 12 Dec 2012 01:42:43 +0000 (01:42 +0000)]
Implement OfflineAudioContext constructor
https://bugs.webkit.org/show_bug.cgi?id=104188

Reviewed by Kentaro Hara.

Source/WebCore:

The Web Audio layout tests have relied on an undocumented way (in the specification) to render
audio faster than realtime using an OfflineAudioContext.  We want to expose a proper OfflineAudioContext
object and constructor instead of piggybacking off of the normal AudioContext.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::isSampleRateRangeGood):
* Modules/webaudio/AudioContext.h:
(AudioContext):
* Modules/webaudio/DOMWindowWebAudio.idl:
* Modules/webaudio/OfflineAudioContext.cpp: Added.
(WebCore):
(WebCore::OfflineAudioContext::create):
(WebCore::OfflineAudioContext::OfflineAudioContext):
(WebCore::OfflineAudioContext::~OfflineAudioContext):
* Modules/webaudio/OfflineAudioContext.h: Added.
(WebCore):
(OfflineAudioContext):
* Modules/webaudio/OfflineAudioContext.idl: Added.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* bindings/generic/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::webkitOfflineAudioContextEnabled):
* bindings/js/JSAudioContextCustom.cpp:
(WebCore::JSAudioContextConstructor::constructJSAudioContext):
* bindings/v8/custom/V8AudioContextCustom.cpp:
(WebCore::V8AudioContext::constructorCallbackCustom):

LayoutTests:

Switch Web Audio layout tests to use OfflineAudioContext constructor.

* inspector-protocol/nmi-webaudio.html:
* inspector-protocol/resources/audio-context.html:
* webaudio/audiobuffersource-loop-comprehensive.html:
* webaudio/audiobuffersource-loop-points.html:
* webaudio/audiobuffersource-multi-channels.html:
* webaudio/audiobuffersource-playbackState.html:
* webaudio/audiobuffersource-playbackrate.html:
* webaudio/audiobuffersource-start.html:
* webaudio/audiobuffersource.html:
* webaudio/audiochannelmerger-stereo.html:
* webaudio/audiochannelsplitter.html:
* webaudio/audionode-connect-order.html:
* webaudio/audionode-expected.txt:
* webaudio/audioparam-connect-audioratesignal.html:
* webaudio/audioparam-summingjunction.html:
* webaudio/automatic-pull-node.html:
* webaudio/biquad-allpass.html:
* webaudio/biquad-bandpass.html:
* webaudio/biquad-highpass.html:
* webaudio/biquad-highshelf.html:
* webaudio/biquad-lowpass.html:
* webaudio/biquad-lowshelf.html:
* webaudio/biquad-notch.html:
* webaudio/biquad-peaking.html:
* webaudio/convolution-mono-mono.html:
* webaudio/delaynode-max-default-delay.html:
* webaudio/delaynode-max-nondefault-delay.html:
* webaudio/delaynode-maxdelay.html:
* webaudio/delaynode-maxdelaylimit.html:
* webaudio/delaynode-scheduling.html:
* webaudio/delaynode.html:
* webaudio/distance-exponential.html:
* webaudio/distance-inverse.html:
* webaudio/distance-linear.html:
* webaudio/gain.html:
* webaudio/javascriptaudionode-zero-input-channels.html:
* webaudio/javascriptaudionode.html:
* webaudio/mediaelementaudiosourcenode-gc.html:
* webaudio/mixing.html:
* webaudio/note-grain-on-play.html:
* webaudio/note-grain-on-timing.html:
* webaudio/oscillator-basic.html:
* webaudio/panner-equalpower-stereo.html:
* webaudio/panner-equalpower.html:
* webaudio/realtimeanalyser-fft-sizing.html:
* webaudio/resources/audio-codec-test.js:
(runDecodingTest):
* webaudio/resources/audioparam-testing.js:
(createAudioGraphAndTest):
* webaudio/resources/javascriptaudionode-testing.js:
(runJSNodeTest):
* webaudio/sample-accurate-scheduling.html:
* webaudio/stereo2mono-down-mixing.html:
* webaudio/up-mixing-mono-51.html:
* webaudio/up-mixing-mono-stereo.html:
* webaudio/up-mixing-stereo-51.html:
* webaudio/waveshaper.html:

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

7 years agoWebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D...
commit-queue@webkit.org [Wed, 12 Dec 2012 01:35:42 +0000 (01:35 +0000)]
WebGL: Avoid unnecessary memory copy or conversion in texImage2D and texSubImage2D for HTMLVideoElement
https://bugs.webkit.org/show_bug.cgi?id=102161

Patch by Jun Jiang <jun.a.jiang@intel.com> on 2012-12-11
Reviewed by Kenneth Russell.

There are several memory copy or conversions in the texImage2D and texSubImage2D for HTMLVideoElement which may be avoided. This patch removes the redundant BackingStore copy if the corresponding Graphics port supports the DontCopyBackingStore behavior. Moreover, it optimizes the AlphaOp if the Image source is from HTMLVideoElement to avoid unnecessary Unmultiply or Premultiply operation in unpack/pack.

Already covered by current tests.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::texImage2DImpl):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::videoFrameToImage): add a parameter to choose BackingStore copy behavior.
(WebCore::WebGLRenderingContext::texSubImage2DImpl):
(WebCore::WebGLRenderingContext::texSubImage2D):
* html/canvas/WebGLRenderingContext.h:
(WebGLRenderingContext):
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::ImageExtractor):
* platform/graphics/GraphicsContext3D.h:
(ImageExtractor):
(WebCore::GraphicsContext3D::ImageExtractor::imageSourceUnpackAlignment):
(WebCore::GraphicsContext3D::ImageExtractor::imageHtmlDomSource):
* platform/graphics/ImageBuffer.h:
(ImageBuffer):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/qt/ImageBufferQt.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/skia/GraphicsContext3DSkia.cpp:
(WebCore::GraphicsContext3D::ImageExtractor::extractImage): optimize the AlphaOp for HTMLVideoElement input.
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/wince/ImageBufferWinCE.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):
* platform/graphics/wx/ImageBufferWx.cpp:
(WebCore::ImageBuffer::fastCopyImageMode):
(WebCore):

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

7 years ago[BlackBerry] Redraw spell check dialog after rotation.
nghanavatian@rim.com [Wed, 12 Dec 2012 01:30:47 +0000 (01:30 +0000)]
[BlackBerry] Redraw spell check dialog after rotation.
https://bugs.webkit.org/show_bug.cgi?id=104737

Reviewed by Rob Buis.

After rotating the device, all dialogs are dismissed. We should
restore the spell check dialog as it is still valid after
rotation and the user will expect it there.

Internally reviewed by Mike Fenton and Gen Mak.

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

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

7 years ago[EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
commit-queue@webkit.org [Wed, 12 Dec 2012 01:23:47 +0000 (01:23 +0000)]
[EFL] Missing implementation of GraphicsContext3DPrivate::platformLayerSize()
https://bugs.webkit.org/show_bug.cgi?id=104726

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-12-11
Reviewed by Kenneth Rohde Christiansen.

Add common implementation of GraphicsContext3DPrivate::platformLayerSize() similar
to Qt version. There is nothing platform specific in Qt version.

Covered by existing tests.

* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
(GraphicsContext3DPrivate::platformLayerSize):
* platform/graphics/efl/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):

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

7 years ago[Texmap] Slightly improve readability of the antialias shader
commit-queue@webkit.org [Wed, 12 Dec 2012 01:18:12 +0000 (01:18 +0000)]
[Texmap] Slightly improve readability of the antialias shader
https://bugs.webkit.org/show_bug.cgi?id=104708

Patch by No'am Rosenthal <noam@webkit.org> on 2012-12-11
Reviewed by Martin Robinson.

Modify the antialiasing shader to include separate function that perform
discrete operations, rather than one big function that repeats the same
operations.

No new tests, readability fix.

* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore::getShaderSpec):

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

7 years ago-webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
timothy_horton@apple.com [Wed, 12 Dec 2012 01:15:00 +0000 (01:15 +0000)]
-webkit-svg-shadow radius changes don't cause children's boundaries to be recomputed
https://bugs.webkit.org/show_bug.cgi?id=104722
<rdar://problem/12821080>

Reviewed by Simon Fraser.

Changes to -webkit-svg-shadow currently cause a relayout of the directly affected renderer
and its parents, but not its children. However, children have the shadow radius
baked into their cached boundaries, so these need to be invalidated.

Test: svg/repaint/repaint-webkit-svg-shadow-container.html

* rendering/RenderObject.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGContainer.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGImage.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGRoot.h: Expose needsBoundariesUpdate().
* rendering/svg/RenderSVGShape.h: Expose needsBoundariesUpdate().
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::layoutChildren): If the renderer has a shadow and
is in need of a boundaries update, mark children as needing boundaries updates too.

Add a text repaint test that ensures that a child (a path, in this case)
recomputes its bounds after its parent's shadow is expanded.

* svg/repaint/repaint-webkit-svg-shadow-container-expected.txt: Added.
* svg/repaint/repaint-webkit-svg-shadow-container.html: Added.

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

7 years ago[BlackBerry] Shift the spell check dialog to align with text after transformation
nghanavatian@rim.com [Wed, 12 Dec 2012 01:08:32 +0000 (01:08 +0000)]
[BlackBerry] Shift the spell check dialog to align with text after transformation
https://bugs.webkit.org/show_bug.cgi?id=104716

Reviewed by Rob Buis.

PR245033
As the page is transformed, we should redraw the dialog box to align
with the new text position. We send a message to move the dialog
box from different spots to account for scrolling. This includes
keyboard transitions from hidden to displayed and centering of
focus around a new touch point. We do not reposition on manual user
scrolling of the page, as this simply dismisses the dialog.

Internally reviewed by Mike Fenton and Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
* Api/WebPageClient.h:
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::scroll):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::InputHandler):
(BlackBerry::WebKit::InputHandler::shouldRequestSpellCheckingOptionsForPoint):
(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):
(BlackBerry::WebKit::InputHandler::redrawSpellCheckDialogIfRequired):
(WebKit):
* WebKitSupport/InputHandler.h:
(InputHandler):
(BlackBerry::WebKit::InputHandler::clearDidSpellCheckState):
(BlackBerry::WebKit::InputHandler::didSpellCheckWord):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

7 years agoASSERT running platform/mac/plugins/convert-point.html on the WK2 bots
andersca@apple.com [Wed, 12 Dec 2012 01:07:00 +0000 (01:07 +0000)]
ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots
https://bugs.webkit.org/show_bug.cgi?id=104735

Reviewed by Jon Honeycutt.

Tools:

Do the testing from within NPP_New instead of NPN_SetWindow. Plug-ins aren't supposed to do any real work inside NPP_SetWindow,
and doing so will more easily trigger the assertion failure. Ideally we should get rid of the initial sync painting pass, but this
gets the test passing again!

* DumpRenderTree/TestNetscapePlugIn/Tests/mac/ConvertPoint.cpp:
(ConvertPoint::NPP_New):

LayoutTests:

Unskip test.

* platform/mac-wk2/TestExpectations:

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

7 years agoAdd instructions on how to build WebKit on Xcode 4 to build.html
rniwa@webkit.org [Wed, 12 Dec 2012 01:03:26 +0000 (01:03 +0000)]
Add instructions on how to build WebKit on Xcode 4 to build.html
https://bugs.webkit.org/show_bug.cgi?id=104739

Reviewed by Daniel Bates.

Set the build directories to WebKitBuild.

* building/build.html:

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

7 years ago<rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
ap@apple.com [Wed, 12 Dec 2012 01:00:22 +0000 (01:00 +0000)]
<rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
https://bugs.webkit.org/show_bug.cgi?id=104732

Reviewed by Anders Carlsson.

* Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::waitForResponse):
Fixed to make sense.

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

7 years agoAdd window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
wangxianzhu@chromium.org [Wed, 12 Dec 2012 00:56:44 +0000 (00:56 +0000)]
Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
https://bugs.webkit.org/show_bug.cgi?id=104714

Reviewed by Eric Seidel.

.:

Export symbol Page::mainThreadScrollingReasonsAsText().

* Source/autotools/symbols.filter:

Source/WebCore:

No new tests. Adds test api for bug 102543 and other bugs.

* WebCore.exp.in:
* page/Page.cpp:
(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText): Extracted from ScrollingStateScrollingNode::dumpProperties for layout tests.
(WebCore):
* page/Page.h:
(Page):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::mainThreadScrollingReasonsAsText):
(WebCore):
* page/scrolling/ScrollingCoordinator.h:
(ScrollingCoordinator):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::dumpProperties): Moved code for mainThreadScrollingReasons to ScrollingCoordinator.cpp.
* testing/Internals.cpp:
(WebCore::Internals::mainThreadScrollingReasons):
(WebCore):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit2:

Export symbol Page::mainThreadScrollingReasonsAsText().

* win/WebKit2.def.in:

LayoutTests:

* platform/mac/tiled-drawing/scrolling-tree-slow-scrolling-expected.txt: Updated according to the change of mainThreadScrollingReasons about the trailing comma.

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

7 years agoEnhance the TileCache to cache more tiles
simon.fraser@apple.com [Wed, 12 Dec 2012 00:47:24 +0000 (00:47 +0000)]
Enhance the TileCache to cache more tiles
https://bugs.webkit.org/show_bug.cgi?id=104612

Reviewed by Tim Horton.

Add smarts to the TileCache so that it keeps some tiles around
for longer and can prepopulate tiles in to-be-scrolled-to regions.

The new tile management is as follows:
* As before, we expand the visible rect to create a "tile coverage rect"
which is twice the width, and three times the height of the visible rect.
* At the edges, this coverage rect is constrained by them, rather than being
truncated as before (leading to larger initial tile coverage).
* When tiles leave the coverage rect, we keep them around but track
them in cohorts (where a cohort is a set of tiles that left the coverage rect
at the same time).
* If a repaint comes in for a "secondary" tile, we don't paint it, but mark
the tile as being stale. It will get repainted (in full) if it moves back inside
the coverage rect.
* Cohorts are kept around for 2 seconds after they were created. A repeating
1-second timer clears tiles in old cohorts.
* Secondary tiles are pruned if the visible rect changes, or if zooming happens.
* TiledBacking exposes a way to prepopulate a rect with tiles; this is called
when scrolling (e.g. via Home/End keys). Tiles created this way (if outside
the coverage rect) go into a cohort.

* page/FrameView.cpp:
(WebCore::FrameView::requestScrollPositionUpdate): Tell the TiledBacking
to prepopulate some tiles.
* platform/graphics/TiledBacking.h:
(TiledBacking): Add prepopulateRect().
* platform/graphics/ca/mac/TileCache.h:
(TileInfo): The TileMap contains TileInfos, which contain a pointer
to the layer, their cohort, and a 'stale content' flag.
(WebCore::TileCache::TileInfo::TileInfo):
(TileCache):
(TileCohortInfo):
(WebCore::TileCache::TileCohortInfo::TileCohortInfo):
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):
(WebCore::TileCache::~TileCache):
(WebCore::TileCache::setNeedsDisplay):
(WebCore::TileCache::setNeedsDisplayInRect):
(WebCore::TileCache::setTileNeedsDisplayInRect):
(WebCore::TileCache::setScale):
(WebCore::TileCache::setAcceleratesDrawing):
(WebCore::TileCache::setTilesOpaque):
(WebCore::TileCache::prepopulateRect):
(WebCore::TileCache::setTileDebugBorderWidth):
(WebCore::TileCache::setTileDebugBorderColor):
(WebCore::TileCache::computeTileCoverageRect):
(WebCore::TileCache::tileSizeForCoverageRect):
(WebCore::TileCache::tileRevalidationTimerFired):
(WebCore::TileCache::blankPixelCount):
(WebCore::queueTileForRemoval):
(WebCore::TileCache::removeAllTiles):
(WebCore::TileCache::removeAllSecondaryTiles):
(WebCore::TileCache::removeTilesInCohort):
(WebCore::TileCache::revalidateTiles):
(WebCore::TileCache::nextTileCohort):
(WebCore::TileCache::startedNewCohort):
(WebCore::TileCache::newestTileCohort):
(WebCore::TileCache::oldestTileCohort):
(WebCore::TileCache::scheduleCohortRemoval):
(WebCore::TileCache::cohortRemovalTimerFired):
(WebCore::TileCache::ensureTilesForRect):
(WebCore::TileCache::tileGridExtent):
(WebCore::TileCache::tileCoverageRect):
(WebCore::TileCache::tileLayerAtIndex):
(WebCore::TileCache::drawTileMapContents):

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

7 years agoRemove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
simon.fraser@apple.com [Wed, 12 Dec 2012 00:47:19 +0000 (00:47 +0000)]
Remove redundant AffineTransform in RenderSVGShape::fillAndStrokeShape()
https://bugs.webkit.org/show_bug.cgi?id=104736

Reviewed by Dean Jackson.

RenderSVGShape::fillAndStrokeShape() allocated a AffineTransform on
the stack which was shadowed by another one in narrower scope. It
can be removed.

* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::fillAndStrokeShape):

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

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=104735
bdakin@apple.com [Wed, 12 Dec 2012 00:40:05 +0000 (00:40 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=104735
ASSERT running platform/mac/plugins/convert-point.html on the WK2 bots

Skipping this test for now until we fix the plug-ing bug.
* platform/mac-wk2/TestExpectations:

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

7 years ago[EFL] Remove unused headers
commit-queue@webkit.org [Wed, 12 Dec 2012 00:39:29 +0000 (00:39 +0000)]
[EFL] Remove unused headers
https://bugs.webkit.org/show_bug.cgi?id=104661

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2012-12-11
Reviewed by Ryosuke Niwa.

Header inclusion cleanup.
Remove "NotImplemented.h".

Source/WebCore:

No new tests, no behavior change.

* platform/efl/CursorEfl.cpp:
* platform/efl/FileSystemEfl.cpp:
* platform/efl/ScrollViewEfl.cpp:
* platform/efl/ScrollbarThemeEfl.cpp:
* platform/efl/SoundEfl.cpp:

Source/WebKit/efl:

* WebCoreSupport/PopupMenuEfl.cpp:
* ewk/ewk_intent.cpp:

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

7 years agoDashboard unit tests should not make xhrs.
jparent@chromium.org [Wed, 12 Dec 2012 00:36:00 +0000 (00:36 +0000)]
Dashboard unit tests should not make xhrs.
https://bugs.webkit.org/show_bug.cgi?id=104598

Reviewed by Dirk Pranke.

The unit test were requesting 25 files that they did not use.
Stub out loader.request to avoid making the xhrs.
Result: order of magnitude speed improvement in test run time (from ~1600ms to 160ms on my machine).

* TestResultServer/static-dashboards/run-embedded-unittests.html:
* TestResultServer/static-dashboards/run-unittests.html:

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

7 years agoUnreviewed. Tweak expectations to be image-only.
adamk@chromium.org [Wed, 12 Dec 2012 00:32:36 +0000 (00:32 +0000)]
Unreviewed. Tweak expectations to be image-only.

* platform/chromium/TestExpectations:

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

7 years agoIndexedDB: Stub out data operations on IDBDatabaseBackendInterface
alecflett@chromium.org [Wed, 12 Dec 2012 00:29:01 +0000 (00:29 +0000)]
IndexedDB: Stub out data operations on IDBDatabaseBackendInterface
https://bugs.webkit.org/show_bug.cgi?id=104592

Reviewed by Dimitri Glazkov.

Source/WebCore:

In preparation for removing objectStore/index backend
interfaces, stub out the basic data operations around
get, put, cursors, etc. on IDBDatabaseBackendInterface.

No new tests, this is just preparation for refactoring.

* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::get):
(WebCore):
(WebCore::IDBDatabaseBackendImpl::put):
(WebCore::IDBDatabaseBackendImpl::setIndexKeys):
(WebCore::IDBDatabaseBackendImpl::setIndexesReady):
(WebCore::IDBDatabaseBackendImpl::openCursor):
(WebCore::IDBDatabaseBackendImpl::count):
(WebCore::IDBDatabaseBackendImpl::deleteRange):
(WebCore::IDBDatabaseBackendImpl::clear):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBDatabaseBackendInterface.h:
(WebCore):
(IDBDatabaseBackendInterface):

Source/WebKit/chromium:

Stub out chromium side of data operations for refactor.

* public/WebIDBDatabase.h:
(WebKit):
(WebKit::WebIDBDatabase::get):
(WebKit::WebIDBDatabase::put):
(WebKit::WebIDBDatabase::setIndexKeys):
(WebKit::WebIDBDatabase::setIndexesReady):
(WebKit::WebIDBDatabase::openCursor):
(WebKit::WebIDBDatabase::count):
(WebKit::WebIDBDatabase::deleteRange):
(WebKit::WebIDBDatabase::clear):
(WebIDBDatabase):
* src/IDBDatabaseBackendProxy.cpp:
(WebKit::IDBDatabaseBackendProxy::openCursor):
(WebKit):
(WebKit::IDBDatabaseBackendProxy::count):
(WebKit::IDBDatabaseBackendProxy::get):
(WebKit::IDBDatabaseBackendProxy::put):
(WebKit::IDBDatabaseBackendProxy::setIndexKeys):
(WebKit::IDBDatabaseBackendProxy::setIndexesReady):
(WebKit::IDBDatabaseBackendProxy::deleteRange):
(WebKit::IDBDatabaseBackendProxy::clear):
* src/IDBDatabaseBackendProxy.h:
(IDBDatabaseBackendProxy):
* src/WebIDBDatabaseImpl.cpp:
(WebKit):
(WebKit::WebIDBDatabaseImpl::openCursor):
(WebKit::WebIDBDatabaseImpl::count):
(WebKit::WebIDBDatabaseImpl::get):
(WebKit::WebIDBDatabaseImpl::put):
(WebKit::WebIDBDatabaseImpl::setIndexKeys):
(WebKit::WebIDBDatabaseImpl::setIndexesReady):
(WebKit::WebIDBDatabaseImpl::deleteRange):
(WebKit::WebIDBDatabaseImpl::clear):
* src/WebIDBDatabaseImpl.h:
(WebIDBDatabaseImpl):
* tests/IDBDatabaseBackendTest.cpp:

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

7 years agoRebaselines after r137359
adamk@chromium.org [Wed, 12 Dec 2012 00:28:07 +0000 (00:28 +0000)]
Rebaselines after r137359

Unreviewed chromium gardening.

* platform/chromium-mac-snowleopard/fast/ruby/position-after-expected.png: Added.
* platform/chromium-mac/fast/ruby/position-after-expected.png: Added.
* platform/chromium-win/fast/ruby/position-after-expected.png: Added.

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

7 years agoProfiler should show bytecode dumps as they would have been visible to the JITs,...
fpizlo@apple.com [Wed, 12 Dec 2012 00:21:43 +0000 (00:21 +0000)]
Profiler should show bytecode dumps as they would have been visible to the JITs, including the profiling data that the JITs would see
https://bugs.webkit.org/show_bug.cgi?id=104647

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Adds more profiling data to bytecode dumps, and adds the ability to do a secondary
bytecode dump for each JIT compilation of a code block. This is relevant because both
the bytecodes, and the profiling data, may change after some number of executions.

Also fixes some random dumping code to use PrintStream& rather than
static const char[thingy].

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/ArrayProfile.cpp:
(JSC::dumpArrayModes):
(JSC::ArrayProfile::briefDescription):
* bytecode/ArrayProfile.h:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::dumpValueProfiling):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpBytecode):
* bytecode/CodeBlock.h:
* bytecode/ValueProfile.h:
(JSC::ValueProfileBase::briefDescription):
* dfg/DFGAbstractValue.h:
(JSC::DFG::AbstractValue::dump):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseCodeBlock):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* profiler/ProfilerBytecodeSequence.cpp: Added.
(JSC::Profiler::BytecodeSequence::BytecodeSequence):
(JSC::Profiler::BytecodeSequence::~BytecodeSequence):
(JSC::Profiler::BytecodeSequence::indexForBytecodeIndex):
(JSC::Profiler::BytecodeSequence::forBytecodeIndex):
(JSC::Profiler::BytecodeSequence::addSequenceProperties):
* profiler/ProfilerBytecodeSequence.h: Added.
(JSC::Profiler::BytecodeSequence::size):
(JSC::Profiler::BytecodeSequence::at):
* profiler/ProfilerBytecodes.cpp:
(JSC::Profiler::Bytecodes::Bytecodes):
(JSC::Profiler::Bytecodes::toJS):
* profiler/ProfilerBytecodes.h:
(JSC::Profiler::Bytecodes::instructionCount):
* profiler/ProfilerCompilation.cpp:
(JSC::Profiler::Compilation::addProfiledBytecodes):
(JSC::Profiler::Compilation::toJS):
* profiler/ProfilerCompilation.h:
(JSC::Profiler::Compilation::profiledBytecodesSize):
(JSC::Profiler::Compilation::profiledBytecodesAt):
* profiler/ProfilerDatabase.cpp:
(JSC::Profiler::Database::ensureBytecodesFor):
* profiler/ProfilerDatabase.h:
* profiler/ProfilerProfiledBytecodes.cpp: Added.
(JSC::Profiler::ProfiledBytecodes::ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::~ProfiledBytecodes):
(JSC::Profiler::ProfiledBytecodes::toJS):
* profiler/ProfilerProfiledBytecodes.h: Added.
(JSC::Profiler::ProfiledBytecodes::bytecodes):
* runtime/CommonIdentifiers.h:

Tools:

Added a "profiling" (or "p") command to show the profiling data that the JITs saw
for each JIT compilation of a code block.

Also added instruction counts in the "full" display and made the "full" display the
default thing you see.

* Scripts/display-profiler-output:

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

7 years agoMake Video Track compile on Windows in debug mode.
roger_fong@apple.com [Wed, 12 Dec 2012 00:18:20 +0000 (00:18 +0000)]
Make Video Track compile on Windows in debug mode.
https://bugs.webkit.org/show_bug.cgi?id=104720.

Reviewed by Alexey Proskuryakov.

urlForLogging method was defined in both HTMLMediaElement.cpp and HTMLTrackElement.cpp.
On Windows all the HTMLElements sources are included in an AllInOne source file,
so the definitions conflicted. Fixed by renaming the definition in each source file.

* html/HTMLMediaElement.cpp:
(WebCore::urlForLoggingMedia):
(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::isSafeToLoadURL):
(WebCore::HTMLMediaElement::didRemoveTrack):
(WebCore::HTMLMediaElement::selectNextSourceChild):
(WebCore::HTMLMediaElement::sourceWasAdded):
(WebCore::HTMLMediaElement::sourceWasRemoved):
* html/HTMLTrackElement.cpp:
(WebCore::urlForLoggingTrack):
(WebCore::HTMLTrackElement::canLoadUrl):

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

7 years ago2012-12-11 Nate Chapin <japhet@chromium.org>
japhet@chromium.org [Wed, 12 Dec 2012 00:18:08 +0000 (00:18 +0000)]
2012-12-11  Nate Chapin  <japhet@chromium.org>

        Revert changes to resource-parameters.html introduced in r137333.

        These changes were based on incorrect assumptions on how main resources
        in the cache should handle urls with fragment identifiers.

        * http/tests/inspector/resource-parameters.html:

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

7 years agoMore flakiness.
adamk@chromium.org [Wed, 12 Dec 2012 00:11:58 +0000 (00:11 +0000)]
More flakiness.

Unreviewed chromium gardening.

Hopefully all these flaky markings will help make the CQ more reliable.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed, rolling out r137371.
eric@webkit.org [Tue, 11 Dec 2012 23:45:29 +0000 (23:45 +0000)]
Unreviewed, rolling out r137371.
http://trac.webkit.org/changeset/137371
https://bugs.webkit.org/show_bug.cgi?id=104434

Various scripts are not ready for out/ as the build directory,
this can't work as written.

* Scripts/update-webkit:
* Scripts/webkitdirs.pm:
(buildChromium):

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

7 years agoMore inspector flakiness
adamk@chromium.org [Tue, 11 Dec 2012 23:42:11 +0000 (23:42 +0000)]
More inspector flakiness

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed GTK build functionality fix.
zandobersek@gmail.com [Tue, 11 Dec 2012 23:42:09 +0000 (23:42 +0000)]
Unreviewed GTK build functionality fix.

Turns out the CSP feature was not enabled, that's why all the tests were failing.

* Scripts/webkitperl/FeatureList.pm:

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

7 years agoMark fast/ruby/position-after.html as failing on cr-linux
adamk@chromium.org [Tue, 11 Dec 2012 23:34:25 +0000 (23:34 +0000)]
Mark fast/ruby/position-after.html as failing on cr-linux

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoMake Ninja the default build system for build-webkit --chromium
eric@webkit.org [Tue, 11 Dec 2012 23:33:55 +0000 (23:33 +0000)]
Make Ninja the default build system for build-webkit --chromium
https://bugs.webkit.org/show_bug.cgi?id=104434

Reviewed by Daniel Bates.

As far as I can tell, most Chromium developers are now using Ninja
as their default build system instead of the native Xcode/Visual Studio/Make.
This change makes Ninja the default for developers as well as all Chromium webkit bots.

Developers can pass --no-ninja to get the platform-native buildsystem instead of Ninja.
It's possible we may wish to make this a per-platform default, and have
Ninja only be the default for Mac/Linux.

There was a thread on webkit-dev discussing this change:
http://lists.webkit.org/pipermail/webkit-dev/2012-December/023113.html

* Scripts/update-webkit:

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

7 years agoMail hangs when resizing the font size of a large RTL text
rniwa@webkit.org [Tue, 11 Dec 2012 23:33:49 +0000 (23:33 +0000)]
Mail hangs when resizing the font size of a large RTL text
https://bugs.webkit.org/show_bug.cgi?id=104643

Reviewed by Enrica Casucci.

The bug was caused by ApplyStyleCommand::applyInlineStyleToNodeRange obtaining computed styles while
removing and adding nodes. Fixed the slowness by breaking it into three phases:
1. Split the range into contiguous inline runs, and determine whether styles need to be removed or applied.
2. Remove any conflicting styles, and insert dummy elements at positions where inline styles ought to be
computed as needed.
3. Remove the dummy elements and apply ilnine styles as needed.

No new tests are added since there is no behavior change. This is just a performance improvement.

* editing/ApplyStyleCommand.cpp:
(WebCore::InlineRunToApplyStyle::InlineRunToApplyStyle):
(WebCore::InlineRunToApplyStyle::startAndEndAreStillInDocument):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
(WebCore::ApplyStyleCommand::removeConflictingInlineStyleFromRun):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
(WebCore::ApplyStyleCommand::positionToComputeInlineStyleChange):
(WebCore::ApplyStyleCommand::applyInlineStyleChange):
* editing/ApplyStyleCommand.h:
* editing/EditingStyle.h:
(WebCore::StyleChange::StyleChange):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 11 Dec 2012 23:32:33 +0000 (23:32 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations:

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