Rebaseline some Lion results that were affected by enabling subpixel layout.

* platform/mac-lion/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.txt:
* platform/mac-lion/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.txt:
* platform/mac-lion/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.txt:
* platform/mac-lion/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.txt:
* platform/mac-lion/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.txt:
* platform/mac-lion/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.txt:
* platform/mac-lion/fast/text/international/hindi-spacing-expected.txt:
* platform/mac-lion/fast/text/international/vertical-text-glyph-test-expected.txt:
* platform/mac-lion/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
* platform/mac-lion/fast/writing-mode/japanese-ruby-vertical-lr-expected.txt:
* platform/mac-lion/fast/writing-mode/japanese-ruby-vertical-rl-expected.txt:
* platform/mac-lion/fast/writing-mode/vertical-font-fallback-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][WK2] New compositing/tiling tests fail
https://bugs.webkit.org/show_bug.cgi?id=101166

The platform-independent results should not contain visibleRect, since this is
only dumped on Mac.

* compositing/tiling/rotated-tiled-clamped-expected.txt:
* compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133513 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Input date should not popup dialog when readonly is set
https://bugs.webkit.org/show_bug.cgi?id=101234

Reviewed by Yong Li.

PR 236114

Reviewed internally by Mike Fenton.

Suppress popup dialog if the input element has readonly attribute set.

* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::openDatePopup):
(BlackBerry::WebKit::InputHandler::openColorPopup):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Use const SkBitmap& parameter for WebLayerTreeView::setFontAtlas
https://bugs.webkit.org/show_bug.cgi?id=101016

Reviewed by Adrienne Walker.

Passing SkBitmap by value requires including SkBitmap.h, which is tricky for some clients to do since it
requires having the rest of skia's headers on the include path and setting up the correct config to set
preprocessor defines.  Also shuffles the parameter order around to make rolling easier since you can't override
just by const ref-ness.

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix layer borders to cleaning appear and disappear on switching
https://bugs.webkit.org/show_bug.cgi?id=101136

Source/WebCore:

Reviewed by Sam Weinig.

GraphicsLayers decided whether to show layer borders based
on a callback through the GraphicsLayerClient. This made it
hard to manage state, resulting in a failure to cleanly
hide layers when toggled off via the preference.

Changed the layer border and repaint counter visibility to be bits
stored on GraphicsLayer just like other properties, with getters
and setters. RenderLayerBacking now updates these debug
indicators when we update other compositing layer properties.

In GraphicsLayerCA, avoid calling updateDebugIndicators() explicitly
in several places by setting the change flag DebugIndicatorsChanged
for properties whose values affect the appearance of the debug border.

Removed the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter() which are no longer required.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::GraphicsLayer):
(WebCore::GraphicsLayer::updateDebugIndicators):
* platform/graphics/GraphicsLayer.h:
(WebCore::GraphicsLayer::setShowDebugBorder):
(WebCore::GraphicsLayer::isShowingDebugBorder):
(WebCore::GraphicsLayer::setShowRepaintCounter):
(WebCore::GraphicsLayer::isShowingRepaintCounter):
(WebCore::GraphicsLayer::repaintCount):
(WebCore::GraphicsLayer::incrementRepaintCount):
* platform/graphics/GraphicsLayerClient.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::GraphicsLayerCA):
(WebCore::GraphicsLayerCA::setMasksToBounds):
(WebCore::GraphicsLayerCA::setDrawsContent):
(WebCore::GraphicsLayerCA::platformCALayerShowRepaintCounter):
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateMasksToBounds):
(WebCore::GraphicsLayerCA::updateLayerDrawsContent):
(WebCore::GraphicsLayerCA::updateDebugBorder):
(WebCore::GraphicsLayerCA::setShowDebugBorder):
(WebCore::GraphicsLayerCA::setShowRepaintCounter):
(WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
(WebCore::GraphicsLayerCA::setupContentsLayer):
(WebCore::GraphicsLayerCA::cloneLayer):
* platform/graphics/ca/GraphicsLayerCA.h:
(GraphicsLayerCA):
(WebCore::GraphicsLayerCA::platformCALayerShowDebugBorders):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateDebugIndicators):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateBacking):
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):

