[cairo] Initialize the m_compositorTexture in GraphicsContext3DCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=122285

Patch by Alejandro G. Castro <alex@igalia.com> on 2013-10-03
Reviewed by Noam Rosenthal.

Initialize to the default texture to avoid the random texture name
and generate the texture name.

* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::GraphicsContext3D): Initialize
m_compositorTexture.
(WebCore::GraphicsContext3D::~GraphicsContext3D): Delete the
generated textures names.
* platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs): Generate the texture
names for m_compositorTexture and m_texture.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156848 268f45cc-cd09-0410-ab3c-d52691b4dbfc
video-object-fit tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=121803

I'm not quite sure what's going on, but [ Pass Failure ] expectations didn't cut it.
Trying [ Pass ImageOnlyFailure ], as the failures are always image only anyway.

* platform/mac/TestExpectations:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156849 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Follow-up code style change after bug #121828 All regions have layers
https://bugs.webkit.org/show_bug.cgi?id=122265

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-10-03
Reviewed by Darin Adler.

Comments moved to the cpp file, as requested in the review of bug #121828 All regions have layers.

No new tests, no behavior change.

* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::requiresLayer):
* rendering/RenderMultiColumnSet.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::requiresLayer):
* rendering/RenderRegion.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156850 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] Revise the CSS property parsing tests
https://bugs.webkit.org/show_bug.cgi?id=122251

Reviewed by Andreas Kling.

Flattened the shapes CSS property parsing tests by inserting the code from
the fast/shapes/parsing/script-tests subdirectory into the test HTML source
files. The subdirectory is now empty and the tests are easier to read.

* fast/shapes/parsing/parsing-shape-image-threshold.html: Inserted parsing-shape-image-threshold.js instead of referring to it with script src.
* fast/shapes/parsing/parsing-shape-inside.html: Likewise
* fast/shapes/parsing/parsing-shape-lengths.html: Likewise
* fast/shapes/parsing/parsing-shape-margin.html: Likewise
* fast/shapes/parsing/parsing-shape-outside.html: Likewise
* fast/shapes/parsing/parsing-shape-padding.html: Likewise
* fast/shapes/parsing/parsing-test-utils.js: Renamed from LayoutTests/fast/shapes/parsing/script-tests/parsing-test-utils.js.
(getCSSText):
(getComputedStyleValue):
(getParentAndChildComputedStyles):
(getParentAndChildComputedStylesString):
(getChildComputedStyle):
(testShapeSpecifiedProperty):
(testShapeComputedProperty):
(testNotInheritedShapeChildProperty):
(property):
* fast/shapes/parsing/script-tests/parsing-shape-image-threshold.js: Removed.
* fast/shapes/parsing/script-tests/parsing-shape-inside.js: Removed.
* fast/shapes/parsing/script-tests/parsing-shape-lengths.js: Removed.
* fast/shapes/parsing/script-tests/parsing-shape-margin.js: Removed.
* fast/shapes/parsing/script-tests/parsing-shape-outside.js: Removed.
* fast/shapes/parsing/script-tests/parsing-shape-padding.js: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156851 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] Support the shape-image-threshold property
https://bugs.webkit.org/show_bug.cgi?id=122254

Reviewed by Andreas Kling.

Source/WebCore:

Replace the hardwired 0 Shape::createShape() threshold parameter with the style's
shapeImageThreshold() value (which has been clamped to [0,1]).

Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-001.html
       fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-002.html

* rendering/shapes/ShapeInfo.cpp:
(WebCore::::computedShape):

LayoutTests:

Verify that a shape-outside image whose pixels' alpha channels are all above shape-image-threshold causes
layout to skirt the shape, and similarly that an image whose pixels' alpha channels are all below the threshold
has no effect on the layout.

* fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-001-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-001.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-002-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-image-threshold-002.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156852 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Flaky Test: fast/history/history-back-while-pdf-in-pagecache.html
https://bugs.webkit.org/show_bug.cgi?id=121628

