Unreviewed, fix mistakenly added pngs for failing compositing ref tests :(.

* platform/chromium-mac/compositing/text-on-scaled-layer-expected.png: Removed.
* platform/chromium-mac/compositing/text-on-scaled-surface-expected.png: Removed.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Prepare DOMDataStore to be able to store ScriptWrappable wrappers inline
https://bugs.webkit.org/show_bug.cgi?id=101523

Unreviewed. Technically this patch hasn't been reviewed, but it is part
of a patch that was reviewed by Kentaro Hara.

Sadly, my patch for bug 101110 triggered the regression again. This
patch is a smaller incremental step towards the patch in bug 101110. It
doesn't make that much sense on its own, but it will help me isolate
the source of the regression.

* bindings/v8/DOMDataStore.h:
(WebCore::DOMDataStore::get):
(DOMDataStore):
(WebCore::DOMDataStore::set):
(WebCore::DOMDataStore::wrapperIsStoredInObject):
(WebCore::DOMDataStore::getWrapperFromObject):
(WebCore::DOMDataStore::setWrapperInObject):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133823 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Prepare for IDBBackingStore merge by renaming IDBLevelDBBackingStore.cpp
https://bugs.webkit.org/show_bug.cgi?id=101486

Reviewed by Ojan Vafai.

Rename IDBLevelDBBackingStore.cpp to IDBBackingStore.cpp in
preparation for merging these classes. This will make the merge
diffs sane. See https://bugs.webkit.org/show_bug.cgi?id=101415
for the final goal.

No new tests, this is is just a rename and minor style fix.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Modules/indexeddb/IDBBackingStore.cpp: Renamed from Source/WebCore/Modules/indexeddb/IDBLevelDBBackingStore.cpp.
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133825 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Versioning.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133826 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add empty RemoteLayerTree class
https://bugs.webkit.org/show_bug.cgi?id=101524

Reviewed by Simon Fraser.

Add a new RemoteLayerTree class which will contain the remote graphics layers.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/mac/RemoteLayerTree.h: Added.
* WebProcess/WebPage/mac/RemoteLayerTree.mm: Added.
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
(RemoteLayerTreeDrawingArea):
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133827 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WK2] Make WebVibrationProxy to be a member of WebPageProxy.
https://bugs.webkit.org/show_bug.cgi?id=100334

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-07
Reviewed by Anders Carlsson.

WebVibrationProxy should be a member of WebPageProxy, because the IPC
messages of WebVibrationProxy have page destination ID.

The r132386 proposed a way to add/delete message receivers that can
handle IPC messages with destination ID.

Previous implementation that creating WebVibrationProxy as a WebContext
member and using the global message receiver for the proxy can make
assertions after r132386.

To handle the vibration IPC messages properly, this patch will do the
followings.

1) Instead of WebContext, WebPageProxy will have the WebVibrationProxy.

2) WebVibrationProxy will add itself to the message receiver map of
   the WebContext with page destination ID.

3) When WebProcessProxy received vibration ipc messages, it will
   forward the messages to the WebContext first. Then the message
   receiver map of the WebContext will handle the messages with the
   registered WebVibrationProxy.

4) APIs will be modified to apply these changes.
   a) WK API to get WKVibrationRef will use WKPageRef not WKContextRef.
   b) EFL APIs and API test for the vibration will also be changed.
      - EwkViewImpl will have vibration client. (EwkContext will not
        have it)
      - Previous API to register the vibration callback will be removed.
      - New signals for vibration will be added to the EwkViewImpl.
      - VibrationProxy will be renamed to VibrationClient for the
        consistency with other clients in EwkViewImpl.
      - VibrationClient will use EwkViewImpl instead of EwkContext.
      - Previous API test for vibration will be moved from context test
        to view test, and it will use the changed API.

