WebKit-https.git
7 years ago[chromium] Rename overdraw histograms so we can use field trials in histograms.xml
danakj@chromium.org [Wed, 18 Apr 2012 20:53:44 +0000 (20:53 +0000)]
[chromium] Rename overdraw histograms so we can use field trials in histograms.xml
https://bugs.webkit.org/show_bug.cgi?id=83500

Reviewed by James Robinson.

* platform/graphics/chromium/cc/CCOverdrawMetrics.cpp:
(WebCore::CCOverdrawMetrics::recordMetricsInternal):

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

7 years agoLion Production Test failing with error: "Failed to stop httpd: pid file still exists...
jer.noble@apple.com [Wed, 18 Apr 2012 20:47:54 +0000 (20:47 +0000)]
Lion Production Test failing with error: "Failed to stop httpd: pid file still exists" https://bugs.webkit.org/show_bug.cgi?id=84177

Reviewed by Dirk Pranke.

Try to delete the pid file left by Apache in the case it was killed forcefully.

* Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
(LayoutTestApacheHttpd._stop_running_server):

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

7 years ago[Chromium] Solid color shader should use premultiplied alpha.
commit-queue@webkit.org [Wed, 18 Apr 2012 20:34:42 +0000 (20:34 +0000)]
[Chromium] Solid color shader should use premultiplied alpha.
https://bugs.webkit.org/show_bug.cgi?id=84215

Patch by David Reveman <reveman@chromium.org> on 2012-04-18
Reviewed by Adrienne Walker.

For efficiency and consistency, expect premultiplied alpha in
solid color shader.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawDebugBorderQuad):
(WebCore::LayerRendererChromium::drawSolidColorQuad):
* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::FragmentShaderColor::getShaderString):

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

7 years ago [WK2] Sandbox violations prevent attaching files to gmail messages
ap@apple.com [Wed, 18 Apr 2012 20:23:10 +0000 (20:23 +0000)]
    [WK2] Sandbox violations prevent attaching files to gmail messages
        https://bugs.webkit.org/show_bug.cgi?id=84263
        <rdar://problem/11248260>

        Reviewed by Oliver Hunt.

        * page/DragActions.h: Removed the newly added upload action. We cannot know if or when an
        upload is going to happen - a drop even listener can always get a reference to a File object,
        and upload it with XMLHttpRequest.

        * page/DragController.cpp: (WebCore::DragController::concludeEditDrag): Removed a separate
        willPerformDragDestinationAction call for upload action - ther is nothing we'd want to only
        do when dropping on a file upload button.

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

7 years agoGraphicsContextCG's roundToDevicePixels should round even when there's no transform
leviw@chromium.org [Wed, 18 Apr 2012 20:05:10 +0000 (20:05 +0000)]
GraphicsContextCG's roundToDevicePixels should round even when there's no transform
https://bugs.webkit.org/show_bug.cgi?id=84191

Reviewed by Eric Seidel.

When painting with the identify transform, the roundToDevicePixels function in GraphicsContextCG
does an early return that simply returns the FloatRect that was passed in. This proved to be a
problem in sub-pixel layout, as we wouldn't adjust the paint rect for text underline, and it could
end up being more than one pixel wide. Adding a roundedIntRect method on FloatRect for the simple
short-circuit case.

No new tests. No change in behavior before switching to sub-pixel layout.

* platform/graphics/FloatRect.cpp:
(WebCore::roundedIntRect):
* platform/graphics/FloatRect.h:
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::roundToDevicePixels):

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

7 years agoClean-up WheelEvent Conversion.
commit-queue@webkit.org [Wed, 18 Apr 2012 19:48:34 +0000 (19:48 +0000)]
Clean-up WheelEvent Conversion.
https://bugs.webkit.org/show_bug.cgi?id=84243

Source/WebKit/qt:

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-18
Reviewed by Simon Hausmann.

* WebCoreSupport/WebEventConversion.cpp:
(WebCore::WebKitPlatformWheelEvent::applyDelta):

Source/WebKit2:

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-18
Reviewed by Simon Hausmann.

* Shared/qt/WebEventFactoryQt.cpp:
(WebKit::WebEventFactory::createWebWheelEvent):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::wheelEvent):

Tools:

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-18
Reviewed by Simon Hausmann.

Calculate proper wheel-delta from pixel-delta given.

* DumpRenderTree/qt/EventSenderQt.cpp:
(EventSender::EventSender):
(EventSender::mouseScrollBy):
(EventSender::continuousMouseScrollBy):

LayoutTests:

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-18
Reviewed by Simon Hausmann.

* platform/qt/fast/events/continuous-platform-wheelevent-in-scrolling-div-expected.txt:

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

7 years ago[chromium] Turn on ENABLE_DATALIST for chromium
keishi@webkit.org [Wed, 18 Apr 2012 19:32:16 +0000 (19:32 +0000)]
[chromium] Turn on ENABLE_DATALIST for chromium
https://bugs.webkit.org/show_bug.cgi?id=84118

Reviewed by Kent Tamura.

Source/WebCore:

* html/HTMLDataListElement.cpp: Touched to avoid build issues. No code change.
* html/HTMLDataListElement.h: Ditto.
* html/HTMLInputElement.cpp: Ditto.
* html/HTMLInputElement.h: Ditto.

Source/WebKit/chromium:

* features.gypi: Turn on ENABLE_DATALIST.
* src/WebInputElement.cpp: Touched to avoid build issues. No code change.

LayoutTests:

* platform/chromium/fast/forms/label/labelable-elements-expected.txt: Update expectated result.

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

7 years ago[Qt] WheelEventQt.cpp should be deleted.
commit-queue@webkit.org [Wed, 18 Apr 2012 19:19:56 +0000 (19:19 +0000)]
[Qt] WheelEventQt.cpp should be deleted.
https://bugs.webkit.org/show_bug.cgi?id=84237

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-04-18
Reviewed by Simon Hausmann.

* platform/qt/WheelEventQt.cpp: Removed.

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

7 years ago[EFL][DRT] Update baselines after font-face support was fixed
commit-queue@webkit.org [Wed, 18 Apr 2012 18:58:08 +0000 (18:58 +0000)]
[EFL][DRT] Update baselines after font-face support was fixed
https://bugs.webkit.org/show_bug.cgi?id=84234

Unreviewed, EFL gardening.