* platform/mac/TestExpectations: Marking as such.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156853 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix LeaksViewer to load leaks results from MountainLion, not Lion.

Rubber-stamped by Tim Horton.

* BuildSlaveSupport/build.webkit.org-config/public_html/LeaksViewer/LeaksViewer.js:
(LeaksViewer._displayURLPrompt):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156854 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Layout Test for selecting text in 2 regions
https://bugs.webkit.org/show_bug.cgi?id=121841

Reviewed by Alexandru Chiculita.

Add new reftest for selecting text in 2 regions. It compares the
behavior (highlighted text and selected content) in regions and absolute
positions.

* fast/regions/resources/helper.js: Add new function to set selected
content in an element onmouseup.
(onMouseUpLogSelection.document.onmouseup):
(onMouseUpLogSelection):
* fast/regions/resources/region-style.css: Define some styles that could
be reused in other tests.
* fast/regions/selection/selecting-text-in-2-regions-expected.html:
Added.
* fast/regions/selection/selecting-text-in-2-regions.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156857 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Eliminate unused JITStub function declarations
https://bugs.webkit.org/show_bug.cgi?id=122288

Reviewed by Geoffrey Garen.

Removed unused JITStub declarations.

* jit/JITStubs.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156858 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use numeric strings in the OS version dictionary
https://bugs.webkit.org/show_bug.cgi?id=122300

Reviewed by Mark Rowe.

* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo._determine_mac_version):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156859 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Ignore deprecation warnings
https://bugs.webkit.org/show_bug.cgi?id=122302

Reviewed by Mark Rowe.

Source/WebCore:

* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper convertPointToScreenSpace:]):
* bindings/objc/DOMHTML.mm:
(-[DOMHTMLInputElement _rectOnScreen]):
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
* page/mac/FrameSnapshottingMac.mm:
(WebCore::imageFromRect):
* platform/graphics/mac/IconMac.mm:
(WebCore::Icon::Icon):
* platform/mac/DragImageMac.mm:
(WebCore::scaleDragImage):
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::globalPoint):
* platform/mac/ScrollViewMac.mm:
(WebCore::ScrollView::platformContentsToScreen):
(WebCore::ScrollView::platformScreenToContents):

Source/WebKit/mac:

* Misc/WebIconDatabase.mm:
(-[WebIconDatabase _scaleIcon:toSize:]):
(webGetNSImage):
* Misc/WebNSImageExtras.m:
(-[NSImage _web_scaleToMaxSize:]):
(-[NSImage _web_dissolveToFraction:]):
* Misc/WebNSViewExtras.m:
(-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]):
(-[NSView _web_convertRect:toView:]):
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::mouseEvent):
* Plugins/Hosted/WebTextInputWindowController.m:
(-[WebTextInputPanel _interpretKeyEvent:string:]):
* Plugins/WebBaseNetscapePluginView.mm:
(-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::startDrag):
* WebInspector/WebNodeHighlight.mm:
(-[WebNodeHighlight _computeHighlightWindowFrame]):
* WebView/WebFullScreenController.mm:
(-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
(-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
* WebView/WebHTMLView.mm:
(+[WebHTMLView _postFlagsChangedEvent:]):
(-[WebHTMLView _updateMouseoverWithFakeEvent]):
(-[WebHTMLView _autoscroll]):
(-[WebHTMLView mouseDown:]):
(-[WebHTMLView mouseDragged:]):
(-[WebHTMLView mouseUp:]):
(-[WebHTMLView accessibilityHitTest:]):
(-[WebHTMLView _executeSavedKeypressCommands]):
(-[WebHTMLView attachRootLayer:]):
(-[WebHTMLView textStorage]):
(-[WebHTMLView _updateSelectionForInputManager]):
* WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController _buildUI]):
(-[WebTextCompletionController _placePopupWindow:]):