Source/WebKit/blackberry:

Reviewed by Sam Weinig.

Remove the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter().

* Api/WebOverlay_p.h:
(WebOverlayPrivateWebKitThread):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::notifyFlushRequired):
* Api/WebPage_p.h:
* WebKitSupport/DefaultTapHighlight.cpp:
* WebKitSupport/DefaultTapHighlight.h:
(DefaultTapHighlight):
* WebKitSupport/InspectorOverlayBlackBerry.cpp:
* WebKitSupport/InspectorOverlayBlackBerry.h:
(InspectorOverlay):
* WebKitSupport/SelectionOverlay.cpp:
* WebKitSupport/SelectionOverlay.h:
(SelectionOverlay):

Source/WebKit/chromium:

Reviewed by Sam Weinig.

Remove the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter().

* src/NonCompositedContentHost.cpp:
* src/NonCompositedContentHost.h:
(NonCompositedContentHost):
* src/PageOverlay.cpp:
* tests/GraphicsLayerChromiumTest.cpp:
* tests/ImageLayerChromiumTest.cpp:

Source/WebKit/gtk:

Reviewed by Sam Weinig.

Remove the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter().

* WebCoreSupport/AcceleratedCompositingContext.h:
(AcceleratedCompositingContext):
* WebCoreSupport/AcceleratedCompositingContextCairo.cpp:
* WebCoreSupport/AcceleratedCompositingContextClutter.cpp:
* WebCoreSupport/AcceleratedCompositingContextGL.cpp:

Source/WebKit/win:

Reviewed by Sam Weinig.

Remove the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter().

* WebView.cpp:
* WebView.h:

Source/WebKit2:

Reviewed by Sam Weinig.

Remove the GraphicsLayerClient methods showDebugBorders() and
showRepaintCounter().

* UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
* WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
(LayerTreeCoordinator):
* WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
* WebProcess/WebPage/ca/LayerTreeHostCA.h:
(LayerTreeHostCA):
* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
(LayerTreeHostGtk):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
(TiledCoreAnimationDrawingArea):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133517 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][WK2] New compositing/tiling tests fail
https://bugs.webkit.org/show_bug.cgi?id=101166

Unskip now passing tests after r133513.

* platform/qt-5.0-wk2/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133518 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Mark several compositing tests as only failing Image
and not Text, after r133513.  Unreviewed.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133519 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove the unused m_fixedPositionedElements from RenderView
https://bugs.webkit.org/show_bug.cgi?id=101251

Reviewed by Anders Carlsson.

m_fixedPositionedElements was completely unused. Remove it
and the related typedef.

* rendering/RenderView.h:
(RenderView):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash when mixing layers, foreignObjects and SVG hidden containers
https://bugs.webkit.org/show_bug.cgi?id=87297

Reviewed by Dirk Schulze.

Source/WebCore:

Foreign objects may introduce content which requires layers, but layer creation is
suppressed within RenderSVGHiddenContainer subtrees and this yields an inconsistent render
tree state. This patch prevents foreignObject renderer instantiation under
RenderSVGHiddenContainers.

Test: svg/foreignObject/foreign-object-defs-crash.svg

* svg/SVGForeignObjectElement.cpp:
(WebCore::SVGForeignObjectElement::rendererIsNeeded):
(WebCore):
* svg/SVGForeignObjectElement.h:
(SVGForeignObjectElement):

LayoutTests:

* platform/chromium-mac-snowleopard/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-5-expected.txt:
* platform/chromium-win/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/chromium-win/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/chromium-win/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/chromium-win/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/chromium-win/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/chromium/svg/custom/use-on-disallowed-foreign-object-5-expected.txt:
* platform/chromium/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/chromium/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/chromium/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/chromium/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/chromium/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/efl/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/efl/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/efl/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/efl/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/gtk/svg/custom/use-on-disallowed-foreign-object-5-expected.txt:
* platform/gtk/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/gtk/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/gtk/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/gtk/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/gtk/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.txt:
* platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/mac/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/mac/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/mac/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* platform/qt/svg/custom/use-on-disallowed-foreign-object-5-expected.txt:
* platform/qt/svg/custom/use-on-disallowed-foreign-object-6-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-display-none-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt:
* platform/qt/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt:
* svg/custom/use-on-g-containing-foreignObject-and-image-expected.txt:
* svg/foreignObject/foreign-object-defs-crash-expected.txt: Added.
* svg/foreignObject/foreign-object-defs-crash.svg: Added.
* svg/foreignObject/text-tref-02-b-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133521 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Do not display error page for failed downloads
https://bugs.webkit.org/show_bug.cgi?id=101246

Internal PR: 236318
Internal reviewed by Joe Mason, Leo Yang.
Patch by Lianghui Chen <liachen@rim.com> on 2012-11-05
Reviewed by Rob Buis.

Right now when a main load, including all downloads, failed, it will
display an error page. This is not very user friendly, especially for
WebWorks application, which want to use its own user interface to info
user about the failure.
So we just stop displaying error page for downloads.

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133522 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Give actual bug IDs to some past gardening.  Unreviewed.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133523 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Get rid of setCookieStoragePrivateBrowsingEnabled.
        https://bugs.webkit.org/show_bug.cgi?id=101247

        Reviewed by Brady Eidson.

        We were only doing anything here on Mac, and only because we couldn't know if
        sessions were in use. But sessions are always in use, and those obsolete changing
        cookie storage explicitly.

        * platform/network/win/CookieStorageWin.cpp: Removed.
        * PlatformWinCE.cmake:
        * WebCore.gypi:
        No more CookieStorageWin.cpp with an empty implementation.
    
        * WebCore.exp.in:
        * platform/mac/WebCoreSystemInterface.h:
        * platform/mac/WebCoreSystemInterface.mm:
        We no longer need this WKSI function.

        * page/Settings.cpp: (WebCore::Settings::setPrivateBrowsingEnabled):
        Removed the only call to setCookieStoragePrivateBrowsingEnabled().

        * platform/network/CookieStorage.h:
        * platform/network/cf/CookieStorageCFNet.cpp:
        * platform/network/curl/CookieJarCurl.cpp:
        * platform/network/soup/CookieStorageSoup.cpp:
        * platform/qt/TemporaryLinkStubsQt.cpp:
        Removed empty setCookieStoragePrivateBrowsingEnabled implementations.

        * platform/network/mac/CookieStorageMac.mm: This function used to have a FIXME
        that we should observe private storage while in private browsing mode. I don't think
        that it was correct - Safari doesn't display content of private storage, and thus
        doesn't need to know about changes.
        The removal of this function has an effect on WebKit1 clients that enable private
        browsing. We used to globally change cookie storage, even for loads not initiated
        by WebKit. Now we match API description: "If private browsing is enabled, WebKit
        will not store information about sites the user visits."



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133524 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove fast/forms/week-multiple-fields from
platform/mac/TestExpectations, since it no longer exists and makes the
style script complain.  Unreviewed.

* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133525 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.

Source/WebCore: 

This patch generalizes our support for storing wrappers in DOM objects
to be usable for more than just nodes. After this patch, any object
with a ScriptWrappable base class will have its wrapper stored inline
in the object in the main world.

To achieve this goal, this patch hides the details of how we map from
objects to wrappers inside DOMDataStore and then removes the
IntrusiveDOMWrapperMap class entirely. This approach lets us remove the
DOMWrapperMap base class and make all of these functions non-virtual.

* UseV8.cmake:
* WebCore.gypi:
    - Remove deleted files.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateNormalAttrGetter):
(GenerateConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateToV8Converters):
    - Rather than grabbing at the DOMWrapperMap directly, we now ask
      the DOMDataStore to do this work for us.