* PlatformEfl.cmake:
* UIProcess/API/C/WKContext.cpp:
* UIProcess/API/C/WKContext.h:
* UIProcess/API/C/WKPage.cpp:
(WKPageGetVibration):
* UIProcess/API/C/WKPage.h:
* UIProcess/API/efl/EwkViewCallbacks.h:
(EwkViewCallbacks):
* UIProcess/API/efl/EwkViewImpl.cpp:
(EwkViewImpl::EwkViewImpl):
* UIProcess/API/efl/EwkViewImpl.h:
(WebKit):
(EwkViewImpl):
* UIProcess/API/efl/ewk_context.cpp:
(EwkContext::EwkContext):
* UIProcess/API/efl/ewk_context.h:
* UIProcess/API/efl/ewk_context_private.h:
(WebKit):
(EwkContext):
* UIProcess/API/efl/ewk_view.h:
* UIProcess/API/efl/tests/test_ewk2_context.cpp:
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(VibrationCbData):
(onVibrate):
(onCancelVibration):
(loadVibrationHTMLString):
(TEST_F):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::~WebContext):
(WebKit::WebContext::disconnectProcess):
* UIProcess/WebContext.h:
(WebKit):
(WebContext):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::processDidCrash):
* UIProcess/WebPageProxy.h:
(WebKit):
(WebPageProxy):
(WebKit::WebPageProxy::vibration):
* UIProcess/WebVibrationProxy.cpp:
(WebKit::WebVibrationProxy::create):
(WebKit::WebVibrationProxy::WebVibrationProxy):
(WebKit::WebVibrationProxy::~WebVibrationProxy):
(WebKit::WebVibrationProxy::invalidate):
* UIProcess/WebVibrationProxy.h:
(WebKit):
(WebVibrationProxy):
* UIProcess/efl/VibrationClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/efl/VibrationProvider.cpp.
(toVibrationClient):
(VibrationClientEfl::vibrateCallback):
(VibrationClientEfl::cancelVibrationCallback):
(VibrationClientEfl::create):
(VibrationClientEfl::VibrationClientEfl):
(VibrationClientEfl::~VibrationClientEfl):
* UIProcess/efl/VibrationClientEfl.h: Renamed from Source/WebKit2/UIProcess/efl/VibrationProvider.h.
(WebKit):
(VibrationClientEfl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Don't leak <img> elements in content scripts
https://bugs.webkit.org/show_bug.cgi?id=101525

Reviewed by Ojan Vafai.

I found the leak that was causing a problem for bug 101110. We weren't
filling in the derefObjectFunction for HTMLImageElements (and
potentially some other types of elements). That manifests today as a
memory leak in content scripts (which use the derefObjectFunction for
nodes) and caused a memory leak after bug 101110 because we started
using the derefObjectFunction in the main world as well.

This patch adds ASSERTs so that we won't make this mistake in the future.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructorCallback):
* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::weakCallback):
* bindings/v8/DOMWrapperMap.h:
(WebCore::DOMWrapperMap::defaultWeakCallback):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, new chromium-mac-mountainlion baselines for css3/selectors3.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133830 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=101408

Reviewed by Kent Tamura.

Mistake with timezone was making this test flaky.

* platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133831 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Enable Subpixel Layout on Windows. Rebaseline any failing tests that were rebaselined in r133351.
https://bugs.webkit.org/show_bug.cgi?id=101538

Rubberstamped by Tim Horton.

* win/tools/vsprops/FeatureDefines.vsprops:
* platform/win/css1/font_properties/font-expected.txt:
* platform/win/css2.1/t0905-c5525-fltwidth-00-c-g-expected.txt:
* platform/win/editing/selection/caret-ltr-right-expected.txt:
* platform/win/editing/selection/caret-rtl-2-left-expected.txt:
* platform/win/editing/selection/caret-rtl-right-expected.txt:
* platform/win/editing/selection/mixed-editability-10-expected.txt:
* platform/win/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
* platform/win/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
* platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
* platform/win/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
* platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
* platform/win/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
* platform/win/editing/selection/vertical-rl-rtl-extend-line-backward-br-expected.txt:
* platform/win/editing/selection/vertical-rl-rtl-extend-line-backward-p-expected.txt:
* platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-br-expected.txt:
* platform/win/editing/selection/vertical-rl-rtl-extend-line-forward-p-expected.txt:
* platform/win/fast/borders/bidi-012-expected.txt:
* platform/win/fast/forms/fieldset-legend-padding-unclipped-fieldset-border-expected.txt:
* platform/win/fast/forms/file/file-input-disabled-expected.txt:
* platform/win/fast/inline/inline-box-background-expected.txt:
* platform/win/fast/inline/inline-box-background-long-image-expected.txt:
* platform/win/fast/inline/inline-box-background-repeat-x-expected.txt:
* platform/win/fast/inline/inline-box-background-repeat-y-expected.txt:
* platform/win/fast/lists/003-vertical-expected.txt:
* platform/win/fast/text/international/vertical-text-glyph-test-expected.txt:
* platform/win/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
* platform/win/transforms/2d/hindi-rotated-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133832 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add RemoteGraphicsLayer class
https://bugs.webkit.org/show_bug.cgi?id=101535