Source/WebKit2:

* Shared/mac/WebEventFactory.mm:
(WebKit::globalPoint):
* UIProcess/API/mac/FindIndicatorWindow.mm:
(WebKit::FindIndicatorWindow::setFindIndicator):
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::screenToWindow):
(WebKit::PageClientImpl::windowToScreen):
* UIProcess/API/mac/WKTextInputWindowController.mm:
(-[WKTextInputPanel _interpretKeyEvent:usingLegacyCocoaTextInput:string:]):
(-[WKTextInputPanel _hasMarkedText]):
* UIProcess/API/mac/WKView.mm:
(-[WKView characterIndexForPoint:]):
(-[WKView firstRectForCharacterRange:actualRange:]):
(-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]):
(-[WKView _setDragImage:at:linkDrag:]):
(-[WKView performDictionaryLookupAtCurrentMouseLocation]):
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):
(-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]):
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
* UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::showPopupMenu):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156860 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Create CoordinatedDrawingArea / CoordinatedDrawingAreaProxy
https://bugs.webkit.org/show_bug.cgi?id=122207

Patch by Sergio Correia <sergio.correia@openbossa.org> on 2013-10-03
Reviewed by Anders Carlsson.

Since Apple are moving away from DrawingAreaImpl, Coordinated Graphics
should have its own drawing area.

* CMakeLists.txt: Use CoordinatedDrawingArea and
CoordinatedDrawingAreaProxy instead of the DrawingAreaImpl /
DrawingAreaProxyImpl.
* Shared/DrawingAreaInfo.h: Add DrawingAreaTypeCoordinated.
* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
Added, copied from DrawingAreaProxyImpl.cpp.
* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h: Added,
copied from DrawingAreaProxyImpl.h.
* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::createDrawingAreaProxy): Use CoordinatedDrawingAreaProxy.
* UIProcess/DrawingAreaProxyImpl.cpp: Remove Coordinated Graphics
bits.
* UIProcess/DrawingAreaProxyImpl.h: Ditto.
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
Added, copied from DrawingAreaImpl.cpp.
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
Added, copied from DrawingAreaImpl.h.
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush): Use
CoordinatedDrawingArea.
* WebProcess/WebPage/DrawingArea.cpp:
(WebKit::DrawingArea::create): Handle the DrawingAreaTypeCoordinated
in the DrawingArea creation code.
* WebProcess/WebPage/DrawingAreaImpl.cpp: Remove Coordinated Graphics
bits.
* WebProcess/WebPage/DrawingAreaImpl.h: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156861 268f45cc-cd09-0410-ab3c-d52691b4dbfc
../JavaScriptCore: [Win] Update solutions and projects to support 64-bit builds.
https://bugs.webkit.org/show_bug.cgi?id=122225

Reviewed by Anders Carlsson.

Revise ordering of CPU(X86) and CPU(X86_64) tests, because MSVC always defines
both when targeting a 64-bit build.

* JavaScriptCore.vcxproj/JavaScriptCore.submit.sln: Add an x64 target
for 64-bit builds.

../WTF: [Win] Update solutions and projects to support 64-bit build.
https://bugs.webkit.org/show_bug.cgi?id=122225

Reviewed by Anders Carlsson.

* WTF.vcxproj/WTF.submit.sln: Add x64 architecture targets.
* WTF.vcxproj/WTF.vcxproj: Correct path to config.h file.
* WTF.vcxproj/WTF.vcxproj.filters: Correct path to config.h file.


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

* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Clean up the
paths for various files added outside of Visual Studio. They are all
displayed in the root of the project, rather than the proper sub-folder.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156863 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[mac][wk2] ScrollPinningBehaviors, SpacebarScrolling, and ScrollByLineCommands fail after r156793
https://bugs.webkit.org/show_bug.cgi?id=122299

Reviewed by Beth Dakin.

