Unreviewed GTK gardening.

Remove failure/timeout expectations for the following passed tests:
    fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-non-intersecting-underline.html
    fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html
    svg/custom/mouse-move-on-svg-container.xhtml
    svg/custom/mouse-move-on-svg-root.xhtml
    fast/css/style-scoped/style-scoped-with-dom-operation.html

http/tests/download failures only affect gtk-wk1 now

Report and mark flaky tests:
    http/tests/w3c/webperf/approved/navigation-timing/html/test_timing_attributes_order.html
    fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html
    fast/parser/document-write-basic.html
    http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion.html
    media/crash-closing-page-with-media-as-plugin-fallback.html

Add timeout to flaky test media/audio-garbage-collect.html

Report and mark failed tests:
     accessibility/range-alter-by-percent.html
     media/video-restricted-no-preload-auto.html

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-01-28

* platform/gtk/TestExpectations:
* platform/gtk-wk1/TestExpectations:
* platform/gtk-wk2/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162963 268f45cc-cd09-0410-ab3c-d52691b4dbfc
API::PolicyClient::decidePolicyForNavigationAction should take a NavigationActionData object
https://bugs.webkit.org/show_bug.cgi?id=127798

Reviewed by Tim Horton.

* UIProcess/API/APIPolicyClient.h:
(API::PolicyClient::decidePolicyForNavigationAction):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPagePolicyClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Tweak UI when debugging a JSContext
https://bugs.webkit.org/show_bug.cgi?id=127799

Reviewed by Timothy Hatcher.

* UserInterface/DashboardView.css:
(.toolbar.javascript .dashboard):
(.toolbar.web.collapsed .dashboard > .logs):
(.toolbar.javascript .dashboard > .resourcesCount):
Adjust collapsed dashboard in web and javascript debugging modes.
JavaScript debugging mode is always treated as collapsed.

* UserInterface/Main.js:
(WebInspector.contentLoaded):
Adjust what is created and shown when in javascript debugging mode.

* UserInterface/NavigationSidebarPanel.css:
(.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons .item.small):
* UserInterface/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel):
(WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
* UserInterface/TimelineSidebarPanel.css:
(.sidebar > .panel.timeline > .status-bar):
(.sidebar > .panel.timeline > .title-bar):
When javascript debugging expect to put things at the root level, so hide
disclosure buttons and adjust the style so resources look nice here.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed follow-up to r162965. Better coding style.

Timothy Hatcher pointed out a clearer style for classes
on the <body> is to specify body.class. I agree.

* UserInterface/DashboardView.css:
(body.javascript .toolbar .dashboard):
(body.web .toolbar.collapsed .dashboard > .logs):
(body.javascript .toolbar .dashboard > .resourcesCount):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove WebPageProxy::canGoBack and WebPageProxy::canGoForward
https://bugs.webkit.org/show_bug.cgi?id=127803

Reviewed by Andreas Kling.

* UIProcess/API/C/WKPage.cpp:
(WKPageCanGoForward):
(WKPageCanGoBack):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController canGoForward]):
(-[WKBrowsingContextController canGoBack]):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goForward):
(WebKit::WebPageProxy::goBack):
(WebKit::WebPageProxy::sendWheelEvent):
* UIProcess/WebPageProxy.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION: JavascriptCore crash during OS Installation (due to
Heap::m_operationInProgress ASSERT vs DelayedReleaseScope)
https://bugs.webkit.org/show_bug.cgi?id=127793

Reviewed by Mark Hahnenberg.

This was a mistaken ASSERT.

* API/tests/testapi.mm:
(-[EvilAllocationObject doEvilThingsWithContext:]): Added a test to verify
that GC from a DelayedReleaseScope doesn't crash.

* heap/DelayedReleaseScope.h:
(JSC::DelayedReleaseScope::~DelayedReleaseScope): Our contract is that
it is valid to do anything while running a DelayedReleaseScope -dealloc
method, so the Heap must be ready for new allocations and collections.

Change the Heap's operationInProgress value to NoOperation while running
-dealloc methods, so that it doesn't ASSERT in the face of new allocations
and collections.

* heap/Heap.h: Made DelayedReleaseScope a friend because exposing a setter
for m_operationInProgress seemed like the worse of the two options for
encapsulation: we don't really want arbitrary clients to set the Heap's
m_operationInProgress.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove some unneeded debugger code.
https://bugs.webkit.org/show_bug.cgi?id=127805.

Reviewed by Oliver Hunt.

JSC will now always support the debugger. Hence, the #if ENABLE(JAVASCRIPT_DEBUGGER)
checks can be removed.

DebuggerCallFrame::callFrame() is also unused and will be removed.