Reviewed by Simon Fraser.

Source/WebCore:

* WebCore.exp.in:
Export GraphicsLayer symbols required by WebKit2.

* WebCore.xcodeproj/project.pbxproj:
Make GraphicsLayerFactory.h a private header.

Source/WebKit2:

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
* WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
Add RemoteGraphicsLayer, a subclass of WebCore::GraphicsLayer.

* WebProcess/WebPage/mac/RemoteLayerTreeController.h:
Make RemoteLayerTreeController a GraphicsLayerFactory.

* WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
(WebKit::RemoteLayerTreeController::createGraphicsLayer):
Create a new RemoteGraphicsLayer.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::graphicsLayerFactory):
Return the layer tree controller.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133833 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Repaint issues with -webkit-svg-shadow used on a container
https://bugs.webkit.org/show_bug.cgi?id=65643
<rdar://problem/7600532>

Reviewed by Simon Fraser.

SVG renderer repaint rects are currently expanded only by the shadow of
the renderer itself; however, the area they need to repaint can be larger
than that, if their parents also have shadows. We need to take into account
parent's shadows (respecting transforms, as well).

clippedOverflowRectForRepaint already recurses upwards through the render tree,
and ends up with a rect in layout coordinates, so we manually apply the shadow
at each step (repaintRectInLocalCoordinatesExcludingSVGShadow was added to allow
us to get the raw repaint rect without the shadow baked-in).

repaintRectInLocalCoordinates now includes shadows from all parents.

Also, RenderSVGRoot was clipping repaint rects to the viewport before applying
shadows, so offscreen elements with on-screen shadows (applied by the root) would not paint the shadows.
We can just swap the order of these things to correct this.

Tests: svg/css/parent-shadow-offscreen.svg, svg/css/root-shadow-offscreen.svg, svg/repaint/repaint-webkit-svg-shadow.svg