* bindings/scripts/test/V8/V8Float64Array.h:
(WebCore::V8Float64Array::wrap):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(WebCore::V8TestActiveDOMObject::wrap):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(WebCore::V8TestCustomNamedGetter::wrap):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(WebCore::V8TestEventConstructor::wrap):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(WebCore::V8TestEventTarget::wrap):
* bindings/scripts/test/V8/V8TestException.h:
(WebCore::V8TestException::wrap):
* bindings/scripts/test/V8/V8TestInterface.h:
(WebCore::V8TestInterface::wrap):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(WebCore::V8TestMediaQueryListListener::wrap):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(WebCore::V8TestNamedConstructor::wrap):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::constructorCallback):
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetter):
* bindings/scripts/test/V8/V8TestObj.h:
(WebCore::V8TestObj::wrap):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(WebCore::V8TestSerializedScriptValueInterface::wrap):
* bindings/v8/DOMDataStore.cpp:
    - Updated run-bindings-test results.
(WebCore::DOMDataStore::DOMDataStore):
(WebCore::DOMDataStore::~DOMDataStore):
    - Simplify constructor and destructor now that there is only one
      hash map.
(WebCore::DOMDataStore::current):
    - Now that V8DOMMap.cpp doesn't handle the null isolate case, we
      need to handle it here.
(WebCore::DOMDataStore::reportMemoryUsage):
    - Simplfied now that there is only one wrapper map.
(WebCore::DOMDataStore::weakCallback):
    - Moved from IntrusiveDOMWrapperMap.h
* bindings/v8/DOMDataStore.h:
(WebCore::DOMDataStore::get):
(WebCore::DOMDataStore::set):
    - These functions now handle the intrusive case with a branch
      rather than with a virtual function call. In many cases, the
      branch can be optimized away by the compiler when the overloaded
      inline functions are inlined.
(WebCore::DOMDataStore::wrapperIsStoredInObject):
    - Overloaded functions to determine whether to store the wrapper
      inside the object or in the hashmap.
(WebCore::DOMDataStore::getWrapperFromObject):
(WebCore::DOMDataStore::storeWrapperInObject):
    - Overloaded functions to get/set the wrapper from inside the
      object itself.
* bindings/v8/DOMWrapperMap.h:
(WebCore::DOMWrapperHashMap::get):
(WebCore::DOMWrapperHashMap::set):
(WebCore::DOMWrapperHashMap::clear):
(WebCore::DOMWrapperHashMap::reportMemoryUsage):
(WebCore::DOMWrapperHashMap::remove):
    - These functions are no longer virtual.
* bindings/v8/DOMWrapperWorld.h:
* bindings/v8/IntrusiveDOMWrapperMap.h: Removed.
* bindings/v8/ScriptProfiler.cpp:
* bindings/v8/SerializedScriptValue.cpp:
(WebCore::neuterBinding):
    - We need to keep the type information slightly longer so that we
      look in the right wrapper map.
* bindings/v8/V8DOMMap.cpp: Removed.
* bindings/v8/V8DOMMap.h: Removed.
* bindings/v8/V8DOMWindowShell.cpp:
* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::getCachedWrapper):
    - Defer this work to the store.
(WebCore::V8DOMWrapper::setWrapperClass):
    - An overloaded function to set the right wrapper class.
(WebCore::V8DOMWrapper::setJSWrapperForDOMObject):
    - This function is now general enough to handle ever kind of object.
* bindings/v8/V8GCController.cpp:
* bindings/v8/V8NPObject.cpp:
* bindings/v8/WorkerContextExecutionProxy.cpp:
* bindings/v8/WorkerScriptController.cpp:
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore::v8HTMLImageElementConstructorCallback):
    - Call the more general function (instead of the now-deleted specialized function).

Source/WebKit/chromium: 

* src/WebScriptController.cpp:
    - Remove unneeded include of deleted file.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133526 268f45cc-cd09-0410-ab3c-d52691b4dbfc
webkitRegionLayoutUpdate is incorrectly named
https://bugs.webkit.org/show_bug.cgi?id=100335

Reviewed by Ojan Vafai.

Source/WebCore:

DOM event names are supposed to be lower case.

* dom/EventNames.h:
(WebCore):
* dom/WebKitNamedFlow.cpp:
(WebCore::WebKitNamedFlow::dispatchRegionLayoutUpdateEvent):

LayoutTests:

Update tests to use the proper name.