* debugger/Breakpoint.h:
* debugger/Debugger.cpp:
* debugger/DebuggerCallFrame.h:
* inspector/InjectedScript.cpp:
(Inspector::InjectedScript::wrapCallFrames):
* inspector/InjectedScript.h:
* inspector/JSGlobalObjectScriptDebugServer.cpp:
* inspector/JSGlobalObjectScriptDebugServer.h:
* inspector/JSJavaScriptCallFrame.cpp:
* inspector/JSJavaScriptCallFrame.h:
* inspector/JSJavaScriptCallFramePrototype.cpp:
* inspector/JSJavaScriptCallFramePrototype.h:
* inspector/JavaScriptCallFrame.cpp:
* inspector/JavaScriptCallFrame.h:
* inspector/ScriptDebugListener.h:
* inspector/ScriptDebugServer.cpp:
* inspector/ScriptDebugServer.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::InspectorRuntimeAgent::InspectorRuntimeAgent):
(Inspector::setPauseOnExceptionsState):
(Inspector::InspectorRuntimeAgent::evaluate):
(Inspector::InspectorRuntimeAgent::callFunctionOn):
(Inspector::InspectorRuntimeAgent::getProperties):
* inspector/agents/InspectorRuntimeAgent.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Teach Buildbot dashboard to parse alternative revision format
https://bugs.webkit.org/show_bug.cgi?id=127561

Reviewed by Alexey Proskuryakov.

Add support for extracting the OpenSource and Internal revision numbers when Buildbot
returns a dictionary for the value of property got_revision.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(isMultiCodebaseGotRevisionProperty): Added.
(parseRevisionProperty): Added; parses Buildbot revision property, which can either be a
string or a dictionary.
(BuildbotIteration.prototype.update.): Modified to call parseRevisionProperty() to determine
the OpenSource and Internal revision numbers.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ASSERT_WITH_SECURITY_IMPLICATION in WebCore::InlineTextBox::paint
https://bugs.webkit.org/show_bug.cgi?id=114586

Reviewed by Dave Hyatt.

Taken mostly from https://chromium.googlesource.com/chromium/blink/+/cb2297db16f2e9328cb4dd8b552093d6b22340a8

If RenderQuote is a subclass of RenderObject, it can't be split by the first-letter CSS pseudoclass.
Instead, we should make it a subclass of RenderElement, so that it can be split properly.

Source/WebCore:

Test: fast/css-generated-content/quote-first-letter.html

* dom/PseudoElement.cpp:
(WebCore::PseudoElement::didRecalcStyle):
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::RenderQuote):
(WebCore::RenderQuote::willBeDestroyed):
(WebCore::RenderQuote::willBeRemovedFromTree):
(WebCore::RenderQuote::styleDidChange):
(WebCore::RenderQuote::updateText):
(WebCore::RenderQuote::computeText):
(WebCore::RenderQuote::updateDepth):
* rendering/RenderQuote.h:
* rendering/style/ContentData.cpp:
(WebCore::QuoteContentData::createContentRenderer):

LayoutTests:

This adds a test to make sure that the splitting behavior occurs, as well as updates existing tests that
didn't use the splitting behavior.

* fast/css-generated-content/quote-first-letter-expected.html: Added.
* fast/css-generated-content/quote-first-letter.html: Added.
* platform/mac/fast/css-generated-content/005-expected.txt:
* platform/mac/fast/css-generated-content/beforeAfter-interdocument-expected.txt:
* platform/mac/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
* platform/mac/fast/css-generated-content/no-openclose-quote-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r162947): css3/flexbox/multiline-justify-content.html and
css3/flexbox/position-absolute-child.html are timing out
https://bugs.webkit.org/show_bug.cgi?id=127809

* platform/mac/TestExpectations: Skipping for now, Antti is going to take a look tomorrow.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed EFL WebKit2 build fix.

* CMakeLists.txt: Added Shared/NavigationActionData.cpp

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162976 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Set INSTALL_PATH_ACTUAL when building WebKit2 for the iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=127811

Reviewed by Dan Bernstein.

* Configurations/WebKit2.xcconfig:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162977 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r162947): Repaint test results are different between WK1 and WK2
https://bugs.webkit.org/show_bug.cgi?id=127814

* platform/mac-wk2/TestExpectations: Marking them as failing for now.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162978 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Simplify WebFrame::isMainFrame
https://bugs.webkit.org/show_bug.cgi?id=127812

Reviewed by Sam Weinig.

* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::isMainFrame):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162980 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add WebDocumentLoader, a WebCore::DocumentLoader subclass
https://bugs.webkit.org/show_bug.cgi?id=127817

Reviewed by Tim Horton.

We need a place to store navigation IDs, and since they are per document loader, putting them
in a DocumentLoader subclass seems like a good idea.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createDocumentLoader):
* WebProcess/WebPage/WebDocumentLoader.cpp: Added.
(WebKit::WebDocumentLoader::WebDocumentLoader):
(WebKit::WebDocumentLoader::setNavigationID):
* WebProcess/WebPage/WebDocumentLoader.h: Added.
(WebKit::WebDocumentLoader::create):
(WebKit::WebDocumentLoader::navigationID):

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