Fixing baselines for css/font-face* tests and tests affected
by working @font-face. A bunch of table/* rebaselines will
follow in a separate batch.

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

* platform/efl/fast/css/beforeSelectorOnCodeElement-expected.png:
* platform/efl/fast/css/font-face-default-font-expected.png:
* platform/efl/fast/css/font-face-in-media-rule-expected.png:
* platform/efl/fast/css/font-face-multiple-faces-expected.png:
* platform/efl/fast/css/font-face-multiple-faces-expected.txt:
* platform/efl/fast/css/font-face-opentype-expected.png:
* platform/efl/fast/css/font-face-opentype-expected.txt:
* platform/efl/fast/css/font-face-remote-expected.png:
* platform/efl/fast/css/font-face-remote-expected.txt:
* platform/efl/fast/css/font-face-synthetic-bold-italic-expected.png: Added.
* platform/efl/fast/css/font-face-synthetic-bold-italic-expected.txt: Added.
* platform/efl/fast/css/font-face-unicode-range-expected.png:
* platform/efl/fast/css/font-face-unicode-range-expected.txt:
* platform/efl/fast/css/font-face-weight-matching-expected.png: Added.
* platform/efl/fast/css/font-face-weight-matching-expected.txt: Added.
* platform/efl/fast/css/font-face-woff-expected.png:
* platform/efl/fast/css/font-face-woff-expected.txt:
* platform/efl/fast/css/rtl-ordering-expected.txt:
* platform/efl/fast/css/text-security-expected.txt:
* platform/efl/fast/events/updateLayoutForHitTest-expected.png:
* platform/efl/fast/writing-mode/broken-ideograph-small-caps-expected.png:
* platform/efl/fast/writing-mode/broken-ideograph-small-caps-expected.txt:
* platform/efl/fast/writing-mode/broken-ideographic-font-expected.png:
* platform/efl/fast/writing-mode/broken-ideographic-font-expected.txt:
* platform/efl/test_expectations.txt:

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

7 years agoUnreviewed. Adding FIXME comment to FractionalLayoutUnit explaining the lack of size_...
eae@chromium.org [Wed, 18 Apr 2012 18:46:57 +0000 (18:46 +0000)]
Unreviewed. Adding FIXME comment to FractionalLayoutUnit explaining the lack of size_t operators.

* platform/FractionalLayoutUnit.h:
(FractionalLayoutUnit):

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

7 years agoIDB: Pending setVersion call in worker prevents document from opening the db, even...
dgrogan@chromium.org [Wed, 18 Apr 2012 18:40:30 +0000 (18:40 +0000)]
IDB: Pending setVersion call in worker prevents document from opening the db, even after worker termination
https://bugs.webkit.org/show_bug.cgi?id=83952

These two tests fail in DRT most proximately because DRT provides
different instances of IDBFactoryBackend to a document and worker:
https://bugs.webkit.org/show_bug.cgi?id=82776.

One fails in chromium because of a logic error tracked by
http://crbug.com/123418. The plan is to run them both as browser tests
when the logic is fixed, but just one in the meantime.

Also added SKIP for storage/indexeddb/dont-commit-on-blocked.html
since it also can't pass in DRT and just turns the flakiness dashboard
all red.

Reviewed by Ojan Vafai.

* platform/chromium/test_expectations.txt:
* storage/indexeddb/pending-version-change-stuck-expected.txt: Added.
* storage/indexeddb/pending-version-change-stuck-works-with-terminate-expected.txt: Added.
* storage/indexeddb/pending-version-change-stuck-works-with-terminate.html: Added.
* storage/indexeddb/pending-version-change-stuck.html: Added.
* storage/indexeddb/resources/pending-version-change-stuck.js: Added.
(test.request.onsuccess.request.onblocked):
(test.request.onsuccess):
(test):

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

7 years agoRemove m_subclassData from JSArray, move the attribute to subclass as needed
benjamin@webkit.org [Wed, 18 Apr 2012 18:36:59 +0000 (18:36 +0000)]
Remove m_subclassData from JSArray, move the attribute to subclass as needed
https://bugs.webkit.org/show_bug.cgi?id=84249

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-18
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

JSArray's m_subclassData is only used by WebCore's RuntimeArray. This patch moves
the attribute to RuntimeArray to avoid allocating memory for the pointer in the common
case.

This gives ~1% improvement in JSArray creation microbenchmark thanks to fewer allocations
of CopiedSpace.

* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateJSArray):
* runtime/JSArray.cpp:
(JSC::JSArray::JSArray):
* runtime/JSArray.h:

Source/WebCore:

* bridge/runtime_array.cpp:
(JSC::RuntimeArray::RuntimeArray):
(JSC::RuntimeArray::finishCreation):
* bridge/runtime_array.h:
(JSC::RuntimeArray::getLength):
(JSC::RuntimeArray::getConcreteArray):
(RuntimeArray):

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

7 years agomatchMedia() MediaQueryList not updating
antti@apple.com [Wed, 18 Apr 2012 18:34:42 +0000 (18:34 +0000)]
matchMedia() MediaQueryList not updating
https://bugs.webkit.org/show_bug.cgi?id=75903

Patch by Luiz Agostini <luiz.agostini@palm.com> on 2012-04-18
Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/media/media-query-list-08.html

Viewport related MediaQueryList listeners were not triggered and the value
of matches were not updated if the document's style selector were not
affected by viewport changes.

The new method evaluateMediaQueries() is now called by FrameView instead of
styleSelectorChanged() if the style selector is not affected by viewport changes.

* dom/Document.cpp:
(WebCore::Document::evaluateMediaQueries):
(WebCore):
(WebCore::Document::styleSelectorChanged):
* dom/Document.h:
(Document):
* page/FrameView.cpp:
(WebCore::FrameView::layout):

LayoutTests:

Testing MediaQueryLists listeners related to viewport changes.

* fast/media/media-query-list-08-expected.txt: Added.
* fast/media/media-query-list-08.html: Added.

Skipping the new test in Mac and Qt due to an issue in its DumpRenderTree.

* platform/qt/Skipped:
* platform/mac/Skipped:

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

7 years agoUse explicit casts for size_t to unsigned conversion
eae@chromium.org [Wed, 18 Apr 2012 18:31:35 +0000 (18:31 +0000)]
Use explicit casts for size_t to unsigned conversion
https://bugs.webkit.org/show_bug.cgi?id=83602

Reviewed by Eric Seidel.

No new tests, no change in functinality.

Not all platforms have implicit casts from size_t to unsigned and we
can't add size_t versions of the operators to FractionalLayoutUnit for
all platforms as it would conflict with the unsigned versions of same.

Change support methods to take unsigned instead of size_t and use
explicit casts when multiplying or dividing a FractionalLayoutUnit with
a size_t and the other way around.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustForColumns):
* rendering/RenderFlexibleBox.cpp:
(WebCore::initialPackingOffset):
(WebCore::packingSpaceBetweenChildren):
(WebCore::initialLinePackingOffset):
(WebCore::linePackingSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::packFlexLines):
* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::layout):

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

7 years agoUnreviewed, GTK test_expectations update.
philn@webkit.org [Wed, 18 Apr 2012 18:31:06 +0000 (18:31 +0000)]
Unreviewed, GTK test_expectations update.

* platform/gtk/test_expectations.txt: Skip some failing tests and
mark 3 more frame flattening tests flaky.

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

7 years agoSource/WebCore: Web Inspector: [Chromium] Module's require injects scripts before...
pfeldman@chromium.org [Wed, 18 Apr 2012 18:14:58 +0000 (18:14 +0000)]
Source/WebCore: Web Inspector: [Chromium] Module's require injects scripts before the debug id is set to the context.
https://bugs.webkit.org/show_bug.cgi?id=84166

Re-applying r114497.

* bindings/v8/V8IsolatedContext.cpp:
(WebCore::setInjectedScriptContextDebugId):
(WebCore):
(WebCore::V8IsolatedContext::V8IsolatedContext):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluateInIsolatedWorld):
* bindings/v8/V8Proxy.h:
(V8Proxy):

LayoutTests: Unreviewed, rolling out r114506.
http://trac.webkit.org/changeset/114506
https://bugs.webkit.org/show_bug.cgi?id=84254

Seems to be making gtk's DumpRenderTree crash occasionally
(Requested by tomz on #webkit).

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

* platform/gtk/test_expectations.txt:

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

7 years agoUnreviewed, trying to fix QT build.
achicu@adobe.com [Wed, 18 Apr 2012 18:06:14 +0000 (18:06 +0000)]
Unreviewed, trying to fix QT build.

It was using a FilterEffectRenderer::prepare that changed to allocateBackingStoreIfNeeded in 114529.

* platform/graphics/texmap/TextureMapperImageBuffer.cpp:
(WebCore::BitmapTextureImageBuffer::applyFilters):

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

7 years ago[chromium] Unreviewed, rebaseline compositing tests after r114283.
enne@google.com [Wed, 18 Apr 2012 18:03:39 +0000 (18:03 +0000)]
[chromium] Unreviewed, rebaseline compositing tests after r114283.
https://bugs.webkit.org/show_bug.cgi?id=84083

* platform/chromium-linux/compositing/overflow/overflow-positioning-expected.png:
* platform/chromium-mac-leopard/compositing/overflow/overflow-positioning-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/overflow/overflow-positioning-expected.png:
* platform/chromium-mac/compositing/overflow/overflow-positioning-expected.png:
* platform/chromium-win/compositing/backing/no-backing-for-clip-expected.txt: Added.
* platform/chromium-win/compositing/backing/no-backing-for-clip-overlap-expected.txt: Added.
* platform/chromium-win/compositing/backing/no-backing-for-perspective-expected.txt: Added.
* platform/chromium-win/compositing/geometry/preserve-3d-switching-expected.txt:
* platform/chromium-win/compositing/overflow/overflow-positioning-expected.png:
* platform/chromium/test_expectations.txt:

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

7 years agoWeb Inspector: extract script navigator overlay logic into the scripts navigator...
pfeldman@chromium.org [Wed, 18 Apr 2012 18:01:53 +0000 (18:01 +0000)]
Web Inspector: extract script navigator overlay logic into the scripts navigator controller.
https://bugs.webkit.org/show_bug.cgi?id=84244

Reviewed by Vsevolod Vlasov.

Overlay logic is well separable from the scripts panel and does not belong there.
Extracting it into a separate class.

* inspector/front-end/ScriptsNavigator.js:
(WebInspector.ScriptsNavigatorController.prototype.wasShown):
(WebInspector.ScriptsNavigatorController.prototype._createNavigatorControlButton):
(WebInspector.ScriptsNavigatorController.prototype._escDownWhileNavigatorOverlayOpen):
(WebInspector.ScriptsNavigatorController.prototype._toggleNavigator):
(WebInspector.ScriptsNavigatorController.prototype._hidePinnedNavigator):
(WebInspector.ScriptsNavigatorController.prototype.set _pinNavigator):
(WebInspector.ScriptsNavigatorController.prototype.set showNavigatorOverlay):
(WebInspector.ScriptsNavigatorController.prototype.hideNavigatorOverlay):
(WebInspector.ScriptsNavigatorController.prototype._navigatorOverlayWasShown):
* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype.wasShown):
(WebInspector.ScriptsPanel.prototype._editorClosed):
(WebInspector.ScriptsPanel.prototype._editorSelected):
(WebInspector.ScriptsPanel.prototype._scriptSelected):

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

7 years agoUnreviewed, rolling out r114506.
tomz@codeaurora.org [Wed, 18 Apr 2012 18:01:17 +0000 (18:01 +0000)]
Unreviewed, rolling out r114506.
http://trac.webkit.org/changeset/114506
https://bugs.webkit.org/show_bug.cgi?id=84254

Seems to be making gtk's DumpRenderTree crash occasionally
(Requested by tomz on #webkit).

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

Source/WebKit/gtk:

* webkit/webkitwebsettings.cpp:
(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):
* webkit/webkitwebsettingsprivate.h:
* webkit/webkitwebview.cpp:
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Tools:

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):

LayoutTests:

* platform/gtk/test_expectations.txt:

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

7 years agoUnreviewed, rolling out r114497.
dimich@chromium.org [Wed, 18 Apr 2012 17:44:46 +0000 (17:44 +0000)]
Unreviewed, rolling out r114497.
http://trac.webkit.org/changeset/114497
https://bugs.webkit.org/show_bug.cgi?id=84253

Broke compile on Win, including stdio did not help (Requested
by dimich on #webkit).

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

* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::V8IsolatedContext):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluateInIsolatedWorld):
(WebCore::V8Proxy::setInjectedScriptContextDebugId):
(WebCore):
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

7 years ago[CSS Filters] Drop-shadow and blur can avoid using full source image
achicu@adobe.com [Wed, 18 Apr 2012 17:37:41 +0000 (17:37 +0000)]
[CSS Filters] Drop-shadow and blur can avoid using full source image
https://bugs.webkit.org/show_bug.cgi?id=81263

Reviewed by Dean Jackson.

Instead of using the full bounding box of the RenderLayer we now compute the exact rectangle that is needed to
compute filter inside the dirty rectangle on screen. That's easy to calculate by reversing the filter outsets.
Even if the element is completely offscreen, but its shadow is in the viewport, we can still compute the source
rectangle that needs to be drawn in order to update the shadow correctly.

No new tests, this change doesn't have visible results and the functionality should
already be covered by previous filter tests.

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::FilterEffectRenderer):
(WebCore::FilterEffectRenderer::build): Save the outsets of the filters, so that we can use them in computeSourceImageRectForDirtyRect.
(WebCore::FilterEffectRenderer::updateBackingStoreRect): Only allocate a new source image if the size of the source rectangle changed.
(WebCore::FilterEffectRenderer::allocateBackingStoreIfNeeded): There's no need to call clearIntermediateResults() in this function. We do that after
the filter is computed.
(WebCore::FilterEffectRenderer::computeSourceImageRectForDirtyRect):
(WebCore):
(WebCore::FilterEffectRendererHelper::prepareFilterEffect):
(WebCore::FilterEffectRendererHelper::beginFilterEffect):
* rendering/FilterEffectRenderer.h:
(FilterEffectRendererHelper):
(WebCore::FilterEffectRendererHelper::repaintRect):
(FilterEffectRenderer):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):

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

7 years ago[EFL][DRT] @font-face support fails on EFL
commit-queue@webkit.org [Wed, 18 Apr 2012 17:16:57 +0000 (17:16 +0000)]
[EFL][DRT] @font-face support fails on EFL
https://bugs.webkit.org/show_bug.cgi?id=83264

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

STORE_FONT_CUSTOM_PLATFORM_DATA was not defined for EFL.
Fixing that by removing a long standing FIXME with the intention
to turn the whitelist for this switch into a blacklist.

* loader/cache/CachedFont.cpp:

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

7 years agoreplaceUsingStringSearch: delay the creation of the replace string until needed
benjamin@webkit.org [Wed, 18 Apr 2012 17:07:23 +0000 (17:07 +0000)]
replaceUsingStringSearch: delay the creation of the replace string until needed
https://bugs.webkit.org/show_bug.cgi?id=83841

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-04-18
Reviewed by Geoffrey Garen.

We do not need to obtain the replaceValue until we have a match. By moving the intialization
of replaceValue when needed, we save a few instructions when there is no match.

* runtime/StringPrototype.cpp:
(JSC::replaceUsingRegExpSearch):
(JSC::replaceUsingStringSearch):
(JSC::stringProtoFuncReplace):

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

7 years agoConvert ShadowData and DropShadowFilterOperation to use IntPoint
leviw@chromium.org [Wed, 18 Apr 2012 17:05:11 +0000 (17:05 +0000)]
Convert ShadowData and DropShadowFilterOperation to use IntPoint
https://bugs.webkit.org/show_bug.cgi?id=84098

Reviewed by Eric Seidel.

Shadows do not flow with the page, so sub-pixel layout doesn't actually offer any benefit that
couldn't have been attained before that conversion. With that in mind, this patch reverts
drop shadow offsets to integers, but also cleans up the code by switching the x/y location pair
to be an IntPoint.

No new tests. No change in behavior.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
* css/SVGCSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applySVGProperty):
* page/animation/AnimationBase.cpp:
(WebCore::blendFunc):
(WebCore::shadowForBlending):
* platform/animation/AnimationUtilities.h:
(WebCore::blend): New blend function that operates on IntPoints.
(WebCore):
* platform/chromium/support/WebFilterOperations.cpp:
(WebKit::WebDropShadowFilterOperation):
* platform/graphics/filters/FilterOperation.cpp:
(WebCore::DropShadowFilterOperation::blend):
* platform/graphics/filters/FilterOperation.h:
(WebCore::DropShadowFilterOperation::clone):
(WebCore::DropShadowFilterOperation::x):
(WebCore::DropShadowFilterOperation::y):
(WebCore::DropShadowFilterOperation::location): Preserved the comment about lengths.
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::DropShadowFilterOperation):
(DropShadowFilterOperation):
* rendering/RenderBoxModelObject.cpp:
(WebCore::areaCastingShadowInHole): Reverted to integers since this operates on the IntRect from
a RoundedRect.
(WebCore::RenderBoxModelObject::paintBoxShadow): Reduced the complexity and unnecessary conversion
between LayoutUnits and integers by using all integers after we calculate the pixel-snapped
RoundedRect that we use for painting.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getShadowExtent):
(WebCore::RenderStyle::getShadowHorizontalExtent):
(WebCore::RenderStyle::getShadowVerticalExtent):
* rendering/style/ShadowData.cpp:
(WebCore::ShadowData::ShadowData):
(WebCore::ShadowData::operator==):
(WebCore::calculateShadowExtent):
(WebCore::ShadowData::adjustRectForShadow):
* rendering/style/ShadowData.h:
(WebCore::ShadowData::ShadowData):
(WebCore::ShadowData::x):
(WebCore::ShadowData::y):
(WebCore::ShadowData::location):
(ShadowData):

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

7 years ago[V8] Add an optional Isolate argument to wrap()
haraken@chromium.org [Wed, 18 Apr 2012 16:53:46 +0000 (16:53 +0000)]
[V8] Add an optional Isolate argument to wrap()
https://bugs.webkit.org/show_bug.cgi?id=84202

Reviewed by Nate Chapin.

The final objective is to pass Isolate around in V8 bindings.
This patch adds an optional Isolate argument to wrap().
After rewriting all wrap() callers so that they pass Isolate
to wrap(), I'll make the Isolate argument non-optional.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm: Modified as described above.
(GenerateHeader):
* bindings/v8/custom/V8DocumentCustom.cpp: Ditto.
(WebCore::toV8):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp: Ditto.
(WebCore::toV8):
* bindings/v8/custom/V8NodeCustom.cpp: Ditto.
(WebCore::toV8Slow):
* bindings/v8/custom/V8SVGDocumentCustom.cpp: Ditto.
(WebCore::toV8):
* dom/make_names.pl: Ditto.
(printWrapperFactoryCppFile):

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

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

7 years ago[CSS Filters] Do not use clipping rect when calculating the bounds of a layer
achicu@adobe.com [Wed, 18 Apr 2012 16:34:32 +0000 (16:34 +0000)]
[CSS Filters] Do not use clipping rect when calculating the bounds of a layer
https://bugs.webkit.org/show_bug.cgi?id=83960

Reviewed by Simon Fraser.

The local clip rect should not be used when calculating the bounds of a filter area. Otherwise
drop-shadow might not know about the pixels outside the clipping rectangle, even though the actual shadow might
be inside it.

No new tests added in this patch, but this patch fixes two existing tests that fail.
LayoutTests/css3/filters/filter-repaint-shadow-clipped.html
LayoutTests/css3/filters/filter-repaint-shadow-rotated.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents):
(WebCore::RenderLayer::calculateLayerBounds):
* rendering/RenderLayer.h:

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

7 years agoFollowup to "Call incrementStatsCounter directly"
pilgrim@chromium.org [Wed, 18 Apr 2012 16:29:20 +0000 (16:29 +0000)]
Followup to "Call incrementStatsCounter directly"
https://bugs.webkit.org/show_bug.cgi?id=83109

Reviewed by Kentaro Hara.

Now that incrementStatsCounter has been moved from
PlatformSupport.h to Platform.h, we need to be able to call it directly
from WebCore/bindings/v8/v8Proxy.h (for the INC_STATS macro). That
means we need a new StatsCounter class in WebCore/platform/ and an
implementation in
WebCore/platform/chromium/StatsCounterChromium.cpp. Other ports
are welcome to implement their own stats counters if they
wish. This pattern was based on the
HistogramSupport/HistogramSupportChromium classes.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/v8/V8Proxy.h:
* bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
(WebCore::V8DedicatedWorkerContext::postMessageCallback):
(WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):
* bindings/v8/custom/V8NotificationCenterCustom.cpp:
(WebCore::V8NotificationCenter::createHTMLNotificationCallback):
(WebCore::V8NotificationCenter::createNotificationCallback):
(WebCore::V8NotificationCenter::requestPermissionCallback):
* bindings/v8/custom/V8WorkerContextCustom.cpp:
(WebCore::V8WorkerContext::importScriptsCallback):
(WebCore::V8WorkerContext::setTimeoutCallback):
(WebCore::V8WorkerContext::setIntervalCallback):
* platform/StatsCounter.cpp: Added.
(WebCore):
(WebCore::StatsCounter::incrementStatsCounter):
* platform/StatsCounter.h: Added.
(WebCore):
(StatsCounter):
* platform/chromium/StatsCounterChromium.cpp: Added.
(WebCore):
(WebCore::StatsCounter::incrementStatsCounter):

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

7 years ago[Chromium] REGRESSION: Popup shrinks because of autocomplete
apavlov@chromium.org [Wed, 18 Apr 2012 16:25:40 +0000 (16:25 +0000)]
[Chromium] REGRESSION: Popup shrinks because of autocomplete
https://bugs.webkit.org/show_bug.cgi?id=84139
http://code.google.com/p/chromium/issues/detail?id=123432

Source/WebCore:

Do not update the window rect on the wrong client but instead return the popup widget's
new screen coordinates from the refresh() method.

Reviewed by Kent Tamura.

* platform/chromium/PopupContainer.cpp:
(WebCore::PopupContainer::refresh):
* platform/chromium/PopupContainer.h:
(PopupContainer):

Source/WebKit/chromium:

Do not use the PopupContainer's frameRect() to update the popup client's window rect,
since PopupContainer is always positioned at (0, 0) inside the client's window rect,
and the latter one is positioned relative to the screen origin.

Reviewed by Kent Tamura.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::refreshAutofillPopup):

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

7 years agoGC activity timer should be tied to allocation, not collection
mhahnenberg@apple.com [Wed, 18 Apr 2012 16:18:32 +0000 (16:18 +0000)]
GC activity timer should be tied to allocation, not collection
https://bugs.webkit.org/show_bug.cgi?id=83919

Reviewed by Geoffrey Garen.

* API/JSContextRef.cpp: Used the new didAbandonObjectGraph callback to indicate that now that we've
released a global object, we're abandoning a potentially large number of objects that JSC might want
to collect.
* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::tryAllocateSlowCase): Added the call to timer's willAllocate function to indicate
that we've hit a slow path and are allocating now, so schedule the timer.
* heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::collectAllGarbage): Removed the call to discardAllCompiledCode because it was causing us to
throw away too much code during our benchmarks (especially vp8, which is very large and thus has large
amounts of compiled code).
(JSC::Heap::collect): Added the new call to didCollect at the conclusion of a collection so that we
can cancel the timer if we no longer need to run a collection. Also added a check at the beginning of a
collection to see if we should throw away our compiled code. Currently this is set to happen about once
every minute.
* heap/Heap.h: Added field to keep track of the last time we threw away our compiled code.
* heap/MarkedAllocator.cpp:
(JSC::MarkedAllocator::allocateSlowCase): Added call to willAllocate on the allocation slow path, just like
in CopiedSpace.
* runtime/GCActivityCallback.cpp: Added default stubs for non-CF platforms.
(JSC::DefaultGCActivityCallback::willAllocate):
(JSC):
(JSC::DefaultGCActivityCallback::didCollect):
(JSC::DefaultGCActivityCallback::didAbandonObjectGraph):
* runtime/GCActivityCallback.h: Added new functions to make JSC's GC timer less arcane. This includes replacing
the operator () with willAllocate() and adding an explicit didCollect() to cancel the timer after a collection
occurs rather than relying on the way the timer is invoked to cancel itself. Also added a callback for
when somebody else (e.g. WebCore or the JSC API) to notify JSC that they have just abandoned an entire graph of
objects and that JSC might want to clean them up.
(JSC::GCActivityCallback::~GCActivityCallback):
(JSC::GCActivityCallback::willAllocate):
(JSC::GCActivityCallback::didCollect):
(JSC::GCActivityCallback::didAbandonObjectGraph):
(JSC::GCActivityCallback::synchronize):
(DefaultGCActivityCallback):
* runtime/GCActivityCallbackCF.cpp: Re-wired all the run loop stuff to implement the aforementioned functions.
We added a flag to check whether the timer was active because the call to CFRunLoopTimerSetNextFireDate actually
turned out to be quite expensive (although Instruments couldn't tell us this).
(DefaultGCActivityCallbackPlatformData):
(JSC):
(JSC::DefaultGCActivityCallbackPlatformData::timerDidFire):
(JSC::DefaultGCActivityCallback::commonConstructor):
(JSC::scheduleTimer):
(JSC::cancelTimer):
(JSC::DefaultGCActivityCallback::willAllocate):
(JSC::DefaultGCActivityCallback::didCollect):
(JSC::DefaultGCActivityCallback::didAbandonObjectGraph):

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

7 years agoASSERT when a layer with a foreground layer is in 'paint into ancestor' mode
simon.fraser@apple.com [Wed, 18 Apr 2012 16:17:04 +0000 (16:17 +0000)]
ASSERT when a layer with a foreground layer is in 'paint into ancestor' mode
https://bugs.webkit.org/show_bug.cgi?id=84221

Source/WebCore:

Reviewed by Dean Jackson.

When a RenderLayerBacking doesn't require its own backing store, and is
in "paintIntoCompositingAncestor" mode, we would assert when trying to
paint its m_foregroundLayer if it had one (because of a negative z-index child).

The fix is to set the 'drawsContent' state on the m_foregroundLayer
as well as m_graphicsLayer.

Test: compositing/backing/no-backing-foreground-layer.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateDrawsContent):

LayoutTests:

Reviewed by Dean Jackson.

New testcase.

* compositing/backing/no-backing-foreground-layer-expected.txt: Added.
* compositing/backing/no-backing-foreground-layer.html: Added.

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

7 years ago[CMake] Use jsc target instead of ONLY_BUILD_JAVASCRIPTCORE
commit-queue@webkit.org [Wed, 18 Apr 2012 16:14:03 +0000 (16:14 +0000)]
[CMake] Use jsc target instead of ONLY_BUILD_JAVASCRIPTCORE
https://bugs.webkit.org/show_bug.cgi?id=84229

CMake caches ONLY_BUILD_JAVASCRIPTCORE=1 and will reuse the setting for
subsequent builds, stopping WebCore from being built ever again.

Instead of trying to emulate a build target using command line options,
just build the existing jsc target directly.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-04-18
Reviewed by Rob Buis.

.:

* CMakeLists.txt:

Tools:

* Scripts/build-jsc:

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

7 years ago[GTK] r114021 triggered media flakyness
commit-queue@webkit.org [Wed, 18 Apr 2012 15:44:13 +0000 (15:44 +0000)]
[GTK] r114021 triggered media flakyness
https://bugs.webkit.org/show_bug.cgi?id=83874

Patch by Simon Pena <spena@igalia.com> on 2012-04-18
Reviewed by Philippe Normand.

Source/WebKit/gtk:

When the MediaPlaybackRequiresUserGesture setting was added, no gtk
API was implemented to access it.

This adds a property to gtk WebKit WebSettings, and connects it to
WebKit WebView, thus allowing clients to programmatically modify it.

* webkit/webkitwebsettings.cpp:
(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):
* webkit/webkitwebsettingsprivate.h:
* webkit/webkitwebview.cpp:
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Tools:

Now that there is gtk API to update the
MediaPlaybackRequiresUserGesture property, set it to false from the
DumpRenderTree tool when resetting defaults to consistent values.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(resetDefaultsToConsistentValues):

LayoutTests:

media/video-load-require-user-gesture.html and
media/video-play-require-user-gesture.html where enabling
MediaPlaybackRequiresUserGesture when run, so tests running
concurrently would fail -they would pass when run independently.

Since new API is added to ensure DumpRenderTree is able to reset
that setting, having media/video-load-require-user-gesture.html and
media/video-play-require-user-gesture.html no longer causes
flakiness.

* platform/gtk/test_expectations.txt: Unskip
media/video-load-require-user-gesture.html and
media/video-play-require-user-gesture.html

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

7 years agoWeb Inspector: DataGrid should use explicit root node
yurys@chromium.org [Wed, 18 Apr 2012 14:59:53 +0000 (14:59 +0000)]
Web Inspector: DataGrid should use explicit root node
https://bugs.webkit.org/show_bug.cgi?id=84240

DataGrid now has an explicit root node. All children are added/removed
to that node.

Reviewed by Pavel Feldman.

Source/WebCore:

* inspector/front-end/ApplicationCacheItemsView.js:
(WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
(WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
* inspector/front-end/CSSSelectorProfileView.js:
(WebInspector.CSSSelectorProfileView):
(WebInspector.CSSSelectorProfileView.prototype.rebuildGridItems):
(WebInspector.CSSSelectorProfileView.prototype.refreshData):
* inspector/front-end/CookieItemsView.js:
(WebInspector.SimpleCookiesTable):
(WebInspector.SimpleCookiesTable.prototype.setCookies):
* inspector/front-end/CookiesTable.js:
(WebInspector.CookiesTable):
(WebInspector.CookiesTable.prototype._rebuildTable):
* inspector/front-end/DOMStorageItemsView.js:
(WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries):
* inspector/front-end/DataGrid.js:
(WebInspector.DataGrid):
(WebInspector.DataGrid.createSortableDataGrid.sortDataGrid):
(WebInspector.DataGrid.createSortableDataGrid):
(WebInspector.DataGrid.prototype.setRootNode):
(WebInspector.DataGrid.prototype.rootNode):
(WebInspector.DataGrid.prototype.autoSizeColumns):
(WebInspector.DataGrid.prototype._enumerateChildren):
(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGrid.prototype._contextMenuInDataTable):
(WebInspector.DataGridNode.prototype.get revealed):
(WebInspector.DataGridNode.prototype.get depth):
(WebInspector.DataGridNode.prototype.appendChild):
(WebInspector.DataGridNode.prototype.insertChild):
(WebInspector.DataGridNode.prototype.removeChild):
(WebInspector.DataGridNode.prototype.removeChildren):
(WebInspector.DataGridNode.prototype.collapse):
(WebInspector.DataGridNode.prototype.expand):
(WebInspector.DataGridNode.prototype.reveal):
(WebInspector.DataGridNode.prototype.revealAndSelect):
(WebInspector.DataGridNode.prototype.traverseNextNode):
(WebInspector.DataGridNode.prototype.traversePreviousNode):
* inspector/front-end/HeapSnapshotDataGrids.js:
(WebInspector.HeapSnapshotSortableDataGrid):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.dispose):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.changeNameFilter):
(WebInspector.HeapSnapshotSortableDataGrid.prototype.updateVisibleNodes):
(WebInspector.HeapSnapshotSortableDataGrid.prototype._performSorting):
(WebInspector.HeapSnapshotContainmentDataGrid.prototype._defaultPopulateCount.100.expandRoute):
(WebInspector.HeapSnapshotContainmentDataGrid.prototype.setDataSource):
(WebInspector.HeapSnapshotContainmentDataGrid.prototype.sortingChanged):
(WebInspector.HeapSnapshotRetainmentDataGrid.prototype.reset):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype.populateChildren):
(WebInspector.HeapSnapshotDiffDataGrid.prototype.setBaseDataSource):
(WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren.baseAggregatesReceived.aggregatesReceived.addNodeIfNonZeroDiff):
(WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren.baseAggregatesReceived.aggregatesReceived):
(WebInspector.HeapSnapshotDiffDataGrid.prototype.populateChildren):
(WebInspector.HeapSnapshotDominatorsDataGrid.prototype._defaultPopulateCount.25.setDataSource):
(WebInspector.HeapSnapshotDominatorsDataGrid.prototype.sortingChanged):
* inspector/front-end/HeapSnapshotGridNodes.js:
(WebInspector.HeapSnapshotGenericObjectNode):
* inspector/front-end/HeapSnapshotView.js:
(WebInspector.HeapSnapshotView.prototype.performSearch):
(WebInspector.HeapSnapshotView.prototype.refreshVisibleData):
* inspector/front-end/IndexedDBViews.js:
(WebInspector.IDBDataView.prototype._createDataGrid):
(WebInspector.IDBDataView.prototype._updateData.callback):
(WebInspector.IDBDataView.prototype._updateData):
(WebInspector.IDBDataView.prototype.clear):
* inspector/front-end/NetworkPanel.js:
(WebInspector.NetworkLogView.prototype._createTable):
(WebInspector.NetworkLogView.prototype.refresh):
(WebInspector.NetworkLogView.prototype._reset):
* inspector/front-end/ProfileDataGridTree.js:
(WebInspector.ProfileDataGridNode.prototype.insertChild):
(WebInspector.ProfileDataGridNode.prototype.removeChild):
(WebInspector.ProfileDataGridNode.prototype.removeChildren):
* inspector/front-end/ProfileView.js:
(WebInspector.CPUProfileView.prototype.refresh):
* inspector/front-end/treeoutline.js:

LayoutTests:

* inspector/profiler/heap-snapshot-test.js:
(initialize_HeapSnapshotTest):
* inspector/storage-panel-dom-storage.html:

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

7 years agoLayout Test svg/transforms/transform-origin-css-property.xhtml is failing
schenney@chromium.org [Wed, 18 Apr 2012 14:55:39 +0000 (14:55 +0000)]
Layout Test svg/transforms/transform-origin-css-property.xhtml is failing
https://bugs.webkit.org/show_bug.cgi?id=84203

Unreviewed test expectation fix.

The svg/transforms/transform-origin-css-property.xhtml test has a
ref-test for it, so there should not be any image expectations. If the
test if failing, we need to look at why the ref test is not valid, or
why we differ.

The expectations file update here is just some cleanup for
https://bugs.webkit.org/show_bug.cgi?id=84230.

* platform/chromium-mac/svg/transforms/transform-origin-css-property-expected.png: Removed.
* platform/chromium-win/svg/transforms/transform-origin-css-property-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

7 years agoAdd PassThis=* to support the callbacks which requires to pass "this" value.
commit-queue@webkit.org [Wed, 18 Apr 2012 13:55:09 +0000 (13:55 +0000)]
Add PassThis=* to support the callbacks which requires to pass "this" value.
https://bugs.webkit.org/show_bug.cgi?id=84232

Patch by Vineet Chaudhary <rgf748@motorola.com> on 2012-04-18
Reviewed by Kentaro Hara.

Adding PassThisToCallback=XXX to attributes will be useful for the callbacks which requires to pass "this".
This will help to identify the type(XXX) of "this" value in codegenerator.

Tests: bindings/scripts/test/TestCallback.idl

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackImplementation): Modified codegenerator to support [PassThisToCallback]
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateCallbackImplementation): Ditto.
* bindings/scripts/IDLAttributes.txt: Added PassThisToCallback=*
* bindings/scripts/test/CPP/WebDOMTestCallback.cpp: Modofied results from run-bindings-tests.
(WebDOMTestCallback::callbackWithBoolean):
(WebDOMTestCallback::callbackRequiresThisToPass):
* bindings/scripts/test/CPP/WebDOMTestCallback.h: Ditto.
(WebDOMTestCallback):
* bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp: Ditto.
(webkit_dom_test_callback_callback_with_boolean):
(webkit_dom_test_callback_callback_requires_this_to_pass):
* bindings/scripts/test/GObject/WebKitDOMTestCallback.h: Ditto.
* bindings/scripts/test/JS/JSTestCallback.cpp: Ditto.
(WebCore::JSTestCallback::callbackWithBoolean):
(WebCore):
(WebCore::JSTestCallback::callbackRequiresThisToPass):
* bindings/scripts/test/JS/JSTestCallback.h: Ditto.
(JSTestCallback):
* bindings/scripts/test/ObjC/DOMTestCallback.h: Ditto.
* bindings/scripts/test/ObjC/DOMTestCallback.mm: Ditto.
(-[DOMTestCallback callbackWithBoolean:]):
(-[DOMTestCallback callbackRequiresThisToPass:thisClassParam:]):
* bindings/scripts/test/TestCallback.idl: Added test to verify generated code.
* bindings/scripts/test/V8/V8TestCallback.cpp: Ditto.
(WebCore::V8TestCallback::callbackWithBoolean):
(WebCore):
(WebCore::V8TestCallback::callbackRequiresThisToPass):
* bindings/scripts/test/V8/V8TestCallback.h: Ditto.
(V8TestCallback):

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

7 years agoNot reviewed: fixing Chromium win compilation.
pfeldman@chromium.org [Wed, 18 Apr 2012 13:52:49 +0000 (13:52 +0000)]
Not reviewed: fixing Chromium win compilation.

* bindings/v8/V8IsolatedContext.cpp:

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

7 years agoRemove unnecessary variable reassignment in CSSParser::parseImageSet().
macpherson@chromium.org [Wed, 18 Apr 2012 13:02:41 +0000 (13:02 +0000)]
Remove unnecessary variable reassignment in CSSParser::parseImageSet().
https://bugs.webkit.org/show_bug.cgi?id=84204

Reviewed by Kentaro Hara.

Code calls next and then current instead of reusing the result of next.

No new tests / no functionality changed.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseImageSet):

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

7 years agoWeb Inspector: Disabling Inspector causes build failure on Windows
commit-queue@webkit.org [Wed, 18 Apr 2012 12:26:33 +0000 (12:26 +0000)]
Web Inspector: Disabling Inspector causes build failure on Windows
https://bugs.webkit.org/show_bug.cgi?id=83557

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-04-18
Reviewed by Pavel Feldman.

The calls to inspector APIs are not put under ENABLE(INSPECTOR) guard.
This change brings all such API calls under the guard.

Source/WebKit/win:

* WebCoreSupport/WebInspectorClient.cpp:
* WebInspector.cpp:
* WebNodeHighlight.cpp:
(WebNodeHighlight::WebNodeHighlight):
(WebNodeHighlight::update):
* WebNodeHighlight.h:
(WebNodeHighlight):
* WebView.cpp:
(WebView::WebView):
(WebView::close):
(WebView::initWithFrame):
(WebView::inspector):
* WebView.h:
(WebView):

Tools:

* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::showWebInspector):
(WTR::LayoutTestController::closeWebInspector):
(WTR::LayoutTestController::evaluateInWebInspector):
(WTR::LayoutTestController::setJavaScriptProfilingEnabled):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):

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

7 years ago[BlackBerry] HTTP GET header has a "Cookie" when refreshing a page after cookies...
commit-queue@webkit.org [Wed, 18 Apr 2012 10:56:38 +0000 (10:56 +0000)]
[BlackBerry] HTTP GET header has a "Cookie" when refreshing a page after cookies have been cleared.
https://bugs.webkit.org/show_bug.cgi?id=84223

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-04-18
Reviewed by George Staikos.

.:

* ManualTests/blackberry/clear-cookie-refresh-result.php: Added.
* ManualTests/blackberry/clear-cookie-refresh.php: Added.

Source/WebCore:

Webkit uses the old ResourceRequest when refreshing. Its cookies' header isn't removed after clicking
"clear cookies" button. We need to set cookies for this request again.

We must click "clear button" to test, so have to write a manual test case.

Test: ManualTests/blackberry/clear-cookie-refresh.php

* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::ResourceRequest::initializePlatformRequest):

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

7 years agoWeb Inspector: [Chromium] Module's require injects scripts before the debug id is...
pfeldman@chromium.org [Wed, 18 Apr 2012 10:09:56 +0000 (10:09 +0000)]
Web Inspector: [Chromium] Module's require injects scripts before the debug id is set to the context.
https://bugs.webkit.org/show_bug.cgi?id=84166

Reviewed by Yury Semikhatsky.

V8IsolatedContext was getting debug id assigned post-construction. At the same time, it was compiling all
its module scripts within the constructor. As a result, scripts ended up in the main world's list.

* bindings/v8/V8IsolatedContext.cpp:
(WebCore::setInjectedScriptContextDebugId):
(WebCore):
(WebCore::V8IsolatedContext::V8IsolatedContext):
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::evaluateInIsolatedWorld):
* bindings/v8/V8Proxy.h:
(V8Proxy):

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

7 years ago[Qt][WK2] Minibrowser asserts on startup at QtViewportInteractionEngine::ensureConten...
commit-queue@webkit.org [Wed, 18 Apr 2012 10:04:24 +0000 (10:04 +0000)]
[Qt][WK2] Minibrowser asserts on startup at QtViewportInteractionEngine::ensureContentWithinViewportBoundary()
https://bugs.webkit.org/show_bug.cgi?id=84172

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-04-18
Reviewed by Simon Hausmann.

After the viewport computing refactor, ensureContentWithinViewportBoundary() can be called
with resumed page. QtViewportInteractionEngine::ensureContentWithinViewportBoundary()
functionality does not necessarily require the page to be suspended. It's the caller's context
that determines whether the page needs to be suspended, so it's the caller's responsibility
to enforce the ASSERT().
Remove the invalid ASSERT on m_suspendCount at QtViewportInteractionEngine::ensureContentWithinViewportBoundary()

* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::ensureContentWithinViewportBoundary):

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

7 years agoUnreviewed, update expectations
toyoshim@chromium.org [Wed, 18 Apr 2012 08:53:21 +0000 (08:53 +0000)]
Unreviewed, update expectations
https://bugs.webkit.org/show_bug.cgi?id=84230

* platform/chromium/test_expectations.txt:

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

7 years agoWeb Inspector: document.open removes the documentElement, but does not clear the...
pfeldman@chromium.org [Wed, 18 Apr 2012 08:49:28 +0000 (08:49 +0000)]
Web Inspector: document.open removes the documentElement, but does not clear the elements panel.
https://bugs.webkit.org/show_bug.cgi?id=84179

Reviewed by Yury Semikhatsky.

Source/WebCore:

Perform total update upon modifications of the document node.

Test: inspector/elements/delete-from-document.html

* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::didRemoveDOMNode):
* inspector/front-end/ElementsTreeOutline.js:

LayoutTests:

* http/tests/inspector/elements-test.js:
(initialize_ElementTest.InspectorTest.dumpElementsTree.print):
(initialize_ElementTest.InspectorTest.dumpElementsTree):
* inspector/elements/delete-from-document-expected.txt: Added.
* inspector/elements/delete-from-document.html: Added.

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

7 years agoSource/WebCore: [BlackBerry] Tab awareness for HTML5 concurrent audio
commit-queue@webkit.org [Wed, 18 Apr 2012 08:40:40 +0000 (08:40 +0000)]
Source/WebCore: [BlackBerry] Tab awareness for HTML5 concurrent audio
https://bugs.webkit.org/show_bug.cgi?id=82930
Support for concurrent HTML5 audio improvements being made in
the platform library, which need to be aware of tabs and tab
visibility. PR96004.

Patch by Max Feil <mfeil@rim.com> on 2012-04-18
Reviewed by George Staikos.

Test: media/audio-concurrent-supported.html

* platform/blackberry/PageClientBlackBerry.h:
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::showErrorDialog):
(WebCore::MediaPlayerPrivate::isTabVisible):
(WebCore):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):

Source/WebKit/blackberry: [BlackBerry] Tab awareness for HTML5 concurrent audio
https://bugs.webkit.org/show_bug.cgi?id=82930
Support for concurrent HTML5 audio improvements being made in
the platform library, which need to be aware of tabs and tab
visibility. PR96004.

Patch by Max Feil <mfeil@rim.com> on 2012-04-18
Reviewed by George Staikos.

* Api/WebPageClient.h:
* Api/WebPage_p.h:
(BlackBerry::WebKit::WebPagePrivate::isVisible):

LayoutTests: [BlackBerry] Tab awareness for HTML5 concurrent audio
https://bugs.webkit.org/show_bug.cgi?id=82930
Layout test for concurrent HTML5 audio. This is a simple test
to confirm that multiple audio elements can play at the same time.

Patch by Max Feil <mfeil@rim.com> on 2012-04-18
Reviewed by George Staikos.

* media/audio-concurrent-supported-expected.txt: Added.
* media/audio-concurrent-supported.html: Added.

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

7 years ago[Qt] Unreviewed gardening, skipping test that uses disabled feature SHADOW_DOM
kkristof@inf.u-szeged.hu [Wed, 18 Apr 2012 08:17:11 +0000 (08:17 +0000)]
[Qt] Unreviewed gardening, skipping test that uses disabled feature SHADOW_DOM

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

* platform/qt/Skipped: fast/dom/shadow/adopt-node-with-shadow-root.html

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

7 years ago[CG] ImageBuffer: check getPremultipliedImageData() error return
noel.gordon@gmail.com [Wed, 18 Apr 2012 08:05:43 +0000 (08:05 +0000)]
[CG] ImageBuffer: check getPremultipliedImageData() error return
https://bugs.webkit.org/show_bug.cgi?id=84022

Reviewed by Eric Seidel.

ImageBuffer::getPremultipliedImageData() can fail. toDataURL() should check for a
failure return, and return "data:," if so.

No new tests. Covered by existing toDataURL tests, in particular:
  canvas/philip/tests/toDataURL.jpeg.alpha.html

* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::toDataURL): Rename |arr| variable to premultipliedData and
return "data:," if premultipliedData is empty. Clean up whitespace and a comment.

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

7 years ago[GTK] atk/textChangedNotifications API test fails
mario@webkit.org [Wed, 18 Apr 2012 07:37:32 +0000 (07:37 +0000)]
[GTK] atk/textChangedNotifications API test fails
https://bugs.webkit.org/show_bug.cgi?id=84010

Unreviewed, unskipping test after bug being fixed by r114311.

* Scripts/run-gtk-tests:
(TestRunner): Unskip now passing test.

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

7 years ago[BlackBerry] Viewport metatag doesn't disable double-tap zoom
commit-queue@webkit.org [Wed, 18 Apr 2012 06:39:35 +0000 (06:39 +0000)]
[BlackBerry] Viewport metatag doesn't disable double-tap zoom
https://bugs.webkit.org/show_bug.cgi?id=84199

Patch by Jacky Jiang <zhajiang@rim.com> on 2012-04-17
Reviewed by George Staikos.

Source/WebKit/blackberry:

PR: 148279
When we set "user-scalable=no" in viewport meta-tag and change any
other WebSettings, the WebPage can turn to be scalable.
This is a regression of the change master_32/SHA:fa0f8ee9. In that
change, we used setUserScalable(webSettings->isUserScalable())
in WebPagePrivate::didChangeSettings which was incorrect for non-DRT
case, as webSettings->isUserScalable() would always return true by
default.
Create a new API WebPage::setUserScalable which will be used in
DumpRenderTree.cpp.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::setUserScalable):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
* Api/WebPage.h:

Tools:

Revert a part of the change master_32/SHA:fa0f8ee9 and use
WebPage::setUserScalable instead.

* DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::DumpRenderTree::resetToConsistentStateBeforeTesting):

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

7 years agoSkia OOM error when upscaling small subsets of images by large quantities
commit-queue@webkit.org [Wed, 18 Apr 2012 06:36:30 +0000 (06:36 +0000)]
Skia OOM error when upscaling small subsets of images by large quantities
https://bugs.webkit.org/show_bug.cgi?id=84225

Patch by Rachel Blum <groby@chromium.org> on 2012-04-17
Reviewed by David Levin.

Tested with manual tests.

* platform/graphics/skia/NativeImageSkia.cpp:
(WebCore::NativeImageSkia::shouldCacheResampling):

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

7 years agoUnreviewed, rebaseline of svg/W3C-SVG-1.1/masking-intro-01-f.svg .
toyoshim@chromium.org [Wed, 18 Apr 2012 05:54:26 +0000 (05:54 +0000)]
Unreviewed, rebaseline of svg/W3C-SVG-1.1/masking-intro-01-f.svg .

* platform/chromium-win-vista/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png:

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

7 years agoWebKitTestRunner needs textInputController
jer.noble@apple.com [Wed, 18 Apr 2012 05:47:45 +0000 (05:47 +0000)]
WebKitTestRunner needs textInputController
https://bugs.webkit.org/show_bug.cgi?id=42337

Update wk2 Skipped list to skip new failing test.

* platform/wk2/Skipped:

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

7 years ago[WK2] http/tests/navigation/anchor-frames-same-origin.html fails
jer.noble@apple.com [Wed, 18 Apr 2012 05:34:09 +0000 (05:34 +0000)]
[WK2] http/tests/navigation/anchor-frames-same-origin.html fails
https://bugs.webkit.org/show_bug.cgi?id=84227

Update wk2 Skipped list to skip new failing test.

* platform/wk2/Skipped:

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

7 years agoUnreviewed, rebaseline of svg/as-background-image/svg-as-background-6.html .
toyoshim@chromium.org [Wed, 18 Apr 2012 05:27:22 +0000 (05:27 +0000)]
Unreviewed, rebaseline of svg/as-background-image/svg-as-background-6.html .

* platform/chromium-linux/svg/as-background-image/svg-as-background-6-expected.png: Added.
* platform/chromium-mac-leopard/svg/as-background-image/svg-as-background-6-expected.png: Added.
* svg/as-background-image/svg-as-background-6-expected.txt: Renamed from LayoutTests/platform/efl/svg/as-background-image/svg-as-background-6-expected.txt.

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

7 years agoShadowRoot shouldn't be adopted by any Document.
morrita@google.com [Wed, 18 Apr 2012 04:52:47 +0000 (04:52 +0000)]
ShadowRoot shouldn't be adopted by any Document.
https://bugs.webkit.org/show_bug.cgi?id=84127

Reviewed by Dimitri Glazkov.

Source/WebCore:

ShadowRoot cannot cannot be removed from its host, which means
ShadowRoot cannot be adopted by any Document directly because the
adoptNode() tries to remove it from its parent but it doesn't make
sense for ShadowRoot.

This change adds a guard to check such a case.

Test: fast/dom/shadow/adopt-node-with-shadow-root.html

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

LayoutTests:

* fast/dom/shadow/adopt-node-with-shadow-root-expected.txt: Added.
* fast/dom/shadow/adopt-node-with-shadow-root.html: Added.

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

7 years agoREGRESSION (r114406-r114417): media/video-playing-and-pause.html failing on Lion...
jer.noble@apple.com [Wed, 18 Apr 2012 04:40:44 +0000 (04:40 +0000)]
REGRESSION (r114406-r114417): media/video-playing-and-pause.html failing on Lion Release (WebKit2 Tests)
https://bugs.webkit.org/show_bug.cgi?id=84226

Remove expected failing results ſtor media/video-playing-and-pause.html.

* platform/mac-wk2/media/video-playing-and-pause-expected.txt: Removed.

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

7 years agoUnreviewed, revert temporal expectation changeset (114248)
toyoshim@chromium.org [Wed, 18 Apr 2012 04:04:23 +0000 (04:04 +0000)]
Unreviewed, revert temporal expectation changeset (114248)
https://bugs.webkit.org/show_bug.cgi?id=84024

* platform/chromium/test_expectations.txt:

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

7 years agoDFG should not attempt to get rare case counts for op_mod on ARM
fpizlo@apple.com [Wed, 18 Apr 2012 03:54:34 +0000 (03:54 +0000)]
DFG should not attempt to get rare case counts for op_mod on ARM
https://bugs.webkit.org/show_bug.cgi?id=84218

Reviewed by Geoff Garen.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::makeSafe):
* dfg/DFGCommon.h:
(JSC::DFG::isX86):
(DFG):

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

7 years agoBumpPointerAllocator assumes page size is less than MINIMUM_BUMP_POOL_SIZE
commit-queue@webkit.org [Wed, 18 Apr 2012 03:42:43 +0000 (03:42 +0000)]
BumpPointerAllocator assumes page size is less than MINIMUM_BUMP_POOL_SIZE
https://bugs.webkit.org/show_bug.cgi?id=80912

Patch by Myles Maxfield <mmaxfield@google.com> on 2012-04-17
Reviewed by Hajime Morita.

* wtf/BumpPointerAllocator.h:
(WTF::BumpPointerPool::create):

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

7 years ago[Mac] USPS Shipping label prints without barcode
ap@apple.com [Wed, 18 Apr 2012 03:34:06 +0000 (03:34 +0000)]
[Mac] USPS Shipping label prints without barcode
https://bugs.webkit.org/show_bug.cgi?id=84099
<rdar://problem/11133877>

Reviewed by Sam Weinig.

Use PDFDocuemnt instead of CGPDFDocument when printing PDFs, because PDFKit knows
how to draw PDF buttons, and CG does not.

* Shared/mac/PDFKitImports.h: Added.
* Shared/mac/PDFKitImports.mm: Added.
* UIProcess/API/mac/WKPrintingView.mm:
Moved code for dealing with dynamically loaded PDFKit from WKPrintingView, as we
now also need it elsewhere.

* WebKit2.xcodeproj/project.pbxproj: Added
* WebProcess/Plugins/PDF/BuiltInPDFView.cpp: Rebamed to .mm.

* WebProcess/Plugins/PDF/BuiltInPDFView.h: Changed m_pdfDocument to PDFDocument.

* WebProcess/Plugins/PDF/BuiltInPDFView.mm: Copied from Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.cpp.
(WebKit::BuiltInPDFView::pdfDocumentDidLoad):
(WebKit::BuiltInPDFView::calculateSizes):
(WebKit::BuiltInPDFView::paintContent):
Changed m_pdfDocument to PDFDocument, and updated for the changes. We still use
CGPDF when drawing to screen though, because that doesn't affect USPS.

* WebProcess/Plugins/Plugin.h: (WebKit::Plugin::pdfDocumentForPrinting): Updated
the type, and changed ifsed from CG to MAC, as we're now fully dependent on Cocoa.

* WebProcess/Plugins/PluginView.h: (WebKit::PluginView::pdfDocumentForPrinting):
Ditto.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::pdfDocumentForPrintingFrame):
(WebKit::WebPage::beginPrinting):
(WebKit::WebPage::computePagesForPrinting):
(WebKit::WebPage::drawRectToPDF):
(WebKit::WebPage::drawPagesToPDF):
* WebProcess/WebPage/WebPage.h:
Moved PDF document printing code to WebPageMac.mm, as it's now Objective C.

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::computePagesForPrintingPDFDocument):
(WebKit::roundCGFloat):
(WebKit::drawPDFPage): While moving, also fixed a logic error in calculating the box
(it used to intersect with an empty box).
(WebKit::WebPage::drawRectToPDFFromPDFDocument):
(WebKit::WebPage::drawPagesToPDFFromPDFDocument):

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

7 years ago[chromium] Ensure RateLimiter waits for Swapbuffers completion
commit-queue@webkit.org [Wed, 18 Apr 2012 02:57:28 +0000 (02:57 +0000)]
[chromium] Ensure RateLimiter waits for Swapbuffers completion
https://bugs.webkit.org/show_bug.cgi?id=83649

Patch by John Bauman <jbauman@chromium.org> on 2012-04-17
Reviewed by James Robinson.

We were waiting only on the canvas context, which with the new GPU
scheduling was causing the RateLimiter not to ratelimit enough. We
need to insert no-op commands in the compositor context, so that we'll
wait for the canvas context and SwapBuffers as well.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::doNoOp):
(WebCore):
* platform/graphics/chromium/LayerRendererChromium.h:
(LayerRendererChromium):
* platform/graphics/chromium/RateLimiter.cpp:
(WebCore::RateLimiter::create):
(WebCore::RateLimiter::RateLimiter):
(WebCore::RateLimiter::rateLimitContext):
* platform/graphics/chromium/RateLimiter.h:
(RateLimiterClient):
(WebCore):
(RateLimiter):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::startRateLimiter):
(WebCore::CCLayerTreeHost::rateLimit):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::forceNoOpCommand):
(WebCore):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::forceNoOpCommand):
(WebCore):
(WebCore::CCThreadProxy::forceNoOpCommandOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):

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

7 years agoCSSValuePool: Made identifier value cache a fixed-size array.
kling@webkit.org [Wed, 18 Apr 2012 02:49:54 +0000 (02:49 +0000)]
CSSValuePool: Made identifier value cache a fixed-size array.
<http://webkit.org/b/84219>

Reviewed by Antti Koivisto.

Change the identifier CSSPrimitiveValue cache in CSSValuePool from a HashMap to a
fixed-size array of RefPtr<CSSPrimitiveValue>s.

We have ~700 values total, so this is quite space efficient now that the CSSValuePool
is globally shared. More importantly it avoids a hash lookup every time we need an
identifier value.

* css/CSSValuePool.h:
* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createIdentifierValue):

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

7 years ago[Chromium] Clean up texture ids on the impl side when losing the context
piman@chromium.org [Wed, 18 Apr 2012 00:52:40 +0000 (00:52 +0000)]
[Chromium] Clean up texture ids on the impl side when losing the context
https://bugs.webkit.org/show_bug.cgi?id=84122

Reviewed by James Robinson.

Tested by CCLayerTreeHostImplTest.dontUseOldResourcesAfterLostContext.

* platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
(WebCore::CCTextureLayerImpl::didLoseContext):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::didLoseContext):
(WebCore):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:
(CCTiledLayerImpl):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::didLoseContext):
(WebCore):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(CCVideoLayerImpl):

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

7 years agoChange RenderThemeChromiumSkia paint methods to use pixel snapping
eae@chromium.org [Wed, 18 Apr 2012 00:31:32 +0000 (00:31 +0000)]
Change RenderThemeChromiumSkia paint methods to use pixel snapping
https://bugs.webkit.org/show_bug.cgi?id=84175

Reviewed by Eric Seidel.

No new tests, no change in functionality.

Change RenderThemeChromiumSkia to use subpixel types and pixel snap
values just before painting.

* rendering/RenderThemeChromiumSkia.cpp:
(WebCore::RenderThemeChromiumSkia::convertToPaintingRect):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
(WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
* rendering/RenderThemeChromiumSkia.h:

 2012-04-17  Levi Weintraub  <leviw@chromium.org>

Clean up outstanding LayoutUnit misuse in WebCore
https://bugs.webkit.org/show_bug.cgi?id=84209

Reviewed by Eric Seidel.

Small changes to a handful of files to prepare trunk for FractionalLayoutUnits.
For more details, see https://trac.webkit.org/wiki/LayoutUnit

No new tests. No change in behavior.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): minimumValueForLength preserves
sub-pixel precision, so we should avoid unnecessarily using integers.
* platform/graphics/FractionalLayoutPoint.h:
(WebCore::FractionalLayoutPoint::FractionalLayoutPoint): Adding an explicit constructor from
FractionalLayoutSizes. This mirrors a method in IntPoint.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintBorder): The rects that change come from roundedRects,
which are already pixel-snapped.
* rendering/RenderBoxModelObject.h: Removing a comment that is no longer applicable.
* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth): Since we layout tables using integers, we
need to explicitly calculate the width to be integral as well to avoid pushing the next element
over by a pixel that we won't later paint with our own box decorations.
* rendering/RenderText.h:
(RenderText): Correcting an unfortunate mismatch between in the return value of linesBoundingBox
between the header and implementation.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getRoundedBorderFor): We were incorrectly not using the snapped border
rect to pass to calcRadiiFor (which takes an IntRect). Correcting this.

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

7 years ago 2012-04-17 Levi Weintraub <leviw@chromium.org>
leviw@chromium.org [Wed, 18 Apr 2012 00:30:04 +0000 (00:30 +0000)]
 2012-04-17  Levi Weintraub  <leviw@chromium.org>

Clean up outstanding LayoutUnit misuse in WebCore
https://bugs.webkit.org/show_bug.cgi?id=84209

Reviewed by Eric Seidel.

Small changes to a handful of files to prepare trunk for FractionalLayoutUnits.
For more details, see https://trac.webkit.org/wiki/LayoutUnit

No new tests. No change in behavior.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): minimumValueForLength preserves
sub-pixel precision, so we should avoid unnecessarily using integers.
* platform/graphics/FractionalLayoutPoint.h:
(WebCore::FractionalLayoutPoint::FractionalLayoutPoint): Adding an explicit constructor from
FractionalLayoutSizes. This mirrors a method in IntPoint.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintBorder): The rects that change come from roundedRects,
which are already pixel-snapped.
* rendering/RenderBoxModelObject.h: Removing a comment that is no longer applicable.
* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth): Since we layout tables using integers, we
need to explicitly calculate the width to be integral as well to avoid pushing the next element
over by a pixel that we won't later paint with our own box decorations.
* rendering/RenderText.h:
(RenderText): Correcting an unfortunate mismatch between in the return value of linesBoundingBox
between the header and implementation.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::getRoundedBorderFor): We were incorrectly not using the snapped border
rect to pass to calcRadiiFor (which takes an IntRect). Correcting this.

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

7 years agobuild-webkit: make ninja work with chromium linux
dpranke@chromium.org [Wed, 18 Apr 2012 00:29:24 +0000 (00:29 +0000)]
build-webkit: make ninja work with chromium linux
https://bugs.webkit.org/show_bug.cgi?id=84213

Reviewed by Eric Seidel.

Fix typos so that build-webkit will use ninja to
build chromium if a build.ninja file exists and is up-to-date.

* Scripts/webkitdirs.pm:
(determineIsChromiumNinja):

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

7 years agoEnsure CSSParser member variables are initialized.
macpherson@chromium.org [Wed, 18 Apr 2012 00:24:06 +0000 (00:24 +0000)]
Ensure CSSParser member variables are initialized.
https://bugs.webkit.org/show_bug.cgi?id=84205

Reviewed by Andreas Kling.

No new tests / code cleanup only.

* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):

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

7 years agoRegression(114172): Use after free in CustomFilterProgram::notifyClients
achicu@adobe.com [Wed, 18 Apr 2012 00:19:40 +0000 (00:19 +0000)]
Regression(114172): Use after free in CustomFilterProgram::notifyClients
https://bugs.webkit.org/show_bug.cgi?id=84000

Reviewed by Dean Jackson.

The function returned early and the shaders didn't have a chance to be saved. Moving
those two lines before the return false just to make sure that FilterEffectRenderer never adds
itself as a client for a shader without keeping track of that.

No new tests. The problem reproduces with existing tests.
css3/filters/custom/custom-filter-property-computed-style.html
css3/filters/custom/effect-custom-combined-missing.html

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):

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

7 years agoRe-enable W3C canPlayType() tests on Chromium
commit-queue@webkit.org [Tue, 17 Apr 2012 23:44:22 +0000 (23:44 +0000)]
Re-enable W3C canPlayType() tests on Chromium
https://bugs.webkit.org/show_bug.cgi?id=84164

They use the new expectations override from changeset 112937 and pass after http://crrev.com/132463.

Unreviewed, layout test expectations update.

Patch by David Dorwin <ddorwin@chromium.org> on 2012-04-17

* platform/chromium/test_expectations.txt:

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

7 years agoREGRESSION (r114206): fast/harness/use-page-cache.html tests failing on Lion Debug...
jer.noble@apple.com [Tue, 17 Apr 2012 23:26:58 +0000 (23:26 +0000)]
REGRESSION (r114206): fast/harness/use-page-cache.html tests failing on Lion Debug (WebKit2 Tests)
https://bugs.webkit.org/show_bug.cgi?id=84206

Remove expected failing test results for fast/harness/use-page-cache.html.

* platform/mac-wk2/fast/harness/use-page-cache-expected.txt: Removed.

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

7 years agoIndexedDB chooses wrong record on PREV_NO_DUPLICATE index cursor
commit-queue@webkit.org [Tue, 17 Apr 2012 23:26:02 +0000 (23:26 +0000)]
IndexedDB chooses wrong record on PREV_NO_DUPLICATE index cursor
https://bugs.webkit.org/show_bug.cgi?id=60746

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

Source/WebCore:

When iterating backwards with PREV_NO_DUPLICATE, keep walking past
the 'prev' key until it changes, then walk forward one time. This
covers the object store and index cases.

Test: storage/indexeddb/mozilla/index-prev-no-duplicate.html

* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore):

LayoutTests:

Test for PREV_NO_DUPLICATE.

* storage/indexeddb/cursor-prev-no-duplicate.html: Added.
* storage/indexeddb/cursor-prev-no-duplicate.txt: Added.
* storage/indexeddb/mozilla/index-prev-no-duplicate-expected.txt: Added.
* storage/indexeddb/mozilla/index-prev-no-duplicate.html: Added.
* storage/indexeddb/resources/cursor-prev-no-duplicate.js: Added.
(prepareDatabase.openreq.onsuccess.verreq.onsuccess):
(prepareDatabase.openreq.onsuccess):
(prepareDatabase):
(populateStore):
(runAllTests):
(waitFor):
(complete.fireCallback):
(complete):
(testFarRangeCursor):
(makeOpenKeyCursor):
(runTest.trans.oncomplete):
(runTest.testFunction):
(runTest):

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

7 years agoUnreviewed, unskip some WebSocket worker tests that should not be skipped.
yutak@chromium.org [Tue, 17 Apr 2012 23:20:45 +0000 (23:20 +0000)]
Unreviewed, unskip some WebSocket worker tests that should not be skipped.

* platform/chromium/test_expectations.txt:

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

7 years agoneed to rebaseline after skia 3695 lands
reed@google.com [Tue, 17 Apr 2012 23:17:49 +0000 (23:17 +0000)]
need to rebaseline after skia 3695 lands
https://bugs.webkit.org/show_bug.cgi?id=84184

Unreviewed. expectations change only.

* platform/chromium/test_expectations.txt:

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

7 years agoCaret is not rendered properly inside an input element with text-indent
yi.4.shen@nokia.com [Tue, 17 Apr 2012 23:10:21 +0000 (23:10 +0000)]
Caret is not rendered properly inside an input element with text-indent
https://bugs.webkit.org/show_bug.cgi?id=82688

Reviewed by Ryosuke Niwa.

For an empty input element, there is no RenderText. Instead, RenderBlock::localCaretRect provides
the caret position for rendering the caret in the empty input element. To get correct caret rect,
textIndentOffset() should be used to adjust the caret's position.

Source/WebCore:

Test: editing/style/text-indent.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::localCaretRect):

LayoutTests:

* editing/style/text-indent-expected.txt: Added.
* editing/style/text-indent.html: Added.

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

7 years agoAdd caching to the flakiness dashboard json files
ojan@chromium.org [Tue, 17 Apr 2012 23:08:05 +0000 (23:08 +0000)]
Add caching to the flakiness dashboard json files
https://bugs.webkit.org/show_bug.cgi?id=84198

Reviewed by Dirk Pranke.

* TestResultServer/handlers/testfilehandler.py:
(GetFile._get_file_list):
(GetFile._get_file_content):
(GetFile._get_file_content_from_key):
(GetFile._get_test_list_json):
(GetFile._serve_json):
Add a Last-Modified header and handle If-Modified-Since headers.
(GetFile.get):

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

7 years agoAttempt to fix Windows build.
fpizlo@apple.com [Tue, 17 Apr 2012 23:03:40 +0000 (23:03 +0000)]
Attempt to fix Windows build.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

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

7 years ago[MutationObservers] enable V8RecursionScope debug ASSERT()
rafaelw@chromium.org [Tue, 17 Apr 2012 23:02:44 +0000 (23:02 +0000)]
[MutationObservers] enable V8RecursionScope debug ASSERT()
https://bugs.webkit.org/show_bug.cgi?id=84094

Reviewed by Ojan Vafai.

This patch enables the ASSERT() which enforces usage of
V8RecursionScope.

* src/WebKit.cpp:
(WebKit::assertV8RecursionScope):

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

7 years agoIt should be possible to create an inheritorID for the global this object without...
fpizlo@apple.com [Tue, 17 Apr 2012 23:01:14 +0000 (23:01 +0000)]
It should be possible to create an inheritorID for the global this object without crashing
https://bugs.webkit.org/show_bug.cgi?id=84200
<rdar://problem/11251082>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

* runtime/JSGlobalThis.cpp:
(JSC::JSGlobalThis::setUnwrappedObject):
* runtime/JSGlobalThis.h:
(JSC::JSGlobalThis::unwrappedObject):
(JSGlobalThis):
* runtime/JSObject.cpp:
(JSC::JSObject::createInheritorID):
* runtime/JSObject.h:
(JSObject):
(JSC::JSObject::resetInheritorID):

Source/WebCore:

No new tests, because the circumstances necessary to make this happen are rather hairy.

* bindings/js/JSDOMWindowShell.h:
(WebCore::JSDOMWindowShell::window):
(WebCore::JSDOMWindowShell::setWindow):

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

7 years agoMake CSSParser::parseValue()'s handling of CSSPropertyCursor more obviously correct.
macpherson@chromium.org [Tue, 17 Apr 2012 22:56:23 +0000 (22:56 +0000)]
Make CSSParser::parseValue()'s handling of CSSPropertyCursor more obviously correct.
https://bugs.webkit.org/show_bug.cgi?id=83544

Reviewed by Kentaro Hara.

No new tests / code cleanup only.

The code as it stands appears to be correct, but static analysis was concerned that value could become null.
This patch adds a null check and ASSERT_NOT_REACHED() to make the code more obviously correct.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):

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

7 years ago[chromium] Fix gyp for WebFilterOperation.h and WebFilterOperations.h
danakj@chromium.org [Tue, 17 Apr 2012 22:48:21 +0000 (22:48 +0000)]
[chromium] Fix gyp for WebFilterOperation.h and WebFilterOperations.h
https://bugs.webkit.org/show_bug.cgi?id=84182

Reviewed by James Robinson.

Source/Platform:

* Platform.gypi:

Source/WebKit/chromium:

* WebKit.gyp:

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

7 years agoSource/WebKit2: Need a client callback for when the user tires to interact with an...
andersca@apple.com [Tue, 17 Apr 2012 22:43:44 +0000 (22:43 +0000)]
Source/WebKit2: Need a client callback for when the user tires to interact with an already unresponsive page
https://bugs.webkit.org/show_bug.cgi?id=84201
<rdar://problem/11140862>

Reviewed by Andreas Kling.

Add a interactionOccurredWhileProcessUnresponsive callback that's called when the unresponsiveness timer
fires while it's already unresponsive.

* UIProcess/API/C/WKPage.h:
* UIProcess/ResponsivenessTimer.cpp:
(WebKit):
(WebKit::ResponsivenessTimer::timerFired):
(WebKit::ResponsivenessTimer::start):
* UIProcess/ResponsivenessTimer.h:
(Client):
* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::processDidBecomeUnresponsive):
(WebKit):
(WebKit::WebLoaderClient::interactionOccurredWhileProcessUnresponsive):
* UIProcess/WebLoaderClient.h:
(WebLoaderClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::interactionOccurredWhileProcessUnresponsive):
(WebKit):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::interactionOccurredWhileUnresponsive):
(WebKit):
* UIProcess/WebProcessProxy.h:
(WebProcessProxy):

Tools: Need a client callback for when the user tries to interact with an already unresponsive page
https://bugs.webkit.org/show_bug.cgi?id=84201
<rdar://problem/11140862>

Reviewed by Andreas Kling.

Add new client functions.

* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController awakeFromNib]):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):

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

7 years ago[Chromium] Add TextureUploader which allows us to use persistent GC3D state for textu...
commit-queue@webkit.org [Tue, 17 Apr 2012 22:42:11 +0000 (22:42 +0000)]
[Chromium] Add TextureUploader which allows us to use persistent GC3D state for texture uploads.
https://bugs.webkit.org/show_bug.cgi?id=83972

Patch by David Reveman <reveman@chromium.org> on 2012-04-17
Reviewed by James Robinson.

Source/WebCore:

Add TextureUploader class that allows us to add persistent GC3D state to the upload machinery.

* WebCore.gypi:
* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::initializeSharedObjects):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore::LayerRendererChromium::textureUploader):
(LayerRendererChromium):
* platform/graphics/chromium/TextureUploader.cpp: Added.
(WebCore):
(WebCore::AcceleratedTextureUploader::AcceleratedTextureUploader):
(WebCore::AcceleratedTextureUploader::~AcceleratedTextureUploader):
(WebCore::AcceleratedTextureUploader::uploadTexture):
* platform/graphics/chromium/TextureUploader.h: Added.
(WebCore):
(TextureUploader):
(WebCore::TextureUploader::~TextureUploader):
(AcceleratedTextureUploader):
(WebCore::AcceleratedTextureUploader::create):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::doCommit):
* platform/graphics/chromium/cc/CCTextureUpdater.cpp:
(WebCore::CCTextureUpdater::update):
* platform/graphics/chromium/cc/CCTextureUpdater.h:
(WebCore):
(CCTextureUpdater):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):

Source/WebKit/chromium:

* tests/CCTiledLayerTestCommon.h:
(FakeTextureUploader):
(WebKitTests::FakeTextureUploader::uploadTexture):
(WebKitTests):
* tests/Canvas2DLayerChromiumTest.cpp:
* tests/TiledLayerChromiumTest.cpp:
(WTF::TEST):

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

7 years ago[Chromium] Mark test failing IMAGE: svg/transforms/transform-origin-css-property...
scheib@chromium.org [Tue, 17 Apr 2012 22:37:28 +0000 (22:37 +0000)]
[Chromium] Mark test failing IMAGE: svg/transforms/transform-origin-css-property.xhtml

Unreviewed.

* platform/chromium/test_expectations.txt:

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

7 years agoClean up CSSParser::parseFillRepeat().
macpherson@chromium.org [Tue, 17 Apr 2012 22:16:55 +0000 (22:16 +0000)]
Clean up CSSParser::parseFillRepeat().
https://bugs.webkit.org/show_bug.cgi?id=83547

Reviewed by Kentaro Hara.

Removed multiple unnecessary calls to m_valueList->current().
Restructured logic for parsing second value to make it clearer.

No new tests / code cleanup only.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFillRepeat):

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

7 years agonrwt: handle stopping layout test helper after a ctrl-c cleanly on the chromium port
dpranke@chromium.org [Tue, 17 Apr 2012 22:09:26 +0000 (22:09 +0000)]
nrwt: handle stopping layout test helper after a ctrl-c cleanly on the chromium port
https://bugs.webkit.org/show_bug.cgi?id=84190

Reviewed by Ojan Vafai.

LayoutTestHelper would exit when the user typed ctrl-c, but we
would attempt to write to it to shut it down, generating an
IOError.

* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.stop_helper):

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

7 years agorename --experimental-fully-parallel
dpranke@chromium.org [Tue, 17 Apr 2012 22:04:30 +0000 (22:04 +0000)]
rename --experimental-fully-parallel
https://bugs.webkit.org/show_bug.cgi?id=84188

Reviewed by Ojan Vafai.

I thought this was done long ago; rename
--experimental-fully-parallel to just --fully-parallel and
remove the --no- switch that AFAIK no one uses.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._run_tests):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):

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

7 years ago[V8] Pass Isolate to toV8Slow()
haraken@chromium.org [Tue, 17 Apr 2012 22:03:45 +0000 (22:03 +0000)]
[V8] Pass Isolate to toV8Slow()
https://bugs.webkit.org/show_bug.cgi?id=84173

Reviewed by Nate Chapin.

The final objective is to pass Isolate around in V8 bindings.
This patch passes the Isolate to toV8Slow().

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
* bindings/v8/custom/V8NodeCustom.cpp:
(WebCore::toV8Slow):

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

7 years agoFix the ACCELERATED_COMPOSITING code to not expose RenderLayer outside rendering
jchaffraix@webkit.org [Tue, 17 Apr 2012 21:51:22 +0000 (21:51 +0000)]
Fix the ACCELERATED_COMPOSITING code to not expose RenderLayer outside rendering
https://bugs.webkit.org/show_bug.cgi?id=83816

Reviewed by James Robinson.

No change in behavior expected.

This code adds several functions on RenderBoxModelObject to forward
to the associated layer. This removes the RenderLayer dependencies
at the call sites.

Currently only RenderBoxModelObject can be hardware accelerated as
we need a RenderLayer, this looks like the best place to put those
new functions.

* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::contentChanged):
(WebCore::RenderBoxModelObject::hasAcceleratedCompositing):
(WebCore::RenderBoxModelObject::startTransition):
(WebCore::RenderBoxModelObject::transitionPaused):
(WebCore::RenderBoxModelObject::transitionFinished):
(WebCore::RenderBoxModelObject::startAnimation):
(WebCore::RenderBoxModelObject::animationPaused):
(WebCore::RenderBoxModelObject::animationFinished):
(WebCore::RenderBoxModelObject::suspendAnimations):
* rendering/RenderBoxModelObject.h:
Added the previous functions to hide the layer need.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::hasAcceleratedCompositing):
* rendering/RenderLayer.h:
Removed the previous method as it was superseeded by the
one on RenderBoxModelObject. Also moved the ContentChangeType
enumaration.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::contentChanged):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
Updated after the ContentChangeType enumaration move.

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::reset):
(WebCore::HTMLCanvasElement::paintsIntoCanvasBuffer):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::didDraw):
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::markContextChanged):
(WebCore::WebGLRenderingContext::reshape):
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::freezeAtTime):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::startAnimation):
(WebCore::ImplicitAnimation::pauseAnimation):
(WebCore::ImplicitAnimation::endAnimation):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::startAnimation):
(WebCore::KeyframeAnimation::pauseAnimation):
(WebCore::KeyframeAnimation::endAnimation):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::imageChanged):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageDimensionsChanged):
(WebCore::RenderImage::notifyFinished):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::updatePlayer):
Updated all those call sites to use the new functions. Also
removed unneeded RenderLayer.h include as we went.

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

7 years agoDFG and LLInt should not clobber the frame pointer on ARMv7
fpizlo@apple.com [Tue, 17 Apr 2012 21:41:17 +0000 (21:41 +0000)]
DFG and LLInt should not clobber the frame pointer on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=84185
<rdar://problem/10767252>

Reviewed by Gavin Barraclough.

Changed LLInt to use a different register. Changed DFG to use one fewer
registers. We should revisit this and switch the DFG to use a different
register instead of r7, but we can do that in a subsequent step since
the performance effect is tiny.

* dfg/DFGGPRInfo.h:
(GPRInfo):
(JSC::DFG::GPRInfo::toRegister):
(JSC::DFG::GPRInfo::toIndex):
* offlineasm/armv7.rb:

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

7 years ago-webkit-mask-box-image does not draw when layer tree flattening is enabled
aestes@apple.com [Tue, 17 Apr 2012 21:32:37 +0000 (21:32 +0000)]
-webkit-mask-box-image does not draw when layer tree flattening is enabled
https://bugs.webkit.org/show_bug.cgi?id=84111

Reviewed by Simon Fraser.

No new tests since taking pixel test results with
PaintBehaviorFlattenCompositingLayers set is not currently supported.
<https://bugs.webkit.org/show_bug.cgi?id=84110> tracks fixing this.

When painting mask images, we should take the non-composited path if
layers are being flattened.

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintMask):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintMaskImages):

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

7 years agoRollout r114404 as it broke a couple of chromium builds.
eae@chromium.org [Tue, 17 Apr 2012 20:56:12 +0000 (20:56 +0000)]
Rollout r114404 as it broke a couple of chromium builds.

* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::isInBounds):
(WebCore):

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

7 years ago`localStorage.setItem` can overwrite `localStorage` methods
benm@google.com [Tue, 17 Apr 2012 20:32:22 +0000 (20:32 +0000)]
`localStorage.setItem` can overwrite `localStorage` methods
https://bugs.webkit.org/show_bug.cgi?id=30996

Source/WebCore:

Update the JSC and V8 bindings such that if the name of the DOM
Storage property being retrieved is a match for a property in the
prototype, always return the prototype version. If there is a DOM
Storage key of the same name, it can still be retrieved via the
getItem method. This prevents storage methods from being
accidentally hidden. This brings WebKit behavior in line with the
de facto standard implemented by FireFox and IE.

Reviewed by Kentaro Hara.

Test: storage/domstorage/storage-functions-not-overwritten.html

* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::nameGetter):
* bindings/v8/custom/V8StorageCustom.cpp:
(WebCore::V8Storage::namedPropertyGetter):

LayoutTests:

Add a test to verify that setting a DOM Storage key with the same name
as a function on the Storage object does not prevent that function
being called, but also that it can still be retrieved via the getItem
function.

Reviewed by Kentaro Hara.

* storage/domstorage/script-tests/storage-functions-not-overwritten.js: Added.
(doWedgeThySelf):
(testStorage):
(runTest):
* storage/domstorage/storage-functions-not-overwritten-expected.txt: Added.
* storage/domstorage/storage-functions-not-overwritten.html: Added.

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

7 years ago[Chromium] Rebaseline minor text pixel differences in bidi-menulist-expected.
scheib@chromium.org [Tue, 17 Apr 2012 20:25:30 +0000 (20:25 +0000)]
[Chromium] Rebaseline minor text pixel differences in bidi-menulist-expected.

Unreviewed.

* platform/chromium-mac-leopard/fast/text/international/bidi-menulist-expected.png: Added.

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

7 years agoFix Chromium/Windows build broken by r114404.
eae@chromium.org [Tue, 17 Apr 2012 20:21:53 +0000 (20:21 +0000)]
Fix Chromium/Windows build broken by r114404.

* platform/FractionalLayoutUnit.h:

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

7 years agoReorganise Chromium test_expectations to group SVG expectations.
schenney@chromium.org [Tue, 17 Apr 2012 20:08:11 +0000 (20:08 +0000)]
Reorganise Chromium test_expectations to group SVG expectations.

Unreviewed Chromium expectations change.

This is done to make future maintenance easier.

* platform/chromium/test_expectations.txt:

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

7 years agoEFL's LayoutTestController does not implement callShouldCloseOnWebView
commit-queue@webkit.org [Tue, 17 Apr 2012 20:05:57 +0000 (20:05 +0000)]
EFL's LayoutTestController does not implement callShouldCloseOnWebView
https://bugs.webkit.org/show_bug.cgi?id=82301

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-17
Reviewed by Martin Robinson.

Source/WebKit/efl:

Implement callShouldCloseOnWebView in EFL's LayoutTestController by
calling shouldClose() on the FrameLoader, allowing the related
test to be removed from the skip list.

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

Tools:

Implement callShouldCloseOnWebView in EFL's LayoutTestController by
calling shouldClose() on the FrameLoader, allowing the related test
to be removed from the skip list.

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

LayoutTests:

Implement callShouldCloseOnWebView in EFL's LayoutTestController by
calling shouldClose() on the FrameLoader, allowing the related test
to be removed from the skip list.

* platform/efl/Skipped:

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

7 years ago[Performance][V8] Skip Isolate look-up to find StringCache
haraken@chromium.org [Tue, 17 Apr 2012 20:05:22 +0000 (20:05 +0000)]
[Performance][V8] Skip Isolate look-up to find StringCache
https://bugs.webkit.org/show_bug.cgi?id=84103

Reviewed by Nate Chapin.

This patch improves the performance of a lot of DOM attribute
getters that return a string.

- Improves the performance of Dromaeo/dom-attr.html(element.property)
  by 27.7%.
- Improves the performance of Dromaeo/dom-attr.html(getAttribute)
  by 10.6%.
- Improves the performance of div.id, div.className,
  div.nodeName, text.nodeValue, text.textContent by 12% -- 21%.

The followings are the test results in my Linux desktop.

Performance test: Dromaeo/dom-attr.html
Total:                     674.64runs/s ->  707.03runs/s (+ 4.8%)
getAttribute:             1537.60runs/s -> 1700.20runs/s (+10.6%)
element.property:         1389.00runs/s -> 1774.20runs/s (+27.7%)
setAttribute:              538.88runs/s ->  548.87runs/s (+ 1.9%)
element.property = value:  644.07runs/s ->  656.67runs/s (+ 2.0%)
element.expando = value:   219.76runs/s ->  207.14runs/s (- 6.8%)
element.expando:           578.77runs/s ->  554.67runs/s (- 4.2%)

Performance test: https://bugs.webkit.org/attachment.cgi?id=137440
div.id:           30.70ns -> 26.70ns (+15%)
div.className:    31.10ns -> 26.40ns (+18%)
div.nodeName:     37.70ns -> 33.00ns (+14%)
text.nodeValue:   31.40ns -> 25.90ns (+21%)
text.textContent: 51.50ns -> 45.90ns (+12%)

Previously V8 bindings need to look up an Isolate to find
an Isolate-local StringCache. This patch skips the look-up
by getting the Isolate from AccessorInfo.GetIsolate()
or Arguments.GetIsolate().

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNormalAttrGetter):
(GenerateFunctionCallString):
(NativeToJSValue):
* bindings/v8/V8Binding.cpp:
(WebCore::getElementStringAttr):
* bindings/v8/V8Binding.h:
(WebCore::v8ExternalString): Make 'isolate' an optional argument.
Ideally we want to make 'isolate' a non-optional argument,
but it is difficult to rewrite all v8ExternalString() callers
at a breath. We can rewrite them incrementally.
(WebCore::v8String): Ditto.
(WebCore::v8StringOrNull): Ditto.
(WebCore::v8StringOrUndefined): Ditto.
(WebCore::v8StringOrFalse): Ditto.

* bindings/scripts/test/V8/V8TestEventConstructor.cpp: Updated run-bindings-tests results.
(WebCore::TestEventConstructorV8Internal::attr1AttrGetter):
(WebCore::TestEventConstructorV8Internal::attr2AttrGetter):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalStr1AttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrGetter):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::readOnlyStringAttrAttrGetter):
(WebCore::TestObjV8Internal::stringAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrGetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrGetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrGetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrGetter):
(WebCore::TestObjV8Internal::hashAttrGetter):
(WebCore::TestObjV8Internal::conditionalMethod1Callback):

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

7 years ago[EFL] FrameLoaderClient should send "load,finished" signal for all frame, not just...
commit-queue@webkit.org [Tue, 17 Apr 2012 20:01:15 +0000 (20:01 +0000)]
[EFL] FrameLoaderClient should send "load,finished" signal for all frame, not just the main one
https://bugs.webkit.org/show_bug.cgi?id=84052

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-04-17
Reviewed by Antonio Gomes.

Source/WebKit/efl:

Emit the "load,finished" signal from dispatchDidFinishLoad() / instead of
postProgressFinishedNotification() in order to send notifications all frames,
not just the main one.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::postProgressFinishedNotification):
(WebCore::FrameLoaderClientEfl::dispatchDidFinishLoad):
(WebCore::FrameLoaderClientEfl::dispatchDidFailLoad):

LayoutTests:

Unskip EFL test cases which rely on the DumpRenderTree support for
LayoutTestController's dumpFrameLoadCallbacks() and expect notifications for other
frame than the main one.

* platform/efl/Skipped:

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

7 years ago[EFL] Add setting API to enable/disable XSSAuditor
commit-queue@webkit.org [Tue, 17 Apr 2012 19:56:47 +0000 (19:56 +0000)]
[EFL] Add setting API to enable/disable XSSAuditor
https://bugs.webkit.org/show_bug.cgi?id=83281

Source/WebKit/efl:

Add setting API to enable or disable WebKit's XSSAuditor to protect
from reflective cross-site scripting attacks. Also, emit the signal
'xss,detected' and provide addition information received from
XSSAuditor when reflected XSS is encountered in the page.

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

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::didDetectXSS):
* ewk/ewk_frame.cpp:
(ewk_frame_xss_detected):
* ewk/ewk_frame.h:
* ewk/ewk_private.h:
* ewk/ewk_view.cpp:
(_Ewk_View_Private_Data):
(_ewk_view_priv_new):
(ewk_view_setting_enable_xss_auditor_get):
(ewk_view_setting_enable_xss_auditor_set):
* ewk/ewk_view.h:

Tools:

Add missing implementation setXSSAuditorEnabled to EFL's LayoutTestController
in order to unskip tests in http/tests/security/xssAuditor. Also, catch the signal
'xss,detected' in DRT to enable a test, which is expecting a line containing
'didDetectXSS' in the output when reflected XSS is encountered in the page.

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

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onFrameCreated):
(DumpRenderTreeChrome::onDidDetectXSS):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setXSSAuditorEnabled):

LayoutTests:

Unskip tests in http/tests/security/xssAuditor

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

* platform/efl/Skipped:

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

7 years agoCrash in invalid index for _textMarkerForIndex
cfleizach@apple.com [Tue, 17 Apr 2012 19:48:15 +0000 (19:48 +0000)]
Crash in invalid index for _textMarkerForIndex
https://bugs.webkit.org/show_bug.cgi?id=84104

Reviewed by Beth Dakin.

Source/WebCore:

Test: platform/mac/accessibility/textmarker-for-index-out-of-bounds-crash.html

* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper _textMarkerForIndex:]):

LayoutTests:

* platform/mac/accessibility/textmarker-for-index-out-of-bounds-crash-expected.txt: Added.
* platform/mac/accessibility/textmarker-for-index-out-of-bounds-crash.html: Added.

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