* TestWebKitAPI/Tests/WebKit2/ScrollPinningBehaviors.cpp:
Disable threaded scrolling.

* TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:
* TestWebKitAPI/Tests/WebKit2/mac/EditorCommands.mm:
Synchronously wait for the scrolling thread to inform the main thread of the new scroll position.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156864 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a testcase for a bug that I had during the development. This code uses the asm.js style.
https://bugs.webkit.org/show_bug.cgi?id=122286

Patch by Nadav Rotem <nrotem@apple.com> on 2013-10-03
Reviewed by Filip Pizlo.

* js/regress/asmjs_bool_bug-expected.txt: Added.
* js/regress/asmjs_bool_bug.html: Added.
* js/regress/script-tests/asmjs_bool_bug.js: Added.
(strlen):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156865 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove Qt builders from the flakiness dashboard.

* TestResultServer/static-dashboards/builders.jsonp:
* TestResultServer/static-dashboards/flakiness_dashboard.js:
* TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
* TestResultServer/static-dashboards/loader_unittests.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156866 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Regression: AX: <table><caption> no longer exposed as AXTitle.
https://bugs.webkit.org/show_bug.cgi?id=121977

Patch by Samuel White <samuel_white@apple.com> on 2013-10-03
Reviewed by Darin Adler.

Source/WebCore:

Some cleanup of accessibilityText. Notably, subclasses were unnecessarily redeclaring this method as both private and
protected. Added OVERRIDE keyword to these subclasses as needed. Moved titleElementText to virtual so we can do subclass
overrides in cases like this bug. That is, AccessibilityTable can leverage the existing machinery for alternativeText,
visibleText, and helpText, but we do some custom work ONLY in titleElementText.

Test: accessibility/table-title.html

* accessibility/AccessibilityImageMapLink.h:
* accessibility/AccessibilityMediaControls.h:
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::titleElementText):
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::titleElementText):
* accessibility/AccessibilityTable.h:

LayoutTests:

Added test to verify that table elements correctly derive their AXTitle from their associated caption element.

* accessibility/table-title-expected.txt: Added.
* accessibility/table-title.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156867 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Re-remove Qt TestExpectations re-added in r156841 after r156866.

* platform/qt: Removed.
* platform/qt/TestExpectations: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156868 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix the HTMLSelectElement.prototype.remove() method
https://bugs.webkit.org/show_bug.cgi?id=121586

Reviewed by Darin Adler.

Source/WebCore:

Fix the HTMLSelectElement.prototype.remove() method so that it behaves like
Element.remove() if no argument is passed (from ChildNode). This behavior
is consistent with Firefox and Blink.

See https://www.w3.org/Bugs/Public/show_bug.cgi?id=20720 for more
information.

Tests: js/dom/select-options-remove.html

* bindings/js/JSHTMLOptionsCollectionCustom.cpp:
(WebCore::JSHTMLOptionsCollection::remove):
Stop calling JSHTMLSelectElement::remove() blindly as it is dangerous, especially
now that calling it without argument now detaches the element. Instead, have the
bindings call the corresponding methods on the HTMLOptionsCollection implementation
object, as it should.

* bindings/js/JSHTMLSelectElementCustom.cpp:
(WebCore::JSHTMLSelectElement::remove):
Call Element::remove() if no argument is given.

* html/HTMLOptionsCollection.cpp:
(WebCore::HTMLOptionsCollection::remove):
* html/HTMLOptionsCollection.h:
* html/HTMLSelectElement.cpp:
* html/HTMLSelectElement.h:
Rename remove(int) to removeByIndex(int) to avoid conflict with
Node::remove(ExceptionCode&).

LayoutTests:

Add test to make sure calling HTMLSelectElement.prototype.remove() detaches the
select element from its parent, as Element::remove() would.

* js/dom/select-options-remove-expected.txt:
* js/resources/select-options-remove.js:


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