* fast/regions/webkit-named-flow-event-add-to-flow.html:
* fast/regions/webkit-named-flow-event-no-regions.html:
* fast/regions/webkit-named-flow-event-remove-from-dom.html:
* fast/regions/webkit-named-flow-event-remove-from-flow.html:
* fast/regions/webkit-named-flow-event-target.html:
* fast/regions/webkit-named-flow-event-to-null.html:
* fast/regions/webkit-named-flow-event.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133527 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] screenX/Y gives wrong values
https://bugs.webkit.org/show_bug.cgi?id=101259

Reviewed by Yong Li.

PR 237071

Reviewed internally by Gen Mak.

Do not transform screenPos coordinates.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::mouseEvent):
(BlackBerry::WebKit::WebPage::touchEvent):
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133528 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support to -webkit-line-break property for CSS3 Text line-break property values and semantics.
https://bugs.webkit.org/show_bug.cgi?id=89235

Patch by Glenn Adams <glenn@skynav.com> on 2012-11-05
Reviewed by Eric Seidel.

See also wiki documentation at:
[1] http://trac.webkit.org/wiki/LineBreaking
[2] http://trac.webkit.org/wiki/LineBreakingCSS3Mapping

Source/WebCore:

Web exposed changes include:
(1) The default (initial) value for -webkit-line-break becomes 'auto', instead of 'normal';
(2) The values 'auto', 'loose', 'normal', and 'strict' are added to -webkit-line-break;
(3) See [2] above for details regarding interpretation.

Tests: css3/line-break/line-break-auto-centered.html
       css3/line-break/line-break-auto-half-kana.html
       css3/line-break/line-break-auto-hyphens.html
       css3/line-break/line-break-auto-inseparables.html
       css3/line-break/line-break-auto-iteration-marks.html
       css3/line-break/line-break-auto-postfixes.html
       css3/line-break/line-break-auto-prefixes.html
       css3/line-break/line-break-auto-sound-marks.html
       css3/line-break/line-break-loose-centered.html
       css3/line-break/line-break-loose-half-kana.html
       css3/line-break/line-break-loose-hyphens.html
       css3/line-break/line-break-loose-inseparables.html
       css3/line-break/line-break-loose-iteration-marks.html
       css3/line-break/line-break-loose-postfixes.html
       css3/line-break/line-break-loose-prefixes.html
       css3/line-break/line-break-loose-sound-marks.html
       css3/line-break/line-break-normal-centered.html
       css3/line-break/line-break-normal-half-kana.html
       css3/line-break/line-break-normal-hyphens.html
       css3/line-break/line-break-normal-inseparables.html
       css3/line-break/line-break-normal-iteration-marks.html
       css3/line-break/line-break-normal-postfixes.html
       css3/line-break/line-break-normal-prefixes.html
       css3/line-break/line-break-normal-sound-marks.html
       css3/line-break/line-break-strict-centered.html
       css3/line-break/line-break-strict-half-kana.html
       css3/line-break/line-break-strict-hyphens.html
       css3/line-break/line-break-strict-inseparables.html
       css3/line-break/line-break-strict-iteration-marks.html
       css3/line-break/line-break-strict-postfixes.html
       css3/line-break/line-break-strict-prefixes.html
       css3/line-break/line-break-strict-sound-marks.html

* platform/text/LineBreakIteratorPoolICU.h:
(WebCore::LineBreakIteratorPool::makeLocaleWithBreakKeyword):
Add static function to construct ICU locale argument (also used as pool key) with additional
break keyword.
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
(LineBreakIteratorPool):
Remove direct dependency from ICU library (and types), moving that dependency into
new {open,close}LineBreakIterator() functions (defined in TextBreakIteratorICU.cpp).
Update to take line break mode into account.
Create (and cache) different break iterators depending on line break mode (in addition to locale),
which entails expanding pool entry key format to optionally append "@break=" +
"loose"|"normal"|"strict" keyword to locale string.

* platform/text/TextBreakIterator.h:
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::isLooseCJKMode):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
Define LineBreakIteratorMode enumeration for use in TextBreakIterator et al.
Add state member to indicate line break mode.