* WebProcess/WebPage/WebFrame.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKit2 View Gestures (Swipe): Give WebCore the first crack at scroll events if it needs it
https://bugs.webkit.org/show_bug.cgi?id=127396

Reviewed by Anders Carlsson.

* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
* UIProcess/API/mac/WKView.mm:
(-[WKView _wheelEventWasNotHandledByWebCore:]):
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveEvent):
In addition to informing the page client about un-handled wheel events,
inform the ViewGestureController, in a roundabout way.

* UIProcess/mac/ViewGestureController.h:
Add and use SwipeDirection enum instead of 'bool willSwipeLeft'.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::handleScrollWheelEvent):
If we get a Begin scroll wheel event, any previously deferred
swipes are invalid.

If the page has subframes or wheel handlers, defer starting the
swipe until we get a wheelEventWasNotHandledByWebCore back from the WebProcess.

(WebKit::ViewGestureController::wheelEventWasNotHandledByWebCore):
Start the swipe if the WebProcess didn't eat the event.

(WebKit::ViewGestureController::trackSwipeGesture):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::handleSwipeGesture):
Use SwipeDirection.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Improve latching behavior for wheel events
https://bugs.webkit.org/show_bug.cgi?id=127386
<rdar://problem/12176858>

Reviewed by Simon Fraser.

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::clearLatchedNode): Added
(WebCore::ScrollingTree::latchedNode): Added
(WebCore::ScrollingTree::removeDestroyedNodes): Clear latched node if it's being removed.
(WebCore::ScrollingTree::ScrollingTree): Initialize new value used for tracking
scroll latching state.
(WebCore::ScrollingTree::setLatchedNode): Added
(WebCore::ScrollingTree::setOrClearLatchedNode): Added
Set latched node when beginning a swipe event, or clear latched node when scroll/momentum ends.
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Check for an existing
latched node and stay in fast scrolling mode if possible. If the current event should
start a swipe event, clear the current latched node so we can correctly find and assign
the new latch node.
* page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::hasLatchedNode): Added
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::handleWheelEvent): Determine latching state
based on wheel event state and position of mouse pointer in the document.
* platform/ScrollAnimator.cpp:
(ScrollAnimator::handleWheelEvent): Always treat PlatformWheelEventPhaseMayBegin
as successfully handled so that it does not "bubble back up" to the root of
the scrolling tree.   


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@162985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Support @scope in HTML tables
https://bugs.webkit.org/show_bug.cgi?id=127688

Reviewed by Mario Sanchez Prada.

Source/WebCore: 

Add support for scope attribute so that row headers and column headers
are now exposed at the table cell level where appropriate.

Test: platform/mac/accessibility/table-scope.html

* accessibility/AccessibilityARIAGridCell.cpp:
(WebCore::AccessibilityARIAGridCell::parentTable):
* accessibility/AccessibilityARIAGridCell.h:
* accessibility/AccessibilityARIAGridRow.cpp:
(WebCore::AccessibilityARIAGridRow::parentTable):
* accessibility/AccessibilityARIAGridRow.h:
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::columns):
(WebCore::AccessibilityTable::rows):
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::parentTable):
(WebCore::AccessibilityTableCell::isTableHeaderCell):
(WebCore::AccessibilityTableCell::isTableCellInSameRowGroup):
(WebCore::AccessibilityTableCell::isTableCellInSameColGroup):
(WebCore::AccessibilityTableCell::columnHeaders):
(WebCore::AccessibilityTableCell::rowHeaders):
* accessibility/AccessibilityTableCell.h:
* accessibility/AccessibilityTableRow.cpp:
(WebCore::AccessibilityTableRow::parentTable):
* accessibility/AccessibilityTableRow.h:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Tools: 

Add support for rowHeaders and columnHeaders.

* DumpRenderTree/AccessibilityUIElement.cpp:
(convertElementsToObjectArray):
(columnHeadersCallback):
(rowHeadersCallback):
(uiElementArrayAttributeValueCallback):
(AccessibilityUIElement::columnHeaders):
(AccessibilityUIElement::rowHeaders):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::rowHeaders):
(AccessibilityUIElement::columnHeaders):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
(WTR::AccessibilityUIElement::rowHeaders):
(WTR::AccessibilityUIElement::columnHeaders):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::convertElementsToObjectArray):
(WTR::AccessibilityUIElement::rowHeaders):
(WTR::AccessibilityUIElement::columnHeaders):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):

LayoutTests: 

* platform/mac/accessibility/aria-columnrowheaders-expected.txt:
* platform/mac/accessibility/table-attributes-expected.txt:
* platform/mac/accessibility/table-cell-spans-expected.txt:
* platform/mac/accessibility/table-cells-expected.txt:
* platform/mac/accessibility/table-scope-expected.txt: Added.
* platform/mac/accessibility/table-scope.html: Added.
* platform/mac/accessibility/table-sections-expected.txt:



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