* rendering/RenderObject.cpp:
(WebCore::RenderObject::addChild): Mark the child being added as having an SVG shadow if it is being added as a child of an element that does.
(WebCore::RenderObject::styleDidChange): Mark the child being added as having an SVG shadow if its new style has a shadow.
* rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::layout): Cache the repaint rect before intersecting it with the shadow.
* rendering/svg/RenderSVGImage.h:
(WebCore::RenderSVGImage::repaintRectInLocalCoordinatesExcludingSVGShadow): Return the cached repaint rect for the renderer without the shadow included.
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::RenderSVGModelObject): Renderers do not have a shadow by default.
* rendering/svg/RenderSVGModelObject.h:
(WebCore::RenderSVGModelObject::repaintRectInLocalCoordinatesExcludingSVGShadow): Return the cached repaint rect for the renderer without the shadow included.
(WebCore::RenderSVGModelObject::hasSVGShadow): Return whether or not the renderer has a shadow.
(WebCore::RenderSVGModelObject::setHasSVGShadow): Set whether or not the renderer has a shadow.
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::computeFloatRectForRepaint): Apply the shadow before clipping to the viewport, so we draw shadows for elements outside the viewport.
(WebCore::RenderSVGRoot::updateCachedBoundaries): Cache the repaint rect before intersecting it with the shadow.
* rendering/svg/RenderSVGRoot.h:
(WebCore::RenderSVGRoot::hasSVGShadow): Return whether or not the renderer has a shadow.
(WebCore::RenderSVGRoot::setHasSVGShadow): Set whether or not the renderer has a shadow.
(WebCore::RenderSVGRoot::repaintRectInLocalCoordinatesExcludingSVGShadow): Return the cached repaint rect for the renderer without the shadow included.
* rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::updateRepaintBoundingBox): Cache the repaint rect before intersecting it with the shadow.
* rendering/svg/RenderSVGShape.h:
(WebCore::RenderSVGShape::repaintRectInLocalCoordinatesExcludingSVGShadow): Return the cached repaint rect for the renderer without the shadow included.
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::repaintRectForRendererInLocalCoordinatesExcludingSVGShadow): Return the cached repaint rect for the renderer without the shadow included.
(WebCore::SVGRenderSupport::clippedOverflowRectForRepaint): Apply shadows as we walk through our parents, instead of only applying the renderer's own shadow.
(WebCore::SVGRenderSupport::rendererHasSVGShadow): Return whether or not the renderer has a shadow.
(WebCore::SVGRenderSupport::setRendererHasSVGShadow): Set whether or not the renderer has a shadow.
(WebCore::SVGRenderSupport::intersectRepaintRectWithShadows): Walk through the element's parents, adding shadows to the repaint rect as we go, eventually
transforming the repaint rect back into local coordinates.
(WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Don't add shadows by default, just other resources, so that we can cache repaint rects with and without shadows.
* rendering/svg/SVGRenderSupport.h:


* platform/chromium/TestExpectations: Mark tests as needing rebaseline.
* platform/efl/TestExpectations: Mark tests as needing rebaseline.
* platform/gtk/TestExpectations: Mark tests as needing rebaseline.
* platform/qt/TestExpectations: Mark tests as needing rebaseline.

* platform/mac/fast/repaint/moving-shadow-on-container-expected.txt:
* platform/mac/svg/css/arrow-with-shadow-expected.txt:
* platform/mac/svg/css/clippath-with-shadow-expected.txt:
* platform/mac/svg/css/composite-shadow-example-expected.txt:
* platform/mac/svg/css/composite-shadow-with-opacity-expected.txt:
* platform/mac/svg/css/group-with-shadow-expected.txt:
* platform/mac/svg/css/shadow-changes-expected.txt:
* platform/mac/svg/custom/simple-text-double-shadow-expected.txt:
Rebaseline Mac results due to this change.

* svg/css/parent-shadow-offscreen-expected.svg: Added.
* svg/css/parent-shadow-offscreen.svg: Added.
Add a new test that ensures that <g> with -webkit-svg-shadow applied draws when children are offscreen but the shadow is not.

* svg/css/root-shadow-offscreen-expected.svg: Added.
* svg/css/root-shadow-offscreen.svg: Added.
Add a new test that ensures that <svg> with -webkit-svg-shadow applied draws when children are offscreen but the shadow is not.

* platform/mac/svg/repaint/repaint-webkit-svg-shadow-expected.png: Added.
* svg/repaint/repaint-webkit-svg-shadow-expected.txt: Added.
* svg/repaint/repaint-webkit-svg-shadow.svg: Added.
Add a new test that ensures that SVG elements with -webkit-svg-shadow are correctly invalidated.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, new chromium-mac-mountainlion baselines for remaining dirs outside of fast, svg, and tables.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133835 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Seam occurred between pieces of ShadowBlur on floating point zoom
https://bugs.webkit.org/show_bug.cgi?id=101435

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-11-07
Reviewed by Simon Fraser.

When paint Shadow that doesn't have blurred edge on floating point zoom,
pixel seam (pixel cracks) occurred between pieces of the ShadowBlur because of unaligned clip rect.
So, enlarge the clipping area 1 pixel so that the fill does not bleed (due to antialiasing)
even if the unaligned clip rect occurred.

* platform/graphics/ShadowBlur.cpp:
(WebCore::ShadowBlur::calculateLayerBoundingRect):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] IntrusiveDOMWrapperMap should be usable for more than just Nodes
https://bugs.webkit.org/show_bug.cgi?id=101110

Reviewed by Kentaro Hara.

Hopefully the memory issues with this patch have been resolved by
fixing bug 101525. This patch re-lands this patch again, hopefully for
the last time.

* bindings/v8/DOMDataStore.cpp:
(WebCore::DOMDataStore::weakCallback):
* bindings/v8/DOMDataStore.h:
(WebCore::DOMDataStore::wrapperIsStoredInObject):
(WebCore::DOMDataStore::getWrapperFromObject):
(WebCore::DOMDataStore::setWrapperInObject):


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