* platform/text/TextBreakIteratorICU.cpp:
(WebCore::acquireLineBreakIterator):
Use new line break mode when making iterator from pool.
Handle change of return type of LineBreakIteratorPool::take() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::releaseLineBreakIterator):
Handle change of parameter type of LineBreakIteratorPool::put() to non-ICU type,
i.e., TextBreakIterator* instead of ICU's UBreakIterator*.
(WebCore::isCJKLocale):
New functions for determining if CJK rules apply.
(WebCore::openLineBreakIterator):
New function for abstracting opening of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.
This function also takes into account the line break mode.
(WebCore::closeLineBreakIterator):
(WebCore::mapLineIteratorModeToRules):
New function for abstracting closing of ICU style line break iterator. This is now
used in LineBreakIteratorPoolICU.h rather than having direct ICU API dependency there.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::nextLineBreak):
Pass line break iterator mode flag when reseting LazyLineBreakIterator.
Add looseMode local variable to prevent need for computing under isBreakable().

* rendering/RenderText.cpp:
(WebCore::mapLineBreakToIteratorMode):
Add implementation for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.
(WebCore::RenderText::computePreferredLogicalWidths):
Ensure (lazy line) breakIterator is initialized for line break mode.
Ensure isBreakable() is passed loose mode flag to match behavior in RenderBlock::LineBreaker::nextLineBreak.

* rendering/RenderText.h:
(WebCore):
Add declaration for mapLineBreakToIteratorMode(), used by both RenderText::computePreferredLogicalWidths
and RenderBlock::LineBreaker::nextLineBreak.

* rendering/break_lines.cpp:
(WebCore):
Introduce two (local) enums NBSPBehavior and LooseBehavior for expanding template on nextBreakablePosition
to include loose mode parameter.
(WebCore::isBreakableSpace):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation. Use new loose mode flavors off NBP functions.
(WebCore::needsLineBreakIterator):
Introduce loose mode behavior template parameter to optimize loose mode behavior code path in order
to prevent regression to non loose mode path.
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
Use new template parameter enums described above.
(WebCore::nextBreakablePositionIgnoringNBSPLoose):
(WebCore::nextBreakablePositionLoose):
Introduce two additional 'loose' mode flavors of NBP template expansions.

* rendering/break_lines.h:
(WebCore):
(WebCore::isBreakable):
Add externally specified loose mode parameter to prevent need to invoke line break iterator
accessor method on each invocation.

LayoutTests:

* css3/line-break/line-break-auto-centered-expected.html: Added.
* css3/line-break/line-break-auto-centered.html: Added.
* css3/line-break/line-break-auto-half-kana-expected.html: Added.
* css3/line-break/line-break-auto-half-kana.html: Added.
* css3/line-break/line-break-auto-hyphens-expected.html: Added.
* css3/line-break/line-break-auto-hyphens.html: Added.
* css3/line-break/line-break-auto-inseparables-expected.html: Added.
* css3/line-break/line-break-auto-inseparables.html: Added.
* css3/line-break/line-break-auto-iteration-marks-expected.html: Added.
* css3/line-break/line-break-auto-iteration-marks.html: Added.
* css3/line-break/line-break-auto-postfixes-expected.html: Added.
* css3/line-break/line-break-auto-postfixes.html: Added.
* css3/line-break/line-break-auto-prefixes-expected.html: Added.
* css3/line-break/line-break-auto-prefixes.html: Added.
* css3/line-break/line-break-auto-sound-marks-expected.html: Added.
* css3/line-break/line-break-auto-sound-marks.html: Added.
* css3/line-break/line-break-loose-centered-expected.html: Added.
* css3/line-break/line-break-loose-centered.html: Added.
* css3/line-break/line-break-loose-half-kana-expected.html: Added.
* css3/line-break/line-break-loose-half-kana.html: Added.
* css3/line-break/line-break-loose-hyphens-expected.html: Added.
* css3/line-break/line-break-loose-hyphens.html: Added.
* css3/line-break/line-break-loose-inseparables-expected.html: Added.
* css3/line-break/line-break-loose-inseparables.html: Added.
* css3/line-break/line-break-loose-iteration-marks-expected.html: Added.
* css3/line-break/line-break-loose-iteration-marks.html: Added.
* css3/line-break/line-break-loose-postfixes-expected.html: Added.
* css3/line-break/line-break-loose-postfixes.html: Added.
* css3/line-break/line-break-loose-prefixes-expected.html: Added.
* css3/line-break/line-break-loose-prefixes.html: Added.
* css3/line-break/line-break-loose-sound-marks-expected.html: Added.
* css3/line-break/line-break-loose-sound-marks.html: Added.
* css3/line-break/line-break-normal-centered-expected.html: Added.
* css3/line-break/line-break-normal-centered.html: Added.
* css3/line-break/line-break-normal-half-kana-expected.html: Added.
* css3/line-break/line-break-normal-half-kana.html: Added.
* css3/line-break/line-break-normal-hyphens-expected.html: Added.
* css3/line-break/line-break-normal-hyphens.html: Added.
* css3/line-break/line-break-normal-inseparables-expected.html: Added.
* css3/line-break/line-break-normal-inseparables.html: Added.
* css3/line-break/line-break-normal-iteration-marks-expected.html: Added.
* css3/line-break/line-break-normal-iteration-marks.html: Added.
* css3/line-break/line-break-normal-postfixes-expected.html: Added.
* css3/line-break/line-break-normal-postfixes.html: Added.
* css3/line-break/line-break-normal-prefixes-expected.html: Added.
* css3/line-break/line-break-normal-prefixes.html: Added.
* css3/line-break/line-break-normal-sound-marks-expected.html: Added.
* css3/line-break/line-break-normal-sound-marks.html: Added.
* css3/line-break/line-break-strict-centered-expected.html: Added.
* css3/line-break/line-break-strict-centered.html: Added.
* css3/line-break/line-break-strict-half-kana-expected.html: Added.
* css3/line-break/line-break-strict-half-kana.html: Added.
* css3/line-break/line-break-strict-hyphens-expected.html: Added.
* css3/line-break/line-break-strict-hyphens.html: Added.
* css3/line-break/line-break-strict-inseparables-expected.html: Added.
* css3/line-break/line-break-strict-inseparables.html: Added.
* css3/line-break/line-break-strict-iteration-marks-expected.html: Added.
* css3/line-break/line-break-strict-iteration-marks.html: Added.
* css3/line-break/line-break-strict-postfixes-expected.html: Added.
* css3/line-break/line-break-strict-postfixes.html: Added.
* css3/line-break/line-break-strict-prefixes-expected.html: Added.
* css3/line-break/line-break-strict-prefixes.html: Added.
* css3/line-break/line-break-strict-sound-marks-expected.html: Added.
* css3/line-break/line-break-strict-sound-marks.html: Added.

* platform/chromium/css3/line-break/line-break-auto-half-kana-expected.html: Added.
* platform/chromium/css3/line-break/line-break-auto-sound-marks-expected.html: Added.
Override reftest expectations on chromium due to different ICU auto behavior.

* platform/chromium-android/css3/line-break/line-break-auto-half-kana-expected.html: Added.
* platform/chromium-android/css3/line-break/line-break-auto-sound-marks-expected.html: Added.
Override override of reftest expectations on chromium due to different ICU auto behavior;
that is, chromium-android seems to follow the generic expectations.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Begin stubbing out the new remote layer tree drawing area
https://bugs.webkit.org/show_bug.cgi?id=101256

Reviewed by Andreas Kling.

* Shared/DrawingAreaInfo.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/DrawingArea.cpp:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Webkit does not handle some media keys correctly On Linux gtk platform.
https://bugs.webkit.org/show_bug.cgi?id=101221

Patch by Peng Huang <penghuang@google.com> on 2012-11-05
Reviewed by Alexey Proskuryakov.

Add media keyboard support on Linux gtk platform.

* platform/chromium/KeyCodeConversionGtk.cpp:
(WebCore::windowsKeyCodeForKeyEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@133531 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed gardening.

* platform/chromium-mac-mountainlion/TestExpectations:

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