WebKit-https.git
6 years agoRemove public attachRenderTree
antti@apple.com [Thu, 2 Jan 2014 09:49:41 +0000 (09:49 +0000)]
Remove public attachRenderTree
https://bugs.webkit.org/show_bug.cgi?id=126368

Reviewed by Andreas Kling.

Remove the remaining explicit render tree construction.

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

   Use recalcStyle() instead of calling attachRenderTree directly.

* html/HTMLViewSourceDocument.cpp:
(WebCore::HTMLViewSourceDocument::addText):

    Remove forgotten attachTextRenderer.

* html/shadow/InsertionPoint.cpp:
(WebCore::InsertionPoint::InsertionPoint):

    Remove willAttachRenderers/didAttachRenderers hack.

* html/shadow/InsertionPoint.h:
(WebCore::toInsertionPoint):
* loader/PlaceholderDocument.cpp:
(WebCore::PlaceholderDocument::createRenderTree):

    Seriously, nothing to do here.

* style/StyleResolveTree.cpp:
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::attachChildren):
(WebCore::Style::detachDistributedChildren):
(WebCore::Style::detachChildren):

    Making attaching and detaching distributed insertion point children part of ResolveTree internals.

* style/StyleResolveTree.h:

    Remove interfaces with no clients.

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

6 years agoRemove stale ScriptProfiler methods
seokju@webkit.org [Thu, 2 Jan 2014 06:21:06 +0000 (06:21 +0000)]
Remove stale ScriptProfiler methods
https://bugs.webkit.org/show_bug.cgi?id=126373

Reviewed by Darin Adler.

No new tests, No change behavior.

* bindings/js/ScriptProfiler.h: Remove dead code.

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

6 years agoRemove ChromeClient::fullScreenRendererChanged().
akling@apple.com [Thu, 2 Jan 2014 03:22:05 +0000 (03:22 +0000)]
Remove ChromeClient::fullScreenRendererChanged().
<https://webkit.org/b/126370>

This hook was added in r75277 to notify WebFullScreenController when
the full screen renderer changed. In r110216 the code was refactored,
making this notification unnecessary.

Reviewed by Antti Koivisto.

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

6 years agoFix the build by exposing some more scrolling state node headers
simon.fraser@apple.com [Thu, 2 Jan 2014 02:07:10 +0000 (02:07 +0000)]
Fix the build by exposing some more scrolling state node headers
as Private in WebCore.framework.

* WebCore.xcodeproj/project.pbxproj:

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

6 years ago[EFL] Unreviewed build fix after r160903 when ACCESSIBILITY is disabled
ryuan.choi@samsung.com [Thu, 2 Jan 2014 01:30:20 +0000 (01:30 +0000)]
[EFL] Unreviewed build fix after r160903 when ACCESSIBILITY is disabled

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::children):

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

6 years agoRenderScrollbar: Map of scrollbar parts should use RenderPtr.
akling@apple.com [Thu, 2 Jan 2014 00:52:55 +0000 (00:52 +0000)]
RenderScrollbar: Map of scrollbar parts should use RenderPtr.
<https://webkit.org/b/126367>

Turn RenderScrollbar::m_parts into HashMap of RenderPtrs. This makes
renderer destruction automatic and lets us remove some code.

Reviewed by Antti Koivisto.

* rendering/RenderPtr.h:

    Add HashTraits for RenderPtr so we can use them as values in
    WTF hash tables.

* rendering/RenderScrollbar.h:
* rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::~RenderScrollbar):
(WebCore::RenderScrollbar::setParent):
(WebCore::RenderScrollbar::updateScrollbarParts):
(WebCore::RenderScrollbar::updateScrollbarPart):

    Remove now-unneeded kludges of logic to manually delete scrollbar
    part renderers in various scenarios.

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

6 years agoRemove reattachRenderTree
antti@apple.com [Thu, 2 Jan 2014 00:31:40 +0000 (00:31 +0000)]
Remove reattachRenderTree
https://bugs.webkit.org/show_bug.cgi?id=126366

Reviewed by Andreas Kling.

Remove the last remaining client.

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::parseAttribute):

    Reconstruct render tree asynchronously.

(WebCore::HTMLSelectElement::scrollToSelection):
(WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
(WebCore::HTMLSelectElement::selectOption):

    It is not safe to cast the renderer based on usesMenuList test. Switch to RenderObject::isMenuList test.

(WebCore::HTMLSelectElement::parseMultipleAttribute):

    Reconstruct render tree asynchronously.

(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::defaultEventHandler):
* style/StyleResolveTree.cpp:
* style/StyleResolveTree.h:

    Remove the function.

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

6 years agoCreate a ThreadedScrollingTree subclass of ScrollingTree, and push all knowledge...
simon.fraser@apple.com [Wed, 1 Jan 2014 23:20:25 +0000 (23:20 +0000)]
Create a ThreadedScrollingTree subclass of ScrollingTree, and push all knowledge of the scrolling thread into it
https://bugs.webkit.org/show_bug.cgi?id=126362

Reviewed by Sam Weinig.

Eventually we'll have a ScrollingTree in situations where there is no scrolling
thread, so make the ScrollingTree base class thread-agnostic (but threadsafe),
and subclass it in ThreadedScrollingTree for scrolling-thread-specific functionality.

The ScrollingTree base class also no longer needs to know about the
ScrollingCoordinator.

ScrollingCoordinatorMac creates a ThreadedScrollingTree.

Source/WebCore:

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj: Add ThreadedScrollingTree.*
Make some headers Private that we'll need in WebKit2 soon.
* page/scrolling/ScrollingStateTree.h: Drive-by cleanup: clone() was unimplemented.
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::ScrollingTree):
(WebCore::ScrollingTree::~ScrollingTree):
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Wrap up some logic that
involves taking the mutex, so ThreadedScrollingTree can conveniently call it.
(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::setMainFrameScrollPosition):
(WebCore::ScrollingTree::isHandlingProgrammaticScroll):
* page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::isThreadedScrollingTree):
(WebCore::ScrollingTree::invalidate):
* page/scrolling/ThreadedScrollingTree.cpp: Added.
(WebCore::ThreadedScrollingTree::create):
(WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::~ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::tryToHandleWheelEvent):
(WebCore::ThreadedScrollingTree::handleWheelEvent):
(WebCore::derefScrollingCoordinator):
(WebCore::ThreadedScrollingTree::invalidate):
(WebCore::ThreadedScrollingTree::commitNewTreeState):
(WebCore::ThreadedScrollingTree::updateMainFrameScrollPosition):
(WebCore::ThreadedScrollingTree::handleWheelEventPhase):
* page/scrolling/ThreadedScrollingTree.h: Added.
(WebCore::ThreadedScrollingTree::isThreadedScrollingTree):
* page/scrolling/mac/ScrollingCoordinatorMac.h:
* page/scrolling/mac/ScrollingCoordinatorMac.mm:
(WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
(WebCore::ScrollingCoordinatorMac::handleWheelEvent):

Source/WebKit2:

* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::addScrollingTreeForPage):
(WebKit::EventDispatcher::wheelEvent):
* WebProcess/WebPage/EventDispatcher.h:

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

6 years agoFrameView: Store scroll corner renderer in a RenderPtr.
akling@apple.com [Wed, 1 Jan 2014 23:18:46 +0000 (23:18 +0000)]
FrameView: Store scroll corner renderer in a RenderPtr.
<https://webkit.org/b/126364>

Make FrameView::m_scrollCorner a RenderPtr<RenderScrollbarPart> and
remove two manual destroy() calls.

Reviewed by Antti Koivisto.

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

6 years agoRemove elementChildren/elementDescendants shorthands
antti@apple.com [Wed, 1 Jan 2014 21:48:13 +0000 (21:48 +0000)]
Remove elementChildren/elementDescendants shorthands
https://bugs.webkit.org/show_bug.cgi?id=126363

Reviewed by Anders Carlsson.

Just use childrenOfType<Element>/descendantsOfType<Element> instead. They are not that much longer
and consistency is valuable.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
(WebCore::siblingWithAriaRole):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):
* css/StyleInvalidationAnalysis.cpp:
(WebCore::StyleInvalidationAnalysis::invalidateStyle):
* dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::namedItem):
* dom/Document.cpp:
(WebCore::Document::buildAccessKeyMap):
(WebCore::Document::childrenChanged):
* dom/Element.cpp:
(WebCore::Element::resetComputedStyle):
* dom/ElementChildIterator.h:
* dom/ElementDescendantIterator.h:
* dom/SelectorQuery.cpp:
(WebCore::elementsForLocalName):
(WebCore::anyElement):
(WebCore::SelectorDataList::executeSingleTagNameSelectorData):
(WebCore::SelectorDataList::executeSingleClassNameSelectorData):
(WebCore::SelectorDataList::executeSingleSelectorData):
(WebCore::SelectorDataList::executeSingleMultiSelectorData):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::removeHeadContents):
* editing/markup.cpp:
(WebCore::completeURLs):
* html/HTMLFieldSetElement.cpp:
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::containsJavaApplet):
* loader/PlaceholderDocument.cpp:
(WebCore::PlaceholderDocument::createRenderTree):
* rendering/RenderChildIterator.h:
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::getElementById):
* svg/SVGUseElement.cpp:
(WebCore::subtreeContainsDisallowedElement):
(WebCore::removeDisallowedElementsFromSubtree):

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

6 years agoDo less synchronous render tree construction
antti@apple.com [Wed, 1 Jan 2014 21:20:51 +0000 (21:20 +0000)]
Do less synchronous render tree construction
https://bugs.webkit.org/show_bug.cgi?id=126359

Source/WebCore:

Reviewed by Anders Carlsson.

Remove some now-unnecessary attachRenderTree calls.

* html/HTMLDetailsElement.cpp:
(WebCore::HTMLDetailsElement::parseAttribute):
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::parseAttribute):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderFallbackContent):
* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::didAddUserAgentShadowRoot):
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::willRecalcStyle):
(WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree):
(WebCore::HTMLPlugInImageElement::restartSnapshottedPlugIn):
* html/HTMLViewSourceDocument.cpp:
(WebCore::HTMLViewSourceDocument::createContainingTable):
(WebCore::HTMLViewSourceDocument::addSpanWithClassName):
(WebCore::HTMLViewSourceDocument::addLine):
(WebCore::HTMLViewSourceDocument::finishLine):
(WebCore::HTMLViewSourceDocument::addBase):
(WebCore::HTMLViewSourceDocument::addLink):
* xml/XMLErrors.cpp:
(WebCore::XMLErrors::insertErrorMessageBlock):

LayoutTests:

* fast/html/object-image-nested-fallback.html: Update test to work with asynchronous load failures.
* fast/overflow/overflow-height-float-not-removed-crash3-expected.txt: Whitespace change.

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

6 years agoUpdating the scrolling tree should use references to state nodes
simon.fraser@apple.com [Wed, 1 Jan 2014 19:53:21 +0000 (19:53 +0000)]
Updating the scrolling tree should use references to state nodes
https://bugs.webkit.org/show_bug.cgi?id=126360

Reviewed by Anders Carlsson.

Change functions related to ScrollingTreeNode updating to take
const references to state nodes rather than pointers.

* page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::hasChangedProperty):
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::commitNewTreeState):
(WebCore::ScrollingTree::updateTreeFromStateNode): The node can be nil so
this continues to take a pointer.
(WebCore::ScrollingTree::removeDestroyedNodes):
* page/scrolling/ScrollingTree.h:
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::updateAfterChildren):
* page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
* page/scrolling/ScrollingTreeScrollingNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.h:
* page/scrolling/mac/ScrollingTreeFixedNode.mm:
(WebCore::ScrollingTreeFixedNode::updateBeforeChildren):
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
(WebCore::ScrollingTreeScrollingNodeMac::updateAfterChildren):
* page/scrolling/mac/ScrollingTreeStickyNode.h:
* page/scrolling/mac/ScrollingTreeStickyNode.mm:
(WebCore::ScrollingTreeStickyNode::updateBeforeChildren):

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

6 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 1 Jan 2014 18:36:15 +0000 (18:36 +0000)]
Unreviewed GTK gardening.
Updating test baselines after the introduction of lazy render tree attaching,
enabling the saturated layout arithmetics for the GTK port, and other changes.

* platform/gtk/css2.1/t0905-c414-flt-wrap-00-e-expected.txt:
* platform/gtk/fast/backgrounds/size/contain-and-cover-zoomed-expected.txt:
* platform/gtk/fast/block/float/016-expected.txt:
* platform/gtk/fast/css-generated-content/table-row-group-to-inline-expected.txt:
* platform/gtk/fast/dynamic/011-expected.txt:
* platform/gtk/fast/forms/formmove3-expected.txt:
* platform/gtk/fast/forms/preserveFormDuringResidualStyle-expected.txt:
* platform/gtk/fast/invalid/001-expected.txt:
* platform/gtk/fast/invalid/003-expected.txt:
* platform/gtk/fast/invalid/004-expected.txt:
* platform/gtk/fast/invalid/007-expected.txt:
* platform/gtk/fast/invalid/019-expected.txt:
* platform/gtk/fast/multicol/span/span-as-immediate-child-generated-content-expected.txt:
* platform/gtk/fast/multicol/span/span-as-immediate-columns-child-dynamic-expected.txt:
* platform/gtk/fast/multicol/span/span-as-nested-columns-child-dynamic-expected.txt:
* platform/gtk/fast/ruby/ruby-base-merge-block-children-crash-expected.txt:
* platform/gtk/fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction-expected.txt:
* platform/gtk/fast/table/empty-cells-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug113235-1-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug647-expected.txt:
* platform/gtk/tables/mozilla/other/wa_table_tr_align-expected.txt:

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

6 years agoAdd a typedef for PlatformLayerID on GraphicsLayer, and migrate RemoteLayerTreeTransa...
simon.fraser@apple.com [Wed, 1 Jan 2014 18:34:02 +0000 (18:34 +0000)]
Add a typedef for PlatformLayerID on GraphicsLayer, and migrate RemoteLayerTreeTransaction to use it
https://bugs.webkit.org/show_bug.cgi?id=126346

Source/WebCore:

Reviewed by Tim Horton.

Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
so it makes more sense to put this layerID type on GraphicsLayer as
GraphicsLayer::PlatformLayerID.

Also add some type cast macros for PlatformCALayer and subclasses, and use them
where appropriate.

* platform/graphics/GraphicsLayer.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setName):
* platform/graphics/ca/PlatformCALayer.h:
(WebCore::PlatformCALayer::isPlatformCALayerMac):
(WebCore::PlatformCALayer::isPlatformCALayerRemote):
(WebCore::PlatformCALayer::PlatformCALayer):
* platform/graphics/ca/mac/PlatformCALayerMac.h:

Source/WebKit2:

Reviewed by Tim Horton.

Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
so it makes more sense to put this layerID type on GraphicsLayer as
GraphicsLayer::PlatformLayerID.

Also add some type cast macros for PlatformCALayer and subclasses, and use them
where appropriate.

* Shared/mac/RemoteLayerTreePropertyApplier.h:
* Shared/mac/RemoteLayerTreeTransaction.h:
(WebKit::RemoteLayerTreeTransaction::rootLayerID):
(WebKit::RemoteLayerTreeTransaction::changedLayers):
(WebKit::RemoteLayerTreeTransaction::destroyedLayers):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::decode):
(WebKit::RemoteLayerTreeTransaction::setRootLayerID):
(WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
(WebKit::RemoteLayerTreeTextStream::operator<<):
(WebKit::dumpChangedLayers):
(WebKit::RemoteLayerTreeTransaction::description):
* UIProcess/mac/RemoteLayerTreeHost.h:
* UIProcess/mac/RemoteLayerTreeHost.mm:
(WebKit::RemoteLayerTreeHost::commit):
(WebKit::RemoteLayerTreeHost::getLayer):
* WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
(WebKit::GraphicsLayerCARemote::primaryLayerID):
* WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(generateLayerID):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
(WebKit::PlatformCALayerRemote::layerID):
* WebProcess/WebPage/mac/RemoteLayerTreeContext.h:

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

6 years agoScrollingStateNodes should have a reference to the ScrollingStateTree
simon.fraser@apple.com [Wed, 1 Jan 2014 18:26:29 +0000 (18:26 +0000)]
ScrollingStateNodes should have a reference to the ScrollingStateTree
https://bugs.webkit.org/show_bug.cgi?id=126348

Reviewed by Sam Weinig.

Make ScrollingStateNodes always belong to a ScrollingStateTree, and thus
have a reference to the tree rather than a pointer. When cloning nodes,
they are adopted by a new ScrollingStateTree, which adds them to its
node map (which didn't happen before).

In subclasses access the ScrollingStateTree through a member function.

* page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::create):
(WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
(WebCore::ScrollingStateFixedNode::clone):
(WebCore::ScrollingStateFixedNode::updateConstraints):
* page/scrolling/ScrollingStateFixedNode.h:
* page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::ScrollingStateNode):
(WebCore::ScrollingStateNode::cloneAndReset):
(WebCore::ScrollingStateNode::cloneAndResetChildren):
(WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
* page/scrolling/ScrollingStateNode.h:
(WebCore::ScrollingStateNode::scrollingStateTree):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::create):
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::clone):
(WebCore::ScrollingStateScrollingNode::setViewportRect):
(WebCore::ScrollingStateScrollingNode::setTotalContentsSize):
(WebCore::ScrollingStateScrollingNode::setScrollOrigin):
(WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters):
(WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
(WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion):
(WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount):
(WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons):
(WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements):
(WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
(WebCore::ScrollingStateScrollingNode::setHeaderHeight):
(WebCore::ScrollingStateScrollingNode::setFooterHeight):
* page/scrolling/ScrollingStateScrollingNode.h:
* page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::create):
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
(WebCore::ScrollingStateStickyNode::clone):
(WebCore::ScrollingStateStickyNode::updateConstraints):
* page/scrolling/ScrollingStateStickyNode.h:
* page/scrolling/ScrollingStateTree.cpp:
(WebCore::ScrollingStateTree::attachNode):
(WebCore::ScrollingStateTree::commit):
(WebCore::ScrollingStateTree::addNode):
* page/scrolling/ScrollingStateTree.h:
* page/scrolling/mac/ScrollingStateNodeMac.mm:
(WebCore::ScrollingStateNode::setScrollLayer):
* page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
(WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
(WebCore::ScrollingStateScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateScrollingNode::setFooterLayer):
(WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):

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

6 years agoGive ScrollingStateNodes a nodeType()
simon.fraser@apple.com [Wed, 1 Jan 2014 18:14:27 +0000 (18:14 +0000)]
Give ScrollingStateNodes a nodeType()
https://bugs.webkit.org/show_bug.cgi?id=126347

Reviewed by Tim Horton.

When we start serializing ScrollingStateNodes to send to the UI process,
it's more convenient if they have a nodeType member rather than virtual functions,
so give them one, and fix the casting macros to use it. This allows us to use
a switch() on node creation, so the compiler will tell us if we forgot to create
a node type.

* page/scrolling/ScrollingStateFixedNode.cpp:
(WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
* page/scrolling/ScrollingStateFixedNode.h:
* page/scrolling/ScrollingStateNode.cpp:
(WebCore::ScrollingStateNode::ScrollingStateNode):
* page/scrolling/ScrollingStateNode.h: const ScrollingNodeType field
(can't be modified after construction), and move the m_scrollingStateTree
member after it (the awkward protected:/private: will be cleaned up in a later patch).
(WebCore::ScrollingStateNode::nodeType):
* page/scrolling/ScrollingStateScrollingNode.cpp:
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
* page/scrolling/ScrollingStateScrollingNode.h:
* page/scrolling/ScrollingStateStickyNode.cpp:
(WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
* page/scrolling/ScrollingStateStickyNode.h:
* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::updateTreeFromStateNode):

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

6 years ago[GTK] [CMake] Fix the WEBKIT_SRC_DIR define when building the WebKit2 GObject API...
mrobinson@webkit.org [Wed, 1 Jan 2014 15:41:43 +0000 (15:41 +0000)]
[GTK] [CMake] Fix the WEBKIT_SRC_DIR define when building the WebKit2 GObject API unit tests
https://bugs.webkit.org/show_bug.cgi?id=126350

Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/tests/CMakeLists.txt: Fix the define.

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

6 years ago[GTK] Rename libtestnetscapeplugin to libTestNetscapePlugin
mrobinson@webkit.org [Wed, 1 Jan 2014 15:35:00 +0000 (15:35 +0000)]
[GTK] Rename libtestnetscapeplugin to libTestNetscapePlugin
https://bugs.webkit.org/show_bug.cgi?id=126349

Reviewed by Carlos Garcia Campos.

All CMake ports use "libTestNetscapePlugin," so choosing the same
name in the autotools port will make the transition easier.

Source/WebKit2:

* UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
(testWebContextGetPlugins): Use the new plugin library name.

Tools:

* GNUmakefile.am: Rename the plugin library.

LayoutTests:

* platform/gtk/plugins/plugin-javascript-access-expected.txt: Change the plugin name.

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

6 years ago[GTK][WK2] Back items are shown in reverse order in MiniBrowser
changseok.oh@collabora.com [Wed, 1 Jan 2014 13:35:13 +0000 (13:35 +0000)]
[GTK][WK2] Back items are shown in reverse order in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=126354

Reviewed by Carlos Garcia Campos.

The latest visited site for backward history should be placed on the top of a history stack
as a common behavior. However currently its order is reverse.

* MiniBrowser/gtk/BrowserWindow.c:
(browserWindowUpdateNavigationActions):

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

6 years ago[Gtk] WebKitWebInspector has build warnings due to uninitialized didChangeAttachedWid...
b.long@cablelabs.com [Wed, 1 Jan 2014 01:08:13 +0000 (01:08 +0000)]
[Gtk] WebKitWebInspector has build warnings due to uninitialized didChangeAttachedWidth member
https://bugs.webkit.org/show_bug.cgi?id=126353

Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebInspector.cpp:
(webkitWebInspectorCreate): Initialize didChangeAttachedWidth to null.

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

6 years ago[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
aestes@apple.com [Tue, 31 Dec 2013 23:46:34 +0000 (23:46 +0000)]
[iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/
https://bugs.webkit.org/show_bug.cgi?id=125746

Reviewed by David Kilzer.

Source/WebKit:

* WebKit.xcodeproj/project.pbxproj: Added WebDatabaseManagerInternal.h
and iOS.xcconfig.

Source/WebKit/ios:

* WebCoreSupport/WebVisiblePosition.mm:
(-[WebVisiblePosition positionAtStartOrEndOfWord]): Changed a comment
to mention iOS rather than iPhone.

Source/WebKit/mac:

This is a straight upstreaming of the various PLATFORM(IOS) changes
made to Source/WebKit/ with the following modifications:

- Includes of <Cocoa/Cocoa.h> were generally replaced with an include
of <Foundation/Foundation.h> followed by an include of
<AppKit/AppKit.h> on non-iOS platforms. This assumes that nobody was
relying on <Cocoa/Cocoa.h>'s inclusion of <CoreData/CoreData.h>.

- Includes of <Cocoa/Cocoa.h> and <Foundation/Foundation.h> were
removed from files that include WebKitPrefix.h.

- Instances of 'iPhone (OS)' in comments were replaced with 'iOS', and
other sensitive terms were elided.

- Various PLATFORM(IOS) blocks were simplified. For instance:

    #if !PLATFORM(IOS)
    ...
    #endif
    #if PLATFORM(IOS)
    ...
    #endif

Was simplified to:

    #if !PLATFORM(IOS)
    ...
    #else
    ...
    #endif

* Configurations/Base.xcconfig:
* Configurations/DebugRelease.xcconfig:
* Configurations/Version.xcconfig:
* Configurations/WebKit.xcconfig:
* Configurations/iOS.xcconfig: Added.
* DOM/WebDOMOperations.mm:
* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
* DefaultDelegates/WebDefaultEditingDelegate.m:
* DefaultDelegates/WebDefaultPolicyDelegate.m:
* DefaultDelegates/WebDefaultUIDelegate.h:
* DefaultDelegates/WebDefaultUIDelegate.m:
* History/WebBackForwardList.mm:
* History/WebHistory.mm:
* History/WebHistoryItem.mm:
* History/WebURLsWithTitles.m:
* Misc/WebCache.mm:
* Misc/WebDownload.mm:
* Misc/WebElementDictionary.mm:
* Misc/WebIconDatabase.mm:
* Misc/WebIconDatabaseInternal.h:
* Misc/WebKitNSStringExtras.mm:
* Misc/WebKitSystemBits.m:
* Misc/WebKitVersionChecks.h:
* Misc/WebKitVersionChecks.m:
* Misc/WebLocalizableStrings.mm:
* Misc/WebNSArrayExtras.h:
* Misc/WebNSArrayExtras.m:
* Misc/WebNSControlExtras.h:
* Misc/WebNSControlExtras.m:
* Misc/WebNSDictionaryExtras.h:
* Misc/WebNSDictionaryExtras.m:
* Misc/WebNSEventExtras.m:
* Misc/WebNSFileManagerExtras.mm:
* Misc/WebNSImageExtras.h:
* Misc/WebNSImageExtras.m:
* Misc/WebNSPasteboardExtras.mm:
* Misc/WebNSPrintOperationExtras.h:
* Misc/WebNSPrintOperationExtras.m:
* Misc/WebNSURLExtras.mm:
* Misc/WebNSViewExtras.m:
* Misc/WebNSWindowExtras.m:
* Panels/WebAuthenticationPanel.h:
* Panels/WebAuthenticationPanel.m:
* Panels/WebPanelAuthenticationHandler.m:
* Plugins/Hosted/WebHostedNetscapePluginView.mm:
* Plugins/WebBasePluginPackage.h:
* Plugins/WebBasePluginPackage.mm:
* Plugins/WebJavaPlugIn.h:
* Plugins/WebPluginContainerCheck.mm:
* Plugins/WebPluginController.h:
* Plugins/WebPluginController.mm:
* Plugins/WebPluginDatabase.mm:
* Plugins/WebPluginPackage.mm:
* Plugins/WebPluginsPrivate.m:
* Storage/WebDatabaseManager.mm:
* Storage/WebDatabaseManagerClient.h:
* Storage/WebDatabaseManagerClient.mm:
* Storage/WebDatabaseManagerInternal.h: Added.
* Storage/WebStorageManager.mm:
* WebCoreSupport/CorrectionPanel.h:
* WebCoreSupport/WebAlternativeTextClient.h:
* WebCoreSupport/WebApplicationCache.mm:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebContextMenuClient.mm:
* WebCoreSupport/WebEditorClient.h:
* WebCoreSupport/WebEditorClient.mm:
* WebCoreSupport/WebFrameLoaderClient.h:
* WebCoreSupport/WebFrameLoaderClient.mm:
* WebCoreSupport/WebFrameNetworkingContext.h:
* WebCoreSupport/WebFrameNetworkingContext.mm:
* WebCoreSupport/WebGeolocationClient.h:
* WebCoreSupport/WebGeolocationClient.mm:
* WebCoreSupport/WebJavaScriptTextInputPanel.m:
* WebCoreSupport/WebKeyGenerator.mm:
* WebCoreSupport/WebNotificationClient.mm:
* WebCoreSupport/WebOpenPanelResultListener.mm:
* WebCoreSupport/WebSecurityOrigin.mm:
* WebCoreSupport/WebSystemInterface.mm:
* WebKitPrefix.h:
* WebView/WebArchive.mm:
* WebView/WebClipView.h:
* WebView/WebDataSource.mm:
* WebView/WebDelegateImplementationCaching.h:
* WebView/WebDelegateImplementationCaching.mm:
* WebView/WebDeviceOrientation.mm:
* WebView/WebDocumentInternal.h:
* WebView/WebDocumentLoaderMac.mm:
* WebView/WebDynamicScrollBarsViewInternal.h:
* WebView/WebFormDelegate.m:
* WebView/WebFrame.mm:
* WebView/WebFrameInternal.h:
* WebView/WebFrameView.mm:
* WebView/WebFullScreenController.h:
* WebView/WebFullScreenController.mm:
* WebView/WebHTMLRepresentation.mm:
* WebView/WebHTMLView.mm:
* WebView/WebHTMLViewInternal.h:
* WebView/WebPDFDocumentExtras.h:
* WebView/WebPDFDocumentExtras.mm:
* WebView/WebPDFRepresentation.h:
* WebView/WebPDFRepresentation.mm:
* WebView/WebPDFView.h:
* WebView/WebPDFView.mm:
* WebView/WebPreferences.mm:
* WebView/WebResource.mm:
* WebView/WebTextCompletionController.h:
* WebView/WebTextIterator.mm:
* WebView/WebView.mm:
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
* WebView/WebViewInternal.h:

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

6 years agoOut-of-line RenderStyle substructure copying helpers.
akling@apple.com [Tue, 31 Dec 2013 16:40:50 +0000 (16:40 +0000)]
Out-of-line RenderStyle substructure copying helpers.
<https://webkit.org/b/126340>

This shrinks the .access() calls by moving memory allocation logic
out-of-line, though I'm really doing this to make Instruments.app
allocations output more readable.

Writes to e.g 'font' or 'color' will now be grouped under a single
StyleInheritedData::copy() call instead of being spread out over
setFontDescription(), setLineHeight(), setColor(), etc.

Reviewed by Anders Carlsson.

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

6 years agoRenderListItem should store its marker in a RenderPtr.
akling@apple.com [Tue, 31 Dec 2013 16:16:32 +0000 (16:16 +0000)]
RenderListItem should store its marker in a RenderPtr.
<https://webkit.org/b/126298>

Make RenderListItem::m_marker a RenderPtr<RenderListMarker> and
remove two manual destroy() calls. Tweaked code to reduce nesting.

Reviewed by Anders Carlsson.

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

6 years ago[GTK] Make the output directory of GObject unit tests binaries consistent with the...
mrobinson@webkit.org [Tue, 31 Dec 2013 16:14:39 +0000 (16:14 +0000)]
[GTK] Make the output directory of GObject unit tests binaries consistent with the CMake build
https://bugs.webkit.org/show_bug.cgi?id=126297

Reviewed by Philippe Normand.

Source/WebKit/gtk:

* tests/GNUmakefile.am: Build the tests in the new directory.

Source/WebKit2:

* UIProcess/API/gtk/tests/GNUmakefile.am: Build the tests in the new directory.
* UIProcess/API/gtk/tests/TestInspectorServer.cpp:
(startTestServer): Update the search path to reflect the new directory.
* UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
(startTestServer): Update the search path to reflect the new directory.

Tools:

* Scripts/run-gtk-tests: Looks for the tests in the new directories.
(TestRunner): Ditto.
(TestRunner._run_test): Ditto.

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

6 years agoElement's renderer factory should return RenderPtrs.
akling@apple.com [Tue, 31 Dec 2013 14:05:28 +0000 (14:05 +0000)]
Element's renderer factory should return RenderPtrs.
<https://webkit.org/b/126318>

Rename Element::createRenderer() to createElementRenderer() and have
it return RenderPtr<RenderElement>. Propagate signature until it
builds again.

We leakPtr() the renderer at two call sites when handing things over
to raw pointer API. This'll get tidied up in subsequent patches.

Reviewed by Sam Weinig.

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

6 years ago[SOUP] Return early in ResourceHandle::receivedCancellation if the load has already...
carlosgc@webkit.org [Tue, 31 Dec 2013 08:34:32 +0000 (08:34 +0000)]
[SOUP] Return early in ResourceHandle::receivedCancellation if the load has already cancelled
https://bugs.webkit.org/show_bug.cgi?id=126287

Reviewed by Martin Robinson.

This situation can happen when using the network process, because
the ReceivedCancellation message can be received when the resource
loader has already been removed, but the authentication challenge
still has a reference to the ResourceHandleClient.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::receivedCancellation):

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

6 years ago[SOUP] The initiating page is lost after a redirection
carlosgc@webkit.org [Tue, 31 Dec 2013 08:32:10 +0000 (08:32 +0000)]
[SOUP] The initiating page is lost after a redirection
https://bugs.webkit.org/show_bug.cgi?id=126293

Reviewed by Martin Robinson.

The initiating page id is attached to the initial soup request
object, but not to the one created after a redirection.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::createSoupRequestAndMessageForHandle): Call
setSoupRequestInitiatingPageIDFromNetworkingContext() here if the
soup request is created successfully.
(WebCore::ResourceHandle::start): Remove the call to
setSoupRequestInitiatingPageIDFromNetworkingContext().

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

6 years ago[SOUP] Implement ResourceHandle::continueWillSendRequest()
carlosgc@webkit.org [Tue, 31 Dec 2013 08:30:26 +0000 (08:30 +0000)]
[SOUP] Implement ResourceHandle::continueWillSendRequest()
https://bugs.webkit.org/show_bug.cgi?id=126291

Reviewed by Martin Robinson.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::continueAfterWillSendRequest): Helper function that
continues with the load after willSendRequest has been called.
(WebCore::doRedirect): Call continueAfterWillSendRequest() when
client doesn't use async callbacks.
(WebCore::ResourceHandle::continueWillSendRequest): Call
continueAfterWillSendRequest().

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

6 years ago[SOUP] willSendRequest doesn't work after a redirect
carlosgc@webkit.org [Tue, 31 Dec 2013 08:28:17 +0000 (08:28 +0000)]
[SOUP] willSendRequest doesn't work after a redirect
https://bugs.webkit.org/show_bug.cgi?id=126290

Reviewed by Martin Robinson.

Source/WebCore:

The problem is that we are creating the new soup request for the
redirect before calling ResourceHandleClient::willSendRequest() so
that any change made to the request by the client is ignored.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::doRedirect): Create the new soup request and soup
message for the redirect after calling willSendRequest() on the
client.

Source/WebKit2:

Add test cases to test send-request signal in case of
redirection.

* UIProcess/API/gtk/tests/TestResources.cpp:
(testWebResourceSendRequest):
(serverCallback):

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

6 years agoUnreviewed, rolling out r161157, r161158, r161160, r161161,
commit-queue@webkit.org [Tue, 31 Dec 2013 06:54:20 +0000 (06:54 +0000)]
Unreviewed, rolling out r161157, r161158, r161160, r161161,
r161163, and r161165.
http://trac.webkit.org/changeset/161157
http://trac.webkit.org/changeset/161158
http://trac.webkit.org/changeset/161160
http://trac.webkit.org/changeset/161161
http://trac.webkit.org/changeset/161163
http://trac.webkit.org/changeset/161165
https://bugs.webkit.org/show_bug.cgi?id=126332

Broke WebKit2 on Mountain Lion (Requested by ap on #webkit).

Source/JavaScriptCore:

* heap/BlockAllocator.cpp:
(JSC::BlockAllocator::~BlockAllocator):
(JSC::BlockAllocator::waitForRelativeTimeWhileHoldingLock):
(JSC::BlockAllocator::waitForRelativeTime):
(JSC::BlockAllocator::blockFreeingThreadMain):
* heap/BlockAllocator.h:
(JSC::BlockAllocator::deallocate):

Source/WebKit2:

* Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::wait):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):

Source/WTF:

* GNUmakefile.list.am:
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/Forward.h:
* wtf/PlatformWin.cmake:
* wtf/threads/BinarySemaphore.cpp: Added.
(WTF::BinarySemaphore::BinarySemaphore):
(WTF::BinarySemaphore::~BinarySemaphore):
(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::wait):
* wtf/threads/BinarySemaphore.h: Added.
(WTF::BinarySemaphore::event):
* wtf/threads/win/BinarySemaphoreWin.cpp: Added.
(WTF::BinarySemaphore::BinarySemaphore):
(WTF::BinarySemaphore::~BinarySemaphore):
(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::wait):

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

6 years agofull_results.json should distinguish unexpected failures from expected ones
ap@apple.com [Tue, 31 Dec 2013 06:32:59 +0000 (06:32 +0000)]
full_results.json should distinguish unexpected failures from expected ones
https://bugs.webkit.org/show_bug.cgi?id=126300

Reviewed by Timothy Hatcher.

* Scripts/webkitpy/layout_tests/models/test_run_results.py:
(summarize_results): Add "report" element to JSON, which tells the consumer how
this result was counted for summary.

* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
Updated results to include the new element.

* Scripts/webkitpy/layout_tests/views/buildbot_results.py:
(print_unexpected_results): Added a comment pointing to another place that
summarizes results, and should stay in sync.

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

6 years ago[Windows] Disable some annoying build warnings.
roger_fong@apple.com [Tue, 31 Dec 2013 04:46:02 +0000 (04:46 +0000)]
[Windows] Disable some annoying build warnings.

* win/tools/vsprops/common.props:

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

6 years agoInputType should return input renderers wrapped in RenderPtr.
akling@apple.com [Tue, 31 Dec 2013 03:02:25 +0000 (03:02 +0000)]
InputType should return input renderers wrapped in RenderPtr.
<https://webkit.org/b/126307>

Rename InputType::createRenderer() to createInputRenderer() and
make it return RenderPtr<RenderElement>. Also made it non-const.

Reviewed by Anders Carlsson.

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

6 years agoCleanup static_cast<HTMLFormElement*> by using toHTMLFormElement()
gyuyoung.kim@samsung.com [Tue, 31 Dec 2013 02:58:28 +0000 (02:58 +0000)]
Cleanup static_cast<HTMLFormElement*> by using toHTMLFormElement()
https://bugs.webkit.org/show_bug.cgi?id=126309

Reviewed by Andreas Kling.

To detect bad type casts, it would be good to use toHTMLFormElement() instead of
using manual type cast. Additionally FORM_ASSOCIATED_ELEMENT_TYPE_CASTS is introduced newly
to do it.

Source/WebCore:

No new tests, no behavior changes.

* html/FormAssociatedElement.h:
* html/HTMLFormControlElement.h:
* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::submitImplicitly):
(WebCore::HTMLFormElement::validateInteractively):
(WebCore::HTMLFormElement::submit):
(WebCore::HTMLFormElement::reset):
(WebCore::HTMLFormElement::defaultButton):
(WebCore::HTMLFormElement::checkInvalidControlsAndCollectUnhandled):
(WebCore::HTMLFormElement::documentDidResumeFromPageCache):
* loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):

Source/WebKit/blackberry:

* WebCoreSupport/CredentialTransformData.cpp:
(WebCore::CredentialTransformData::findPasswordFormFields):
* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::toTextControlElement):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::updateFormState):
(BlackBerry::WebKit::InputHandler::submitForm):

Source/WebKit/win:

* WebFrame.cpp:
(WebFrame::elementWithName):

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

6 years agoTry to fix the test failures seen on the bots.
andersca@apple.com [Tue, 31 Dec 2013 02:14:18 +0000 (02:14 +0000)]
Try to fix the test failures seen on the bots.

Restore the BinarySemaphore behavior that existed in the old binary semaphore.

* Platform/IPC/Connection.cpp:
(IPC::BinarySemaphore::wait):

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

6 years agoReplace yield() and pauseBriefly() with std::this_thread::yield()
andersca@apple.com [Tue, 31 Dec 2013 02:05:38 +0000 (02:05 +0000)]
Replace yield() and pauseBriefly() with std::this_thread::yield()
https://bugs.webkit.org/show_bug.cgi?id=126105

Reviewed by Sam Weinig.

Source/WebCore:

* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::interrupt):

Source/WTF:

* wtf/ByteSpinLock.h:
(WTF::ByteSpinLock::lock):
* wtf/Threading.h:
* wtf/ThreadingPrimitives.h:
* wtf/ThreadingPthreads.cpp:
* wtf/ThreadingWin.cpp:

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

6 years agoFix build.
andersca@apple.com [Tue, 31 Dec 2013 01:46:32 +0000 (01:46 +0000)]
Fix build.

* heap/BlockAllocator.h:

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

6 years agoRemove unnecessary non-const overload in IteratorPair
weinig@apple.com [Tue, 31 Dec 2013 01:37:37 +0000 (01:37 +0000)]
Remove unnecessary non-const overload in IteratorPair
https://bugs.webkit.org/show_bug.cgi?id=126314

Reviewed by Anders Carlsson.

* wtf/IteratorPair.h:

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

6 years agoStop using ThreadCondition in BlockAllocator
andersca@apple.com [Tue, 31 Dec 2013 01:22:01 +0000 (01:22 +0000)]
Stop using ThreadCondition in BlockAllocator
https://bugs.webkit.org/show_bug.cgi?id=126313

Reviewed by Sam Weinig.

* heap/BlockAllocator.cpp:
(JSC::BlockAllocator::~BlockAllocator):
(JSC::BlockAllocator::waitForDuration):
(JSC::BlockAllocator::blockFreeingThreadMain):
* heap/BlockAllocator.h:
(JSC::BlockAllocator::deallocate):

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

6 years agoRemove WTF's BinarySemaphore
weinig@apple.com [Tue, 31 Dec 2013 00:31:11 +0000 (00:31 +0000)]
Remove WTF's BinarySemaphore
https://bugs.webkit.org/show_bug.cgi?id=126310

Reviewed by Anders Carlsson.

It's unused. Also remove the now empty wtf/threads directory.

* GNUmakefile.list.am:
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/Forward.h:
* wtf/PlatformWin.cmake:
* wtf/threads: Removed.
* wtf/threads/BinarySemaphore.cpp: Removed.
* wtf/threads/BinarySemaphore.h: Removed.
* wtf/threads/win: Removed.
* wtf/threads/win/BinarySemaphoreWin.cpp: Removed.

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

6 years agoStop using ThreadCondition in jsc.cpp
andersca@apple.com [Tue, 31 Dec 2013 00:30:11 +0000 (00:30 +0000)]
Stop using ThreadCondition in jsc.cpp
https://bugs.webkit.org/show_bug.cgi?id=126311

Reviewed by Sam Weinig.

* jsc.cpp:
(timeoutThreadMain):
(main):

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

6 years agoFix.
andersca@apple.com [Mon, 30 Dec 2013 23:57:16 +0000 (23:57 +0000)]
Fix.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::plugInDidStartFromOrigin):

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

6 years agoMove more of Connection over to STL threading primitives
andersca@apple.com [Mon, 30 Dec 2013 23:46:31 +0000 (23:46 +0000)]
Move more of Connection over to STL threading primitives
https://bugs.webkit.org/show_bug.cgi?id=126308

Reviewed by Andreas Kling.

* Platform/IPC/Connection.cpp:
(IPC::BinarySemaphore::BinarySemaphore):
(IPC::BinarySemaphore::~BinarySemaphore):
(IPC::BinarySemaphore::signal):
(IPC::BinarySemaphore::wait):
Add a new BinarySemaphore class that uses STL threading primitives.

(IPC::Connection::SyncMessageState::wait):
Change this to take a std::chrono::steady_clock::time_point.

(IPC::absoluteTimeoutTime):
Add a new helper function that returns a time point from the a given timeout duration,
correctly handling the max duration.

(IPC::Connection::sendSyncMessageFromSecondaryThread):
Pass a time point to SyncMessageState::wait.

(IPC::Connection::waitForSyncReply):
Ditto.

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

6 years agoReplace remaning CoreIPC namespace to IPC
ryuan.choi@samsung.com [Mon, 30 Dec 2013 23:34:33 +0000 (23:34 +0000)]
Replace remaning CoreIPC namespace to IPC
https://bugs.webkit.org/show_bug.cgi?id=126305

Reviewed by Anders Carlsson.

Source/WebKit2:

This patch replaces CoreIPC to IPC in build scripts and source codes to fix
build break on CMake based ports and Gtk (and maybe IOS).

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Platform/IPC/unix/AttachmentUnix.cpp:
* Platform/IPC/unix/ConnectionUnix.cpp:
* Platform/unix/SharedMemoryUnix.cpp:
(WebKit::SharedMemory::Handle::encode):
(WebKit::SharedMemory::Handle::decode):
(WebKit::SharedMemory::Handle::releaseToAttachment):
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
* Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
* Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
(WebKit::WebCoordinatedSurface::Handle::encode):
(WebKit::WebCoordinatedSurface::Handle::decode):
* Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::downloadFailed):
(WebKit::Download::cancel):
* Shared/WebBatteryStatus.cpp:
(WebKit::WebBatteryStatus::Data::encode):
(WebKit::WebBatteryStatus::Data::decode):
* Shared/WebBatteryStatus.h:
* Shared/WebNetworkInfo.cpp:
(WebKit::WebNetworkInfo::Data::encode):
(WebKit::WebNetworkInfo::Data::decode):
* Shared/WebNetworkInfo.h:
* Shared/cairo/LayerTreeContextCairo.cpp:
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
* Shared/efl/LayerTreeContextEfl.cpp:
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
* Shared/gtk/ArgumentCodersGtk.cpp:
* Shared/gtk/ArgumentCodersGtk.h:
* Shared/gtk/LayerTreeContextGtk.cpp:
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
* Shared/ios/WebPlatformTouchPointIOS.cpp:
(WebKit::WebPlatformTouchPoint::encode):
(WebKit::WebPlatformTouchPoint::decode):
* Shared/ios/WebTouchEventIOS.cpp:
(WebKit::WebTouchEvent::encode):
(WebKit::WebTouchEvent::decode):
* Shared/linux/SeccompFilters/OpenSyscall.cpp:
(WebKit::OpenSyscall::encode):
(WebKit::OpenSyscall::decode):
(WebKit::OpenSyscallResult::encode):
(WebKit::OpenSyscallResult::decode):
* Shared/linux/SeccompFilters/OpenSyscall.h:
* Shared/linux/SeccompFilters/SeccompBroker.cpp:
(WebKit::SeccompBrokerClient::dispatch):
(WebKit::SeccompBroker::runLoop):
* Shared/linux/SeccompFilters/Syscall.cpp:
(WebKit::Syscall::createFromDecoder):
(WebKit::SyscallResult::createFromDecoder):
* Shared/linux/SeccompFilters/Syscall.h:
* Shared/soup/WebCoreArgumentCodersSoup.cpp:
(IPC::ArgumentCoder<CertificateInfo>::encode):
(IPC::ArgumentCoder<CertificateInfo>::decode):
* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
* UIProcess/API/mac/PDFViewController.h:
* UIProcess/API/mac/PDFViewController.mm:
(WebKit::convertPostScriptDataSourceToPDF):
(WebKit::PDFViewController::setPDFDocumentData):
* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
* UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/WebBatteryManagerProxy.h:
* UIProcess/WebNetworkInfoManagerProxy.h:
* UIProcess/WebVibrationProxy.h:
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::registerWebProcessAccessibilityToken):
(WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
* UIProcess/soup/WebSoupRequestManagerProxy.h:
* WebProcess/Battery/WebBatteryManager.h:
* WebProcess/NetworkInfo/WebNetworkInfoManager.h:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
(WebKit::CoordinatedDrawingArea::didReceiveCoordinatedLayerTreeHostMessage):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::registerUIProcessAccessibilityTokens):
* WebProcess/ios/WebProcessIOS.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
* WebProcess/soup/WebSoupRequestManager.cpp:
(WebKit::WebSoupRequestManager::didHandleURIRequest):
(WebKit::WebSoupRequestManager::didReceiveURIRequestData):
* WebProcess/soup/WebSoupRequestManager.h:
* WebProcess/soup/WebSoupRequestManager.messages.in:

Tools:

* TestWebKitAPI/CMakeLists.txt: Replaced CoreIPC includes to IPC.
* TestWebKitAPI/efl/PlatformWebView.cpp: Removed temporal define for IPC.
* WebKitTestRunner/CMakeLists.txt: Replaced CoreIPC includes to IPC.
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed temporal define for IPC.

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

6 years agoAdd myself to the committers list.
b.long@cablelabs.com [Mon, 30 Dec 2013 22:58:10 +0000 (22:58 +0000)]
Add myself to the committers list.

Unreviewed.

Patch by Brendan Long <self@brendanlong.com> on 2013-12-30

* Scripts/webkitpy/common/config/contributors.json:

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

6 years agoUnreviewed build fix attempt on GTK port after 161152
ryuan.choi@samsung.com [Mon, 30 Dec 2013 22:49:21 +0000 (22:49 +0000)]
Unreviewed build fix attempt on GTK port after 161152

* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::WebEditorClient::getEditorCommandsForKeyEvent):

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

6 years agoRename createRenderObject() to createRenderer().
akling@apple.com [Mon, 30 Dec 2013 22:40:20 +0000 (22:40 +0000)]
Rename createRenderObject() to createRenderer().

Somewhat rubber-stamped by Antti Koivisto.

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

6 years agoUse std::chrono::milliseconds for all IPC message timeouts
andersca@apple.com [Mon, 30 Dec 2013 21:43:44 +0000 (21:43 +0000)]
Use std::chrono::milliseconds for all IPC message timeouts
https://bugs.webkit.org/show_bug.cgi?id=126303

Reviewed by Andreas Kling.

* Platform/IPC/Connection.cpp:
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
* Platform/IPC/Connection.h:
(IPC::Connection::sendSync):
* Platform/IPC/MessageSender.h:
(IPC::MessageSender::sendSync):
* Shared/ChildProcessProxy.h:
(WebKit::ChildProcessProxy::sendSync):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::stringSelectionForPasteboard):
(WebKit::WebPageProxy::dataSelectionForPasteboard):
(WebKit::WebPageProxy::readSelectionFromPasteboard):
(WebKit::WebPageProxy::shouldDelayWindowOrderingForEvent):
(WebKit::WebPageProxy::acceptsFirstMouse):
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::postSynchronousMessage):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::createInspectorPage):

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

6 years agoDocument should store its RenderView in a RenderPtr.
akling@apple.com [Mon, 30 Dec 2013 21:05:50 +0000 (21:05 +0000)]
Document should store its RenderView in a RenderPtr.
<https://webkit.org/b/126299>

Make Document::m_renderView a RenderPtr<RenderView> and remove one
manual destroy() call. Also removed the setRenderView() helper and
inlined it at the two call sites.

Reviewed by Antti Koivisto.

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

6 years agoRemove empty directories.
andersca@apple.com [Mon, 30 Dec 2013 20:54:32 +0000 (20:54 +0000)]
Remove empty directories.

* Platform/CoreIPC: Removed.
* Platform/CoreIPC/mac: Removed.
* Platform/CoreIPC/unix: Removed.

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

6 years ago[Windows] Unreviewed build fix following r160959.
roger_fong@apple.com [Mon, 30 Dec 2013 20:45:29 +0000 (20:45 +0000)]
[Windows] Unreviewed build fix following r160959.

* wtf/Platform.h:

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

6 years agoMove code over to the IPC namespace.
andersca@apple.com [Mon, 30 Dec 2013 20:20:02 +0000 (20:20 +0000)]
Move code over to the IPC namespace.

Rubber-stamped by Andreas Kling.

* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::initializeConnection):
(WebKit::DatabaseProcess::didClose):
(WebKit::DatabaseProcess::didReceiveInvalidMessage):
(WebKit::DatabaseProcess::createDatabaseToWebProcessConnection):
* DatabaseProcess/DatabaseProcess.h:
* DatabaseProcess/DatabaseToWebProcessConnection.cpp:
(WebKit::DatabaseToWebProcessConnection::create):
(WebKit::DatabaseToWebProcessConnection::DatabaseToWebProcessConnection):
(WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
(WebKit::DatabaseToWebProcessConnection::didClose):
(WebKit::DatabaseToWebProcessConnection::didReceiveInvalidMessage):
* DatabaseProcess/DatabaseToWebProcessConnection.h:
(WebKit::DatabaseToWebProcessConnection::connection):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::messageSenderConnection):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
(WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
(WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
(WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::create):
(WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
(WebKit::NetworkConnectionToWebProcess::didClose):
(WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
* NetworkProcess/NetworkConnectionToWebProcess.h:
(WebKit::NetworkConnectionToWebProcess::connection):
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::didReceiveMessage):
(WebKit::NetworkProcess::didReceiveSyncMessage):
(WebKit::NetworkProcess::didClose):
(WebKit::NetworkProcess::didReceiveInvalidMessage):
(WebKit::NetworkProcess::downloadProxyConnection):
(WebKit::NetworkProcess::initializeConnection):
(WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::messageSenderConnection):
* NetworkProcess/NetworkResourceLoader.h:
* NetworkProcess/mac/DiskCacheMonitor.h:
* NetworkProcess/mac/DiskCacheMonitor.mm:
(WebKit::DiskCacheMonitor::messageSenderConnection):
* Platform/IPC/ArgumentCoder.h:
* Platform/IPC/ArgumentCoders.cpp:
* Platform/IPC/ArgumentCoders.h:
* Platform/IPC/ArgumentDecoder.cpp:
* Platform/IPC/ArgumentDecoder.h:
* Platform/IPC/ArgumentEncoder.cpp:
* Platform/IPC/ArgumentEncoder.h:
* Platform/IPC/Arguments.h:
* Platform/IPC/Attachment.cpp:
* Platform/IPC/Attachment.h:
* Platform/IPC/Connection.cpp:
(IPC::Connection::Connection):
* Platform/IPC/Connection.h:
* Platform/IPC/HandleMessage.h:
* Platform/IPC/MessageDecoder.cpp:
* Platform/IPC/MessageDecoder.h:
* Platform/IPC/MessageEncoder.cpp:
* Platform/IPC/MessageEncoder.h:
* Platform/IPC/MessageFlags.h:
* Platform/IPC/MessageReceiver.h:
* Platform/IPC/MessageReceiverMap.cpp:
* Platform/IPC/MessageReceiverMap.h:
* Platform/IPC/mac/ConnectionMac.cpp:
* Platform/IPC/mac/ImportanceAssertion.h:
* Platform/IPC/mac/MachPort.h:
* Platform/SharedMemory.h:
* Platform/mac/SharedMemoryMac.cpp:
(WebKit::SharedMemory::Handle::encode):
(WebKit::SharedMemory::Handle::decode):
* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::streamDidReceiveData):
(WebKit::PluginControllerProxy::manualStreamDidReceiveData):
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/PluginControllerProxy.messages.in:
* PluginProcess/PluginCreationParameters.cpp:
(WebKit::PluginCreationParameters::encode):
(WebKit::PluginCreationParameters::decode):
* PluginProcess/PluginCreationParameters.h:
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::didReceiveMessage):
(WebKit::PluginProcess::didClose):
(WebKit::PluginProcess::didReceiveInvalidMessage):
(WebKit::PluginProcess::createWebProcessConnection):
* PluginProcess/PluginProcess.h:
* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::create):
(WebKit::WebProcessConnection::WebProcessConnection):
(WebKit::WebProcessConnection::setGlobalException):
(WebKit::WebProcessConnection::didReceiveMessage):
(WebKit::WebProcessConnection::didReceiveSyncMessage):
(WebKit::WebProcessConnection::didClose):
(WebKit::WebProcessConnection::didReceiveInvalidMessage):
* PluginProcess/WebProcessConnection.h:
(WebKit::WebProcessConnection::connection):
* PluginProcess/mac/PluginControllerProxyMac.mm:
(WebKit::PluginControllerProxy::setComplexTextInputState):
* Scripts/webkit2/messages.py:
(arguments_type_old):
(message_to_struct_declaration):
(forward_declarations_and_headers):
(generate_messages_header):
(async_message_statement):
(sync_message_statement):
(headers_for_type):
(generate_message_handler):
* Scripts/webkit2/messages_unittest.py:
(IPC):
(std):
* Shared/API/Cocoa/RemoteObjectRegistry.h:
* Shared/APIGeometry.cpp:
(API::Point::encode):
(API::Point::decode):
(API::Size::encode):
(API::Size::decode):
(API::Rect::encode):
(API::Rect::decode):
* Shared/APIGeometry.h:
* Shared/APINumber.h:
(API::Number::encode):
(API::Number::decode):
* Shared/Authentication/AuthenticationManager.h:
* Shared/ChildProcess.cpp:
(WebKit::didCloseOnConnectionWorkQueue):
(WebKit::ChildProcess::initialize):
(WebKit::ChildProcess::initializeConnection):
(WebKit::ChildProcess::addMessageReceiver):
(WebKit::ChildProcess::removeMessageReceiver):
(WebKit::ChildProcess::messageSenderConnection):
* Shared/ChildProcess.h:
(WebKit::ChildProcess::parentProcessConnection):
(WebKit::ChildProcess::messageReceiverMap):
* Shared/ChildProcessProxy.cpp:
(WebKit::ChildProcessProxy::fromConnection):
(WebKit::ChildProcessProxy::sendMessage):
(WebKit::ChildProcessProxy::addMessageReceiver):
(WebKit::ChildProcessProxy::removeMessageReceiver):
(WebKit::ChildProcessProxy::dispatchMessage):
(WebKit::ChildProcessProxy::dispatchSyncMessage):
(WebKit::ChildProcessProxy::didFinishLaunching):
(WebKit::ChildProcessProxy::connectionWillOpen):
(WebKit::ChildProcessProxy::connectionWillClose):
* Shared/ChildProcessProxy.h:
(WebKit::ChildProcessProxy::connection):
(WebKit::ChildProcessProxy::send):
* Shared/ChildProcessSupplement.h:
(WebKit::ChildProcessSupplement::initializeConnection):
* Shared/ConnectionStack.h:
(WebKit::ConnectionStack::current):
(WebKit::ConnectionStack::CurrentConnectionPusher::CurrentConnectionPusher):
* Shared/CoreIPCSupport/WebContextMessageKinds.h:
(WebContextLegacyMessages::messageReceiverName):
(WebContextLegacyMessages::postMessageMessageName):
(WebContextLegacyMessages::postSynchronousMessageMessageName):
* Shared/Databases/DatabaseProcessCreationParameters.cpp:
(WebKit::DatabaseProcessCreationParameters::encode):
(WebKit::DatabaseProcessCreationParameters::decode):
* Shared/Databases/DatabaseProcessCreationParameters.h:
* Shared/DictionaryPopupInfo.cpp:
(WebKit::DictionaryPopupInfo::encode):
(WebKit::DictionaryPopupInfo::decode):
* Shared/DictionaryPopupInfo.h:
* Shared/Downloads/Download.cpp:
(WebKit::Download::didFail):
(WebKit::Download::didCancel):
(WebKit::Download::messageSenderConnection):
* Shared/Downloads/Download.h:
* Shared/Downloads/DownloadManager.cpp:
(WebKit::DownloadManager::downloadProxyConnection):
* Shared/Downloads/DownloadManager.h:
* Shared/Downloads/mac/DownloadMac.mm:
(WebKit::Download::cancel):
(-[WKDownloadAsDelegate download:didFailWithError:]):
* Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
* Shared/EditorState.h:
* Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
* Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
(WebKit::ChildProcessMainDelegate::getConnectionIdentifier):
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
* Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
(WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
* Shared/FileAPI/BlobRegistrationData.cpp:
(WebKit::BlobRegistrationData::encode):
(WebKit::BlobRegistrationData::decode):
* Shared/FileAPI/BlobRegistrationData.h:
* Shared/FontInfo.cpp:
(WebKit::FontInfo::encode):
(WebKit::FontInfo::decode):
* Shared/FontInfo.h:
* Shared/LayerTreeContext.h:
* Shared/Network/CustomProtocols/CustomProtocolManager.h:
* Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
* Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
(WebKit::CustomProtocolManager::initializeConnection):
(WebKit::CustomProtocolManager::didLoadData):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):
* Shared/Network/NetworkResourceLoadParameters.h:
* Shared/OriginAndDatabases.cpp:
(WebKit::OriginAndDatabases::encode):
(WebKit::OriginAndDatabases::decode):
* Shared/OriginAndDatabases.h:
* Shared/PlatformPopupMenuData.cpp:
(WebKit::PlatformPopupMenuData::encode):
(WebKit::PlatformPopupMenuData::decode):
* Shared/PlatformPopupMenuData.h:
* Shared/Plugins/NPIdentifierData.cpp:
(WebKit::NPIdentifierData::encode):
(WebKit::NPIdentifierData::decode):
* Shared/Plugins/NPIdentifierData.h:
* Shared/Plugins/NPObjectMessageReceiver.h:
* Shared/Plugins/NPRemoteObjectMap.cpp:
(WebKit::NPRemoteObjectMap::create):
(WebKit::NPRemoteObjectMap::NPRemoteObjectMap):
(WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
* Shared/Plugins/NPRemoteObjectMap.h:
(WebKit::NPRemoteObjectMap::connection):
* Shared/Plugins/NPVariantData.cpp:
(WebKit::NPVariantData::encode):
(WebKit::NPVariantData::decode):
* Shared/Plugins/NPVariantData.h:
* Shared/Plugins/PluginProcessCreationParameters.cpp:
(WebKit::PluginProcessCreationParameters::encode):
(WebKit::PluginProcessCreationParameters::decode):
* Shared/Plugins/PluginProcessCreationParameters.h:
* Shared/PrintInfo.cpp:
(WebKit::PrintInfo::encode):
(WebKit::PrintInfo::decode):
* Shared/PrintInfo.h:
* Shared/SandboxExtension.h:
(WebKit::SandboxExtension::Handle::encode):
(WebKit::SandboxExtension::Handle::decode):
(WebKit::SandboxExtension::HandleArray::encode):
(WebKit::SandboxExtension::HandleArray::decode):
* Shared/SecurityOriginData.cpp:
(WebKit::SecurityOriginData::encode):
(WebKit::SecurityOriginData::decode):
* Shared/SecurityOriginData.h:
* Shared/SessionState.cpp:
(WebKit::SessionState::encode):
(WebKit::SessionState::decode):
* Shared/SessionState.h:
* Shared/ShareableBitmap.cpp:
(WebKit::ShareableBitmap::Handle::encode):
(WebKit::ShareableBitmap::Handle::decode):
* Shared/ShareableBitmap.h:
* Shared/ShareableResource.cpp:
(WebKit::ShareableResource::Handle::encode):
(WebKit::ShareableResource::Handle::decode):
* Shared/ShareableResource.h:
* Shared/StatisticsData.cpp:
(WebKit::StatisticsData::encode):
(WebKit::StatisticsData::decode):
* Shared/StatisticsData.h:
* Shared/TextCheckerState.h:
* Shared/UpdateInfo.cpp:
(WebKit::UpdateInfo::encode):
(WebKit::UpdateInfo::decode):
* Shared/UpdateInfo.h:
* Shared/UserData.cpp:
(WebKit::UserData::encode):
(WebKit::UserData::decode):
* Shared/UserData.h:
* Shared/UserMessageCoders.h:
(WebKit::UserMessageEncoder::baseEncode):
(WebKit::UserMessageDecoder::baseDecode):
* Shared/WebBackForwardListItem.cpp:
(WebKit::WebBackForwardListItem::encode):
(WebKit::WebBackForwardListItem::decode):
* Shared/WebBackForwardListItem.h:
* Shared/WebConnection.cpp:
(WebKit::WebConnection::postMessage):
(WebKit::WebConnection::didReceiveMessage):
(WebKit::WebConnection::handleMessage):
* Shared/WebConnection.h:
* Shared/WebContextMenuItemData.cpp:
(WebKit::WebContextMenuItemData::encode):
(WebKit::WebContextMenuItemData::decode):
* Shared/WebContextMenuItemData.h:
* Shared/WebCoreArgumentCoders.cpp:
* Shared/WebCoreArgumentCoders.h:
* Shared/WebEvent.cpp:
(WebKit::WebEvent::encode):
(WebKit::WebEvent::decode):
* Shared/WebEvent.h:
* Shared/WebGeolocationPosition.cpp:
(WebKit::WebGeolocationPosition::Data::encode):
(WebKit::WebGeolocationPosition::Data::decode):
* Shared/WebGeolocationPosition.h:
* Shared/WebHitTestResult.cpp:
(WebKit::WebHitTestResult::Data::encode):
(WebKit::WebHitTestResult::Data::decode):
* Shared/WebHitTestResult.h:
* Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::encode):
(WebKit::WebKeyboardEvent::decode):
* Shared/WebMouseEvent.cpp:
(WebKit::WebMouseEvent::encode):
(WebKit::WebMouseEvent::decode):
* Shared/WebNavigationDataStore.h:
(WebKit::WebNavigationDataStore::encode):
(WebKit::WebNavigationDataStore::decode):
* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):
* Shared/WebPageCreationParameters.h:
* Shared/WebPageGroupData.cpp:
(WebKit::WebPageGroupData::encode):
(WebKit::WebPageGroupData::decode):
* Shared/WebPageGroupData.h:
* Shared/WebPlatformTouchPoint.cpp:
(WebKit::WebPlatformTouchPoint::encode):
(WebKit::WebPlatformTouchPoint::decode):
* Shared/WebPopupItem.cpp:
(WebKit::WebPopupItem::encode):
(WebKit::WebPopupItem::decode):
* Shared/WebPopupItem.h:
* Shared/WebPreferencesStore.cpp:
(WebKit::WebPreferencesStore::encode):
(WebKit::WebPreferencesStore::decode):
* Shared/WebPreferencesStore.h:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
* Shared/WebSerializedScriptValue.h:
(WebKit::WebSerializedScriptValue::dataReference):
* Shared/WebTouchEvent.cpp:
(WebKit::WebTouchEvent::encode):
(WebKit::WebTouchEvent::decode):
* Shared/WebWheelEvent.cpp:
(WebKit::WebWheelEvent::encode):
(WebKit::WebWheelEvent::decode):
* Shared/cf/ArgumentCodersCF.cpp:
(IPC::encode):
(IPC::decode):
* Shared/cf/ArgumentCodersCF.h:
* Shared/mac/ArgumentCodersMac.h:
* Shared/mac/ArgumentCodersMac.mm:
(IPC::encode):
(IPC::decode):
* Shared/mac/AttributedString.h:
* Shared/mac/AttributedString.mm:
(WebKit::AttributedString::encode):
(WebKit::AttributedString::decode):
* Shared/mac/ColorSpaceData.h:
* Shared/mac/ColorSpaceData.mm:
(WebKit::ColorSpaceData::encode):
(WebKit::ColorSpaceData::decode):
* Shared/mac/LayerTreeContextMac.mm:
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
* Shared/mac/ObjCObjectGraphCoders.h:
* Shared/mac/ObjCObjectGraphCoders.mm:
(WebKit::ObjCObjectGraphEncoder::baseEncode):
(WebKit::ObjCObjectGraphDecoder::baseDecode):
(WebKit::WebContextObjCObjectGraphEncoderImpl::encode):
(WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
(WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):
(WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
(WebKit::WebContextObjCObjectGraphEncoder::encode):
(WebKit::WebContextObjCObjectGraphDecoder::decode):
(WebKit::InjectedBundleObjCObjectGraphEncoder::encode):
(WebKit::InjectedBundleObjCObjectGraphDecoder::decode):
* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerBackingStore.mm:
(RemoteLayerBackingStore::encode):
(RemoteLayerBackingStore::decode):
* Shared/mac/RemoteLayerTreeTransaction.h:
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::RemoteLayerTreeTransaction::encode):
(WebKit::RemoteLayerTreeTransaction::decode):
* Shared/mac/SandboxExtensionMac.mm:
(WebKit::SandboxExtension::Handle::encode):
(WebKit::SandboxExtension::Handle::decode):
(WebKit::SandboxExtension::HandleArray::encode):
(WebKit::SandboxExtension::HandleArray::decode):
* Shared/mac/SecItemRequestData.cpp:
(WebKit::SecItemRequestData::encode):
(WebKit::SecItemRequestData::decode):
* Shared/mac/SecItemRequestData.h:
* Shared/mac/SecItemResponseData.cpp:
(WebKit::SecItemResponseData::encode):
(WebKit::SecItemResponseData::decode):
* Shared/mac/SecItemResponseData.h:
* Shared/mac/SecItemShim.cpp:
(WebKit::SecItemShim::initializeConnection):
* Shared/mac/SecItemShim.h:
* Shared/mac/WebCoreArgumentCodersMac.mm:
(IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
(IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
(IPC::ArgumentCoder<ResourceResponse>::encodePlatformData):
(IPC::ArgumentCoder<ResourceResponse>::decodePlatformData):
(IPC::ArgumentCoder<CertificateInfo>::encode):
(IPC::ArgumentCoder<CertificateInfo>::decode):
(IPC::ArgumentCoder<ResourceError>::encodePlatformData):
(IPC::ArgumentCoder<ResourceError>::decodePlatformData):
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
* UIProcess/API/mac/WKView.mm:
(-[WKView _accessibilityRegisterUIProcessTokens]):
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::create):
* UIProcess/Databases/DatabaseProcessProxy.cpp:
(WebKit::DatabaseProcessProxy::connectionWillOpen):
(WebKit::DatabaseProcessProxy::connectionWillClose):
(WebKit::DatabaseProcessProxy::getDatabaseProcessConnection):
(WebKit::DatabaseProcessProxy::didClose):
(WebKit::DatabaseProcessProxy::didReceiveInvalidMessage):
(WebKit::DatabaseProcessProxy::didCreateDatabaseToWebProcessConnection):
(WebKit::DatabaseProcessProxy::didFinishLaunching):
* UIProcess/Databases/DatabaseProcessProxy.h:
* UIProcess/Databases/DatabaseProcessProxy.messages.in:
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::createData):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxy.h:
* UIProcess/Downloads/DownloadProxy.messages.in:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::didFinishLaunchingProcess):
* UIProcess/Launcher/ProcessLauncher.h:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
(WebKit::tryPreexistingProcess):
(WebKit::createProcess):
* UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
* UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
(-[WKCustomProtocolLoader connection:didReceiveData:]):
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::connectionWillOpen):
(WebKit::NetworkProcessProxy::connectionWillClose):
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
(WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
(WebKit::NetworkProcessProxy::didReceiveMessage):
(WebKit::NetworkProcessProxy::didReceiveSyncMessage):
(WebKit::NetworkProcessProxy::didClose):
(WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
(WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
(WebKit::NetworkProcessProxy::didFinishLaunching):
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.messages.in:
* UIProcess/Notifications/WebNotification.h:
* UIProcess/PageClient.h:
* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::getPluginProcessConnection):
(WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
(WebKit::PluginProcessProxy::didClose):
(WebKit::PluginProcessProxy::didReceiveInvalidMessage):
(WebKit::PluginProcessProxy::didFinishLaunching):
(WebKit::PluginProcessProxy::didCreateWebProcessConnection):
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/Plugins/PluginProcessProxy.messages.in:
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformInitializePluginProcess):
* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::StorageArea::addListener):
(WebKit::StorageManager::StorageArea::removeListener):
(WebKit::StorageManager::StorageArea::setItem):
(WebKit::StorageManager::StorageArea::removeItem):
(WebKit::StorageManager::StorageArea::clear):
(WebKit::StorageManager::StorageArea::dispatchEvents):
(WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
(WebKit::StorageManager::SessionStorageNamespace::create):
(WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
(WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
(WebKit::StorageManager::createSessionStorageNamespace):
(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
(WebKit::StorageManager::processWillCloseConnection):
(WebKit::StorageManager::createLocalStorageMap):
(WebKit::StorageManager::createSessionStorageMap):
(WebKit::StorageManager::destroyStorageMap):
(WebKit::StorageManager::getValues):
(WebKit::StorageManager::setItem):
(WebKit::StorageManager::removeItem):
(WebKit::StorageManager::clear):
(WebKit::StorageManager::createSessionStorageNamespaceInternal):
(WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
(WebKit::StorageManager::invalidateConnectionInternal):
(WebKit::StorageManager::findStorageArea):
* UIProcess/Storage/StorageManager.h:
* UIProcess/WebApplicationCacheManagerProxy.h:
* UIProcess/WebConnectionToWebProcess.cpp:
(WebKit::WebConnectionToWebProcess::encodeMessageBody):
(WebKit::WebConnectionToWebProcess::decodeMessageBody):
(WebKit::WebConnectionToWebProcess::messageSenderConnection):
* UIProcess/WebConnectionToWebProcess.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::networkingProcessConnection):
(WebKit::WebContext::didReceiveInvalidMessage):
(WebKit::WebContext::createNewWebProcess):
(WebKit::WebContext::postMessageToInjectedBundle):
(WebKit::WebContext::addMessageReceiver):
(WebKit::WebContext::removeMessageReceiver):
(WebKit::WebContext::dispatchMessage):
(WebKit::WebContext::dispatchSyncMessage):
(WebKit::WebContext::didReceiveMessage):
(WebKit::WebContext::didReceiveSyncMessage):
* UIProcess/WebContext.h:
* UIProcess/WebContextUserMessageCoders.h:
(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):
* UIProcess/WebCookieManagerProxy.h:
* UIProcess/WebDatabaseManagerProxy.h:
* UIProcess/WebEditCommandProxy.cpp:
(WebKit::WebEditCommandProxy::unapply):
(WebKit::WebEditCommandProxy::reapply):
* UIProcess/WebFrameProxy.h:
* UIProcess/WebFullScreenManagerProxy.h:
* UIProcess/WebGeolocationManagerProxy.cpp:
(WebKit::WebGeolocationManagerProxy::startUpdating):
(WebKit::WebGeolocationManagerProxy::stopUpdating):
(WebKit::WebGeolocationManagerProxy::removeRequester):
(WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy):
* UIProcess/WebGeolocationManagerProxy.h:
* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::setIconDataForIconURL):
(WebKit::WebIconDatabase::synchronousIconDataForPageURL):
* UIProcess/WebIconDatabase.h:
* UIProcess/WebIconDatabase.messages.in:
* UIProcess/WebInspectorProxy.h:
* UIProcess/WebMediaCacheManagerProxy.h:
* UIProcess/WebOriginDataManagerProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::willGoToBackForwardListItem):
(WebKit::WebPageProxy::preferencesDidChange):
(WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
(WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
(WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
(WebKit::WebPageProxy::didFinishLoadForFrame):
(WebKit::WebPageProxy::didFailLoadForFrame):
(WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
(WebKit::WebPageProxy::didReceiveTitleForFrame):
(WebKit::WebPageProxy::didFirstLayoutForFrame):
(WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
(WebKit::WebPageProxy::didLayout):
(WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
(WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
(WebKit::WebPageProxy::didRunInsecureContentForFrame):
(WebKit::WebPageProxy::didDetectXSSForFrame):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
(WebKit::WebPageProxy::decidePolicyForResponse):
(WebKit::WebPageProxy::decidePolicyForResponseSync):
(WebKit::WebPageProxy::unableToImplementPolicy):
(WebKit::WebPageProxy::willSubmitForm):
(WebKit::WebPageProxy::mouseDidMoveOverElement):
(WebKit::WebPageProxy::connectionWillOpen):
(WebKit::WebPageProxy::connectionWillClose):
(WebKit::WebPageProxy::sendMessage):
(WebKit::WebPageProxy::messageSenderConnection):
(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::internalShowContextMenu):
(WebKit::WebPageProxy::dataCallback):
(WebKit::WebPageProxy::scriptValueCallback):
(WebKit::WebPageProxy::beginPrinting):
(WebKit::WebPageProxy::endPrinting):
(WebKit::WebPageProxy::computePagesForPrinting):
(WebKit::WebPageProxy::drawRectToImage):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::drawPagesForPrinting):
(WebKit::WebPageProxy::savePDFToFileInDownloadsFolder):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::connectionWillOpen):
(WebKit::WebProcessProxy::connectionWillClose):
(WebKit::WebProcessProxy::addBackForwardItem):
(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):
(WebKit::WebProcessProxy::didClose):
(WebKit::WebProcessProxy::didReceiveInvalidMessage):
(WebKit::WebProcessProxy::didFinishLaunching):
* UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::fromConnection):
* UIProcess/WebProcessProxy.messages.in:
* UIProcess/WebResourceCacheManagerProxy.h:
* UIProcess/cf/WebBackForwardListCF.cpp:
(WebKit::WebBackForwardList::createCFDictionaryRepresentation):
* UIProcess/mac/RemoteLayerTreeHost.h:
* UIProcess/mac/SecItemShimProxy.cpp:
(WebKit::SecItemShimProxy::initializeConnection):
(WebKit::SecItemShimProxy::secItemRequest):
* UIProcess/mac/SecItemShimProxy.h:
* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::registerWebProcessAccessibilityToken):
(WebKit::WebPageProxy::registerUIProcessAccessibilityTokens):
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/ApplicationCache/WebApplicationCacheManager.h:
* WebProcess/Cookies/WebCookieManager.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::messageSenderConnection):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
(WebKit::WebToDatabaseProcessConnection::WebToDatabaseProcessConnection):
(WebKit::WebToDatabaseProcessConnection::didReceiveMessage):
(WebKit::WebToDatabaseProcessConnection::didClose):
(WebKit::WebToDatabaseProcessConnection::didReceiveInvalidMessage):
* WebProcess/Databases/WebToDatabaseProcessConnection.h:
(WebKit::WebToDatabaseProcessConnection::create):
(WebKit::WebToDatabaseProcessConnection::connection):
* WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
(WebKit::WebContentProcessMainDelegate::getConnectionIdentifier):
* WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::didReceiveMessage):
* WebProcess/FullScreen/WebFullScreenManager.h:
* WebProcess/Geolocation/WebGeolocationManager.h:
* WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
(WebKit::WebIconDatabaseProxy::synchronousIconForPageURL):
(WebKit::WebIconDatabaseProxy::setIconDataForIconURL):
* WebProcess/IconDatabase/WebIconDatabaseProxy.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::postMessage):
(WebKit::InjectedBundle::postSynchronousMessage):
* WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
(WebKit::InjectedBundleUserMessageEncoder::encode):
(WebKit::InjectedBundleUserMessageDecoder::decode):
* WebProcess/MediaCache/WebMediaCacheManager.h:
* WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::NetworkProcessConnection):
(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didReceiveSyncMessage):
(WebKit::NetworkProcessConnection::didClose):
(WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
* WebProcess/Network/NetworkProcessConnection.h:
(WebKit::NetworkProcessConnection::create):
(WebKit::NetworkProcessConnection::connection):
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::messageSenderConnection):
(WebKit::WebResourceLoader::didReceiveData):
* WebProcess/Network/WebResourceLoader.h:
* WebProcess/Network/WebResourceLoader.messages.in:
* WebProcess/Notifications/WebNotificationManager.h:
* WebProcess/OriginData/WebOriginDataManager.h:
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/Plugin.cpp:
(WebKit::Plugin::Parameters::encode):
(WebKit::Plugin::Parameters::decode):
* WebProcess/Plugins/Plugin.h:
* WebProcess/Plugins/PluginProcessConnection.cpp:
(WebKit::PluginProcessConnection::PluginProcessConnection):
(WebKit::PluginProcessConnection::didReceiveMessage):
(WebKit::PluginProcessConnection::didReceiveSyncMessage):
(WebKit::PluginProcessConnection::didClose):
(WebKit::PluginProcessConnection::didReceiveInvalidMessage):
* WebProcess/Plugins/PluginProcessConnection.h:
(WebKit::PluginProcessConnection::create):
(WebKit::PluginProcessConnection::connection):
* WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::initializeConnection):
(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
(WebKit::PluginProcessConnectionManager::pluginProcessCrashed):
* WebProcess/Plugins/PluginProcessConnectionManager.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::geometryDidChange):
(WebKit::PluginProxy::streamDidReceiveData):
(WebKit::PluginProxy::manualStreamDidReceiveData):
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/ResourceCache/WebResourceCacheManager.h:
* WebProcess/Storage/StorageAreaMap.h:
* WebProcess/WebConnectionToUIProcess.cpp:
(WebKit::WebConnectionToUIProcess::encodeMessageBody):
(WebKit::WebConnectionToUIProcess::decodeMessageBody):
(WebKit::WebConnectionToUIProcess::messageSenderConnection):
* WebProcess/WebConnectionToUIProcess.h:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
* WebProcess/WebCoreSupport/WebDatabaseManager.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
* WebProcess/WebPage/DecoderAdapter.cpp:
(WebKit::DecoderAdapter::decodeBytes):
(WebKit::DecoderAdapter::decodeString):
* WebProcess/WebPage/DecoderAdapter.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/EncoderAdapter.cpp:
(WebKit::EncoderAdapter::dataReference):
(WebKit::EncoderAdapter::encodeBytes):
(WebKit::EncoderAdapter::encodeString):
* WebProcess/WebPage/EncoderAdapter.h:
* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::initializeConnection):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/WebPage/LayerTreeHost.h:
* WebProcess/WebPage/ViewGestureGeometryCollector.h:
* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::createInspectorPage):
* WebProcess/WebPage/WebInspector.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::messageSenderConnection):
(WebKit::WebPage::loadURL):
(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::loadString):
(WebKit::WebPage::loadData):
(WebKit::WebPage::loadHTMLString):
(WebKit::WebPage::loadAlternateHTMLString):
(WebKit::WebPage::loadPlainTextString):
(WebKit::WebPage::loadWebArchiveData):
(WebKit::WebPage::postInjectedBundleMessage):
(WebKit::WebPage::runJavaScriptInMainFrame):
(WebKit::WebPage::getContentsAsMHTMLData):
(WebKit::WebPage::getSelectionAsWebArchiveData):
(WebKit::WebPage::getMainResourceDataOfFrame):
(WebKit::WebPage::getResourceDataFromFrame):
(WebKit::WebPage::getWebArchiveOfFrame):
(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):
(WebKit::WebPage::drawPagesToPDF):
(WebKit::WebPage::savePDFToFileInDownloadsFolder):
(WebKit::WebPage::savePDFToTemporaryFolderAndOpenWithNativeApplication):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/WebPageGroupProxy.h:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::platformInitialize):
(WebKit::WebPage::registerUIProcessAccessibilityTokens):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
(WebKit::WebProcess::downloadProxyConnection):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::ensureNetworkProcessConnection):
(WebKit::WebProcess::didReceiveSyncMessage):
(WebKit::WebProcess::didReceiveMessage):
(WebKit::WebProcess::didClose):
(WebKit::WebProcess::didReceiveInvalidMessage):
(WebKit::WebProcess::postInjectedBundleMessage):
(WebKit::WebProcess::ensureWebToDatabaseProcessConnection):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:
* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
* config.h:

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

6 years agoMove remaining IPC related files to Platform/IPC.
andersca@apple.com [Mon, 30 Dec 2013 19:46:14 +0000 (19:46 +0000)]
Move remaining IPC related files to Platform/IPC.

Rubber-stamped by Andreas Kling.

* Platform/IPC/ArgumentCoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h.
* Platform/IPC/ArgumentCoders.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoders.cpp.
* Platform/IPC/ArgumentCoders.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentCoders.h.
* Platform/IPC/ArgumentDecoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.cpp.
* Platform/IPC/ArgumentDecoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentDecoder.h.
* Platform/IPC/ArgumentEncoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentEncoder.cpp.
* Platform/IPC/ArgumentEncoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/ArgumentEncoder.h.
* Platform/IPC/Arguments.h: Renamed from Source/WebKit2/Platform/CoreIPC/Arguments.h.
* Platform/IPC/Attachment.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/Attachment.cpp.
* Platform/IPC/Attachment.h: Renamed from Source/WebKit2/Platform/CoreIPC/Attachment.h.
* Platform/IPC/Connection.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/Connection.cpp.
* Platform/IPC/Connection.h: Renamed from Source/WebKit2/Platform/CoreIPC/Connection.h.
* Platform/IPC/HandleMessage.h: Renamed from Source/WebKit2/Platform/CoreIPC/HandleMessage.h.
* Platform/IPC/MessageDecoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageDecoder.cpp.
* Platform/IPC/MessageDecoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageDecoder.h.
* Platform/IPC/MessageEncoder.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageEncoder.cpp.
* Platform/IPC/MessageEncoder.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h.
* Platform/IPC/MessageFlags.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageFlags.h.
* Platform/IPC/MessageReceiver.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiver.h.
* Platform/IPC/MessageReceiverMap.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiverMap.cpp.
* Platform/IPC/MessageReceiverMap.h: Renamed from Source/WebKit2/Platform/CoreIPC/MessageReceiverMap.h.
* Platform/IPC/mac/ConnectionMac.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/mac/ConnectionMac.cpp.
* Platform/IPC/mac/ImportanceAssertion.h: Renamed from Source/WebKit2/Platform/CoreIPC/mac/ImportanceAssertion.h.
* Platform/IPC/mac/MachPort.h: Renamed from Source/WebKit2/Platform/CoreIPC/mac/MachPort.h.
* Platform/IPC/unix/AttachmentUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/unix/AttachmentUnix.cpp.
* Platform/IPC/unix/ConnectionUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/unix/ConnectionUnix.cpp.
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoReplace WTF::ThreadingOnce with std::call_once
andersca@apple.com [Mon, 30 Dec 2013 19:32:52 +0000 (19:32 +0000)]
Replace WTF::ThreadingOnce with std::call_once
https://bugs.webkit.org/show_bug.cgi?id=126215

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* dfg/DFGWorklist.cpp:
(JSC::DFG::globalWorklist):
* runtime/InitializeThreading.cpp:
(JSC::initializeThreading):

Source/WTF:

* GNUmakefile.list.am:
* wtf/CompilationThread.cpp:
(WTF::initializeCompilationThreads):
* wtf/ThreadingOnce.h: Removed.

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

6 years ago[GTK] [CMake] Parallel build sometimes fails when building libWebKit2APITestCore
mrobinson@webkit.org [Mon, 30 Dec 2013 18:45:37 +0000 (18:45 +0000)]
[GTK] [CMake] Parallel build sometimes fails when building libWebKit2APITestCore
https://bugs.webkit.org/show_bug.cgi?id=126294

Reviewed by Daniel Bates.

* UIProcess/API/gtk/tests/CMakeLists.txt: Give libWebKit2APITestCore a dependency on
WebKit2 so that it's always built before the auto-generated sources.

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

6 years ago[CMake] [GTK] Add support for GObject introspection
mrobinson@webkit.org [Mon, 30 Dec 2013 18:44:31 +0000 (18:44 +0000)]
[CMake] [GTK] Add support for GObject introspection
https://bugs.webkit.org/show_bug.cgi?id=126162

Reviewed by Daniel Bates.

.:

* Source/PlatformGTK.cmake: Add a 'gir' target that builds all GIR files.
* Source/cmake/OptionsGTK.cmake: Add a macro for propagating typelib
targets to the Source level of the build.

Source/JavaScriptCore:

* PlatformGTK.cmake: Add the GIR targets.

Source/WebCore:

* PlatformGTK.cmake: Build a list of WebKitDOM headers and expose it to the
parent scope of the build.

Source/WebKit:

* PlatformGTK.cmake: Add the GIR targets.

Source/WebKit2:

* PlatformGTK.cmake: Add the GIR targets, split the installed headers list
between WebKitWebExtension and the WebKit2 library. Update the headers list
with new headers.

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

6 years agoText::createTextRenderer() should return a RenderPtr.
akling@apple.com [Mon, 30 Dec 2013 16:41:37 +0000 (16:41 +0000)]
Text::createTextRenderer() should return a RenderPtr.
<https://webkit.org/b/126292>

Make createTextRenderer() return a RenderPtr and remove one manual
destroy() call. Also, since it should always return a valid object,
I turned a null check into an assertion instead.

Reviewed by Antti Koivisto.

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

6 years agoRemove attachChild
antti@apple.com [Mon, 30 Dec 2013 14:47:44 +0000 (14:47 +0000)]
Remove attachChild
https://bugs.webkit.org/show_bug.cgi?id=126288

Reviewed by Andreas Kling.

* dom/ContainerNode.cpp:
(WebCore::destroyRenderTreeIfNeeded):

    Rename detachChild and move the tests here.

(WebCore::ContainerNode::takeAllChildrenFrom):

    No need to call attachRenderTree explicitly anymore.

(WebCore::ContainerNode::removeBetween):

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

6 years agoRenderLayer: Store corner and resizer renderers in RenderPtrs.
akling@apple.com [Mon, 30 Dec 2013 14:13:19 +0000 (14:13 +0000)]
RenderLayer: Store corner and resizer renderers in RenderPtrs.
<https://webkit.org/b/126274>

Turn RenderLayer::m_scrollCorner and m_resizer into RenderPtrs.
Removed manual destroy() calls as appropriate. Also tweaked some
code to reduce nesting.

Reviewed by Anders Carlsson.

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

6 years agoXML document builder should create render tree asynchronously
antti@apple.com [Mon, 30 Dec 2013 14:04:44 +0000 (14:04 +0000)]
XML document builder should create render tree asynchronously
https://bugs.webkit.org/show_bug.cgi?id=126285

Source/WebCore:

Reviewed by Andreas Kling.

Stop creating renderers explicitly.
Fix SVG <use> element to not rely on parse time render tree construction.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::svgAttributeChanged):

    Remove renderer check, we may not have created the render tree yet.

(WebCore::SVGUseElement::willAttachRenderers):

    Switch to willAttachRenderers from willRecalcStyle. The latter is only called as long as style
    recalc doesn't start creating new renderers.

(WebCore::SVGUseElement::invalidateShadowTree):

    Remove renderer check, we may not have created the render tree yet.
    Invalidate with ReconstructRenderTree so willAttachRenderers will always get called.

* svg/SVGUseElement.h:
* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::exitText):
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::cdataBlock):

    Remove explicit call to attachRenderTree. The render tree will be created lazily.

LayoutTests:

Reviewed by Andreas Kling.

* platform/mac/fast/table/dynamic-caption-add-before-child-expected.png:
* platform/mac/fast/table/dynamic-caption-add-before-child-expected.txt:

    This is progression. Captions are now correctly in document order.

* svg/custom/object-no-size-attributes-expected.txt:

    Unnecessary text renderer disappears.

* svg/custom/resource-invalidation-crash-expected.txt:

    Progression, the dump has the correct fill.

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

6 years ago[EFL][WK2] Replace ecore_main_loop_iterate with waitUntilTrue in ewk tests
m.pakula@samsung.com [Mon, 30 Dec 2013 10:26:00 +0000 (10:26 +0000)]
[EFL][WK2] Replace ecore_main_loop_iterate with waitUntilTrue in ewk tests
https://bugs.webkit.org/show_bug.cgi?id=125919

Reviewed by Gyuyoung Kim.

Using ecore_main_loop_iterate in while loop may result in tests hang-up when
condition is not met. Replacing it with waitUntilTrue introduces a timer
after which internal loop is canceled. This will cause test to fail instead
of running infinitely.

* UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
(TEST_F):
* UIProcess/API/efl/tests/test_ewk2_view.cpp:
(EWK2ViewTest::onVibrate):
(EWK2ViewTest::onCancelVibration):
(EWK2ViewTest::loadVibrationHTMLString):
(TEST_F):

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

6 years ago[GTK] Split WebKit2APITests/TestWebKitWebView
carlosgc@webkit.org [Mon, 30 Dec 2013 09:58:14 +0000 (09:58 +0000)]
[GTK] Split WebKit2APITests/TestWebKitWebView
https://bugs.webkit.org/show_bug.cgi?id=126284

Reviewed by Philippe Normand.

Source/WebKit2:

WebKitWebView test is too big already making more difficult to
handle timeouts and skipped tests. Split it in 3 by moving
UIClient and auth tests to their own files.

* UIProcess/API/gtk/tests/GNUmakefile.am:
* UIProcess/API/gtk/tests/TestAuthentication.cpp: Added.
(testWebViewAuthenticationRequest):
(testWebViewAuthenticationCancel):
(testWebViewAuthenticationLoadCancelled):
(testWebViewAuthenticationFailure):
(testWebViewAuthenticationNoCredential):
(testWebViewAuthenticationStorage):
(testWebViewAuthenticationSuccess):
(serverCallback):
(beforeAll):
(afterAll):
* UIProcess/API/gtk/tests/TestUIClient.cpp: Added.
(testWebViewCreateReadyClose):
(checkMimeTypeForFilter):
(testWebViewAllowModalDialogs):
(testWebViewDisallowModalDialogs):
(testWebViewJavaScriptDialogs):
(testWebViewWindowProperties):
(testWebViewMouseTarget):
(testWebViewPermissionRequests):
(testWebViewFileChooserRequest):
(beforeAll):
(afterAll):
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(beforeAll):
(afterAll):

Tools:

Skip only WebKitWebView/mouse-target and all TestAuthentication
tests that are timing out when running under xvfb.

* Scripts/run-gtk-tests:
(TestRunner):

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

6 years agoReverted r156742. The same fix was reverted from Blink due to heap-use-after-free...
joone.hur@intel.com [Mon, 30 Dec 2013 06:31:41 +0000 (06:31 +0000)]
Reverted r156742. The same fix was reverted from Blink due to heap-use-after-free on ClusterFuzz.
https://bugs.webkit.org/show_bug.cgi?id=126275

https://codereview.chromium.org/102993011

Reviewed by Darin Adler.

Source/WebCore:

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

LayoutTests:

* fast/css/first-letter-block-change.html: Removed.
* platform/gtk-wk1/fast/css/first-letter-block-change-expected.png: Removed.
* platform/gtk-wk2/fast/css/first-letter-block-change-expected.png: Removed.
* platform/gtk/fast/css/first-letter-block-change-expected.txt: Removed.

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

6 years agoRemove unused functions in GraphicsContext3D.cpp
changseok.oh@collabora.com [Mon, 30 Dec 2013 05:12:17 +0000 (05:12 +0000)]
Remove unused functions in GraphicsContext3D.cpp
https://bugs.webkit.org/show_bug.cgi?id=126265

Reviewed by Andreas Kling.

platformGraphicsContext3D, platformTexture and platformLayer in GC3D.cpp
seem not used by any ports.

No new tests, no functionality changed.

* platform/graphics/GraphicsContext3D.cpp:

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

6 years ago[EFL][WK2] Disable geolocation API test
m.pakula@samsung.com [Mon, 30 Dec 2013 01:27:55 +0000 (01:27 +0000)]
[EFL][WK2] Disable geolocation API test
https://bugs.webkit.org/show_bug.cgi?id=125851

Reviewed by Gyuyoung Kim.

Geolocation is turned off by default in EFL port, so it shouldn't be tested.

* TestWebKitAPI/PlatformEfl.cmake: Move Geolocation to test_webkit2_api_fail_BINARIES.

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

6 years ago[EFL] Remove ewk_view_tiled
ryuan.choi@samsung.com [Mon, 30 Dec 2013 01:23:58 +0000 (01:23 +0000)]
[EFL] Remove ewk_view_tiled
https://bugs.webkit.org/show_bug.cgi?id=125961

Reviewed by Gyuyoung Kim.

Source/WebKit:

* PlatformEfl.cmake: Removed ewk_view_tiled related files.

Source/WebKit/efl:

We didn't use ewk_view_tiled very long time while we focused webkit2/efl.
There are many bugs and we don't have plan to fix them.
Instead, We will use WebCore's TiledBackingStore and it looks more stable.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::transitionToCommittedForNewPage):
* ewk/ewk_tiled_backing_store.cpp: Removed.
* ewk/ewk_tiled_backing_store_private.h: Removed.
* ewk/ewk_tiled_matrix.cpp: Removed.
* ewk/ewk_tiled_matrix_private.h: Removed.
* ewk/ewk_tiled_model.cpp: Removed.
* ewk/ewk_tiled_model_private.h: Removed.
* ewk/ewk_view.cpp:
* ewk/ewk_view.h:
* ewk/ewk_view_private.h:
* ewk/ewk_view_tiled.cpp: Removed.
* tests/UnitTestUtils/EWKTestView.cpp:
(EWKUnitTests::EWKTestView::init):

Tools:

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(shouldUseTiledBackingStore):
Moved from DumpRenderTreeChrome to enable WebCore's TiledBackingStore
instead of switching ewk_view_tiled.
(DumpRenderTreeChrome::createView):
* DumpRenderTree/efl/DumpRenderTreeView.cpp:
(drtViewAdd):
* EWebLauncher/main.c: Removed ewk_view_tiled option.
(windowCreate):
(parseUserArguments):

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

6 years agoFix build error on 64bit debug build.
gyuyoung.kim@samsung.com [Mon, 30 Dec 2013 00:40:06 +0000 (00:40 +0000)]
Fix build error on 64bit debug build.
https://bugs.webkit.org/show_bug.cgi?id=126248

r161076 used ‘%lli’(for long long int) for int64_t(aka long int).
However, in a 64bit compile, int64_t is 'long int', not a 'long long int'.
To support 32bit and 64bit, we use static_cast<long long>.

* Modules/indexeddb/IDBTransactionBackend.cpp:
(WebCore::IDBTransactionBackend::commit):

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

6 years agoRemove some accidental commented out code.
antti@apple.com [Mon, 30 Dec 2013 00:38:11 +0000 (00:38 +0000)]
Remove some accidental commented out code.

* testing/Internals.cpp:
(WebCore::Internals::mallocStatistics):

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

6 years agoPending revision popover is slightly misplaced at build.webkit.org/dashboard
ap@apple.com [Mon, 30 Dec 2013 00:27:51 +0000 (00:27 +0000)]
Pending revision popover is slightly misplaced at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=126278

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype._appendPendingRevisionCount): Create a span for the text,
as StatusLineView message element has extra padding, and doesn't fit the text snugly.
(BuildbotQueueView.prototype._revisionPopoverContentForIteration): Added bug number to a FIXME.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:
(StatusLineView.prototype.set messageElement): Removed the getter, as we no longer need it.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
Removed display:inline-block hack for messageElement div, as we no longer use it for measuring text bounds.

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

6 years agoInterrupted test runs should not count at build.webkit.org/dashboard
ap@apple.com [Sun, 29 Dec 2013 23:53:23 +0000 (23:53 +0000)]
Interrupted test runs should not count at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=126279

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype.get productive):
(BuildbotIteration.prototype.get previousProductiveIteration): Replaced previous with
this accessor to skips iterations that don't have relevant data. We still want to
display them, but revision ranges should not be affected.
(BuildbotIteration.prototype.update): Record whether the iteration was up for retry.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
Use latest productive iteration instead of latest iteration for pending revision
count and popovers.

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

6 years agoRevert the results change. It depended on xml parser changes which were not landed.
antti@apple.com [Sun, 29 Dec 2013 23:50:12 +0000 (23:50 +0000)]
Revert the results change. It depended on xml parser changes which were not landed.

* platform/mac/fast/table/dynamic-caption-add-before-child-expected.png:
* platform/mac/fast/table/dynamic-caption-add-before-child-expected.txt:

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

6 years agoFix build.
antti@apple.com [Sun, 29 Dec 2013 23:08:09 +0000 (23:08 +0000)]
Fix build.

* xml/parser/XMLDocumentParser.cpp:

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

6 years agoSource/WebCore: Remove Node::attached()
antti@apple.com [Sun, 29 Dec 2013 22:40:04 +0000 (22:40 +0000)]
Source/WebCore: Remove Node::attached()
https://bugs.webkit.org/show_bug.cgi?id=126276

Reviewed by Sam Weinig.

Node::attached() is poorly defined. Replace it with renderer() and inRenderedDocument() tests as appropriate.

Also remove some unnecessary explicit attachRenderTree/detachRenderTree calls from the tree builders.

LayoutTests: Remove Node::attached()
https://bugs.webkit.org/show_bug.cgi?id=126276

Reviewed by Sam Weinig.

* platform/mac/fast/table/dynamic-caption-add-before-child-expected.png:
* platform/mac/fast/table/dynamic-caption-add-before-child-expected.txt:

    This test result change is a progression. Dynamic captions are now correctly in document order.

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

6 years agoGet rid of DFG forward exiting
fpizlo@apple.com [Sun, 29 Dec 2013 21:50:55 +0000 (21:50 +0000)]
Get rid of DFG forward exiting
https://bugs.webkit.org/show_bug.cgi?id=125531

Reviewed by Oliver Hunt.

This finally gets rid of forward exiting. Forward exiting was always a fragile concept
since it involved the compiler trying to figure out how to "roll forward" the
execution from some DFG node to the next bytecode index. It was always easy to find
counterexamples where it broke, and it has always served as an obstacle to adding
compiler improvements - the latest being http://webkit.org/b/125523, which tried to
make DCE work for more things.

This change finishes the work of removing forward exiting. A lot of forward exiting
was already removed in some other bugs, but SetLocal still did forward exits. SetLocal
is in many ways the hardest to remove, since the forward exiting of SetLocal also
implied that any conversion nodes inserted before the SetLocal would then also be
marked as forward-exiting. Hence SetLocal's forward-exiting made a bunch of other
things also forward-exiting, and this was always a source of weirdo bugs.

SetLocal must be able to exit in case it performs a hoisted type speculation. Nodes
inserted just before SetLocal must also be able to exit - for example type check
hoisting may insert a CheckStructure, or fixup phase may insert something like
Int32ToDouble. But if any of those nodes tried to backward exit, then this could lead
to the reexecution of a side-effecting operation, for example:

    a: Call(...)
    b: SetLocal(@a, r1)

For a long time it seemed like SetLocal *had* to exit forward because of this. But
this change side-steps the problem by changing the ByteCodeParser to always emit a
kind of "two-phase commit" for stores to local variables. Now when the ByteCodeParser
wishes to store to a local, it first emits a MovHint and then enqueues a SetLocal.
The SetLocal isn't actually emitted until the beginning of the next bytecode
instruction (which the exception of op_enter and op_ret, which emit theirs immediately
since it's always safe to reexecute those bytecode instructions and since deferring
SetLocals would be weird there - op_enter has many SetLocals and op_ret is a set
followed by a jump in case of inlining, so we'd have to emit the SetLocal "after" the
jump and that would be awkward). This means that the above IR snippet would look
something like:

    a: Call(..., bc#42)
    b: MovHint(@a, r1, bc#42)
    c: SetLocal(@a, r1, bc#47)

Where the SetLocal exits "backwards" but appears at the beginning of the next bytecode
instruction. This means that by the time we get to that SetLocal, the OSR exit
analysis already knows that r1 is associated with @a, and it means that the SetLocal
or anything hoisted above it can exit backwards as normal.

This change also means that the "forward rewiring" can be killed. Previously, we might
have inserted a conversion node on SetLocal and then the SetLocal died (i.e. turned
into a MovHint) and the conversion node either died completely or had its lifetime
truncated to be less than the actual value's bytecode lifetime. This no longer happens
since conversion nodes are only inserted at SetLocals.

More precisely, this change introduces two laws that we were basically already
following anyway:

1) A MovHint's child should never be changed except if all other uses of that child
   are also replaced. Specifically, this prohibits insertion of conversion nodes at
   MovHints.

2) Anytime any child is replaced with something else, and all other uses aren't also
   replaced, we must insert a Phantom use of the original child.

This is a slight compile-time regression but has no effect on code-gen. It unlocks a
bunch of optimization opportunities so I think it's worth it.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpAssumingJITType):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::instructionCount):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGArrayifySlowPathGenerator.h:
(JSC::DFG::ArrayifySlowPathGenerator::ArrayifySlowPathGenerator):
* dfg/DFGBackwardsPropagationPhase.cpp:
(JSC::DFG::BackwardsPropagationPhase::propagate):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::setDirect):
(JSC::DFG::ByteCodeParser::DelayedSetLocal::DelayedSetLocal):
(JSC::DFG::ByteCodeParser::DelayedSetLocal::execute):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::eliminate):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGCommon.h:
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::run):
(JSC::DFG::DCEPhase::fixupBlock):
(JSC::DFG::DCEPhase::cleanVariables):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixEdge):
(JSC::DFG::FixupPhase::injectInt32ToDoubleNode):
* dfg/DFGLICMPhase.cpp:
(JSC::DFG::LICMPhase::run):
(JSC::DFG::LICMPhase::attemptHoist):
* dfg/DFGMinifiedNode.cpp:
(JSC::DFG::MinifiedNode::fromNode):
* dfg/DFGMinifiedNode.h:
(JSC::DFG::belongsInMinifiedGraph):
(JSC::DFG::MinifiedNode::constantNumber):
(JSC::DFG::MinifiedNode::weakConstant):
* dfg/DFGNode.cpp:
(JSC::DFG::Node::hasVariableAccessData):
* dfg/DFGNode.h:
(JSC::DFG::Node::convertToPhantom):
(JSC::DFG::Node::convertToPhantomUnchecked):
(JSC::DFG::Node::convertToIdentity):
(JSC::DFG::Node::containsMovHint):
(JSC::DFG::Node::hasUnlinkedLocal):
(JSC::DFG::Node::willHaveCodeGenOrOSR):
* dfg/DFGNodeFlags.cpp:
(JSC::DFG::dumpNodeFlags):
* dfg/DFGNodeFlags.h:
* dfg/DFGNodeType.h:
* dfg/DFGOSRAvailabilityAnalysisPhase.cpp:
(JSC::DFG::OSRAvailabilityAnalysisPhase::run):
* dfg/DFGOSREntrypointCreationPhase.cpp:
(JSC::DFG::OSREntrypointCreationPhase::run):
* dfg/DFGOSRExit.cpp:
* dfg/DFGOSRExit.h:
* dfg/DFGOSRExitBase.cpp:
* dfg/DFGOSRExitBase.h:
(JSC::DFG::OSRExitBase::considerAddingAsFrequentExitSite):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):
* dfg/DFGSSAConversionPhase.cpp:
(JSC::DFG::SSAConversionPhase::run):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::emitInvalidationPoint):
(JSC::DFG::SpeculativeJIT::typeCheck):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::detectPeepHoleBranch):
(JSC::DFG::SpeculativeJIT::needsTypeCheck):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGTypeCheckHoistingPhase.cpp:
(JSC::DFG::TypeCheckHoistingPhase::run):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantStructureChecks):
(JSC::DFG::TypeCheckHoistingPhase::identifyRedundantArrayChecks):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validateCPS):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::VariableAccessData):
* dfg/DFGVariableEventStream.cpp:
(JSC::DFG::VariableEventStream::reconstruct):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileGetArgument):
(JSC::FTL::LowerDFGToLLVM::compileSetLocal):
(JSC::FTL::LowerDFGToLLVM::compileMovHint):
(JSC::FTL::LowerDFGToLLVM::compileZombieHint):
(JSC::FTL::LowerDFGToLLVM::compileInt32ToDouble):
(JSC::FTL::LowerDFGToLLVM::speculate):
(JSC::FTL::LowerDFGToLLVM::typeCheck):
(JSC::FTL::LowerDFGToLLVM::appendTypeCheck):
(JSC::FTL::LowerDFGToLLVM::appendOSRExit):
(JSC::FTL::LowerDFGToLLVM::emitOSRExitCall):
* ftl/FTLOSRExit.cpp:
* ftl/FTLOSRExit.h:
* tests/stress/dead-int32-to-double.js: Added.
(foo):
* tests/stress/dead-uint32-to-number.js: Added.
(foo):

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

6 years agoPlease display (and link to) revision ranges at build.webkit.org/dashboard
ap@apple.com [Sun, 29 Dec 2013 21:17:29 +0000 (21:17 +0000)]
Please display (and link to) revision ranges at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122187

Reviewed by Timothy Hatcher.

Added popovers for revision numbers. Removed direct links, because they were misleading -
a test run covers a revision range, not just the latest revision. This also makes
selecting a revision for copy easier.

All revision numbers have the popovers for consistency, although they are most useful
for iterations that are not the last ones in a view, because the content is a delta
from previous iteration.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus):
revisionLinksForIteration() is now named revisionContentForIteration().

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus):
Ditto.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype.get previous): Added a function to go back in iteration history.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
Refactored to support the new popover variation. Replaced revisionLinksForIteration()
with a function that builds an element with popover.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/PopoverTracker.js:
Changed to take a function for popover presentation instead of delegate object.
We only need one delegate function, and it's easier to have multiple popovers per view class
this way.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
Removed a rule for selectable class. It's replaced with a semantic rule in StatusLineView.css.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css:
Renamed pending-commits-popover class to commit-history-popover.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
(.status-line .message .revision-number): Added a rule for revision numbers.

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

6 years agoRenderLayer: Store reflection renderer in a RenderPtr.
akling@apple.com [Sun, 29 Dec 2013 20:57:32 +0000 (20:57 +0000)]
RenderLayer: Store reflection renderer in a RenderPtr.
<https://webkit.org/b/126273>

Reviewed by Anders Carlsson.

* rendering/RenderLayer.h:
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::calculateClipRects):

    Turn RenderLayer::m_reflection into a RenderPtr<RenderReplica>
    instead of a raw pointer.

* WebCore.xcodeproj/project.pbxproj:

    Add RenderPtr.h to private headers.

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

6 years ago[GTK][CMake] Translations must be built
mrobinson@webkit.org [Sun, 29 Dec 2013 18:51:26 +0000 (18:51 +0000)]
[GTK][CMake] Translations must be built
https://bugs.webkit.org/show_bug.cgi?id=125513

Reviewed by Gustavo Noronha Silva.

.:

* Source/PlatformGTK.cmake: Add the po subdirectory.

Source/WebCore/platform/gtk/po:

* CMakeLists.txt: Added.

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

6 years ago[GTK] [CMake] Convenience libraries that export API should be compiled with --whole...
mrobinson@webkit.org [Sun, 29 Dec 2013 18:49:57 +0000 (18:49 +0000)]
[GTK] [CMake] Convenience libraries that export API should be compiled with --whole-archive on Unix
https://bugs.webkit.org/show_bug.cgi?id=126232

Reviewed by Gustavo Noronha Silva.

Source/WebKit:

* PlatformGTK.cmake: Prefix libGObjectDOMBindings with --whole-archive so that
symbols are not omitted during final linking.

Source/WebKit2:

* PlatformGTK.cmake: Prefix libGObjectDOMBindings with --whole-archive so that
symbols are not omitted during final linking.

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

6 years agoPlease display information about pending runs in build.webkit.org/dashboard
ap@apple.com [Sun, 29 Dec 2013 17:24:57 +0000 (17:24 +0000)]
Please display information about pending runs in build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122180

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus): Added a semicolon at the end of a line.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype._latestFinishedIteration): Factored out of _appendPendingRevisionCount.
(BuildbotQueueView.prototype._appendPendingRevisionCount): Install a popover tracker over the element.
(BuildbotQueueView.prototype.lineForCommit): Build an element for a particular commit ot be shown in popover.
(BuildbotQueueView.prototype.presentPopoverForElement): Build and show popover content when PopoverTracker
asks us to.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Geometry.js: Added.
Taken from WebInspector with minimal changes:
- Changed root name from WebInspector to Dashboard.
- Removed some unused functionality.
- Added Rect.containsPoint.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Popover.js: Added.
Popover has extensive changes compared to WebInspector version, only drawing code is the same:
- Fixed to work in scrollable pages - WebInspector version assumes that window
and document coordinates are the same, and also erroneously dismisses a scrollable
popover if scrolling cascades out of it after reaching a bound.
- Simplified API and implementation to Dashboard needs, it is no longer possible to
change content of an existing popover.
- Rewrote visibility tracking to be more complete, and not rely on external tracker
object so much.
- Added code to flash scroll bars when showing a scrollable popover.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/PopoverTracker.js: Added.
Objects of this class show and hide popovers as appropriate for registered active elements.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/StatusLineView.js:
(StatusLineView.prototype.get messageElement): Added an accessor, so that we could
install a popover on message element. It's the only visible element in pending commit
line, but the line has different bounds, so we can't install a popover on it (it
would be incorrectly positioned if we did).

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
(Trac.prototype._convertCommitInfoElementToObject):
- Some trac installations report author in a different element, updated to support that.
- Changed to parse title out of description, because trac titles are ugly. Also,
we get a nice HTML with links from the description.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
(Node.prototype.isAncestor): Copied from Web Inspector, only changing the form for
consistency with the rest of this file (add a property on prototype with assignment
instead of using Object.defineProperty).
(Node.prototype.isDescendant): Ditto.
(Node.prototype.isSelfOrAncestor): Ditto.
(Node.prototype.isSelfOrDescendant): Ditto.
(DOMTokenList.prototype.contains): Ditto.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Popover.css: Added.
Like JS counterpart, mostly lifted from Web Inspector.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css:
Added style rules for pending commits popover.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/StatusLineView.css:
(.status-line.no-bubble .message): Changed to display:inline-block, so that it fits
to content, and we can show the popover in a correct place.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html: Added new files.

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

6 years agoFix a typo in ChangeLog, landing a commit that won't trigger a build, and will remain
ap@apple.com [Sun, 29 Dec 2013 09:08:24 +0000 (09:08 +0000)]
Fix a typo in ChangeLog, landing a commit that won't trigger a build, and will remain
"pending" on dashboard for testing.

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

6 years agoAdd an owning smart pointer for RenderObjects and start using it.
akling@apple.com [Sun, 29 Dec 2013 01:36:19 +0000 (01:36 +0000)]
Add an owning smart pointer for RenderObjects and start using it.
<https://webkit.org/b/126251>

This patch adds a RenderPtr pointer, essentially an OwnPtr for
RenderObjects. The difference is that RenderPtr destroys the object
by calling destroy() on it.

This is necessary to implement the willBeDestroyed() mechanism in
RenderObject that notifies renderers just before they are about to
be deleted, while they can still do tree traversal, etc.

I also added a make_unique-alike helper so you can write:

    auto renderer = createRenderObject<RenderImage>(...);

Put it all to use by making ContentData::createRenderer() return
RenderPtr<RenderObject> instead of raw RenderObject*.

Reviewed by Antti Koivisto.

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

6 years agoMove FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashM...
weinig@apple.com [Sat, 28 Dec 2013 21:20:57 +0000 (21:20 +0000)]
Move FilterIterator and IteratorPair to WTF and reimplement HashMap::keys() and HashMap::values() using IteratorPair
https://bugs.webkit.org/show_bug.cgi?id=126253

Reviewed by Anders Carlsson.

../WebKit2:

* Shared/APIArray.h:
Update includes and make elementsOfType() a bit easier to read by using a typedef and some
judicial indentation.

* Shared/FilterIterator.h: Moved to WTF.
* Shared/IteratorPair.h: Moved to WTF.

* WebKit2.xcodeproj/project.pbxproj:
Remove the two files.

../WTF:

* GNUmakefile.list.am:
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
Add new files.

* wtf/HashMap.h:
* wtf/RefPtrHashMap.h:
Remove the old implementation of keys() and values() and replace it with one
that uses IteratorPair.

* wtf/FilterIterator.h: Copied from Source/WebKit2/Shared/FilterIterator.h.
* wtf/IteratorPair.h: Copied from Source/WebKit2/Shared/IteratorPair.h.

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

6 years agoAdd a missing include path for GTK
benjamin@webkit.org [Sat, 28 Dec 2013 12:33:27 +0000 (12:33 +0000)]
Add a missing include path for GTK
https://bugs.webkit.org/show_bug.cgi?id=126257

Reviewed by Philippe Normand.

* GNUmakefile.am:

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

6 years ago[WK2][SOUP] Fix handling of cookies when network process is enabled
commit-queue@webkit.org [Sat, 28 Dec 2013 10:18:06 +0000 (10:18 +0000)]
[WK2][SOUP] Fix handling of cookies when network process is enabled
https://bugs.webkit.org/show_bug.cgi?id=125576

Patch by Kwang Yul Seo <skyul@company100.net> on 2013-12-28
Reviewed by Carlos Garcia Campos.

Initialize the network process with cookie accept policy, persistent
storage path and type. Use
WebContext::sendToNetworkingProcessRelaunchingIfNecessary instead of
WebContext::sendToAllProcessesRelaunchingThemIfNecessary to send
SetCookiePersistentStorage message.

* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* UIProcess/soup/WebContextSoup.cpp:
(WebKit::WebContext::platformInitializeNetworkProcess):
* UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::setCookiePersistentStorage):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):

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

6 years agoUnreviewed. Update GObject DOM symbols file after r160733.
carlosgc@webkit.org [Sat, 28 Dec 2013 10:07:56 +0000 (10:07 +0000)]
Unreviewed. Update GObject DOM symbols file after r160733.

* bindings/gobject/webkitdom.symbols:

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

6 years ago[GTK] Fix release builds with NetworkProcess enabled
commit-queue@webkit.org [Sat, 28 Dec 2013 08:56:55 +0000 (08:56 +0000)]
[GTK] Fix release builds with NetworkProcess enabled
https://bugs.webkit.org/show_bug.cgi?id=126247

Patch by Giovanni Campagna <gcampagna@src.gnome.org> on 2013-12-28
Reviewed by Carlos Garcia Campos.

* Source/autotools/symbols.filter:

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

6 years ago[GTK] Downloads are broken with the network process enabled
carlosgc@webkit.org [Sat, 28 Dec 2013 08:36:24 +0000 (08:36 +0000)]
[GTK] Downloads are broken with the network process enabled
https://bugs.webkit.org/show_bug.cgi?id=126131

Reviewed by Martin Robinson.

The problem is that the network process crashes when trying to
convert the handle to a download, because at that point the
download has finished and the handle is NULL. This happens because
we are not implementing ResourceHandle::continueDidReceiveResponse().

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::nextMultipartResponsePartCallback): Call
continueAfterDidReceiveResponse() when not using async callbacks.
(WebCore::sendRequestCallback): Ditto.
(WebCore::continueAfterDidReceiveResponse): Helper function that
continues the load after didReceiveResponse.
(WebCore::ResourceHandle::continueDidReceiveResponse): Call
continueAfterDidReceiveResponse().

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

6 years agoAnother attempt to fix the Windows build after <http://trac.webkit.org/changeset...
dbates@webkit.org [Fri, 27 Dec 2013 22:05:05 +0000 (22:05 +0000)]
Another attempt to fix the Windows build after <trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

* WebCore.vcxproj/WebCore.vcxproj.filters: Add files platform/audio/{AudioSession, AudioSessionListener}.h
* WebCore.vcxproj/WebCoreCommon.props: Add directory WebCore/platform/audio to the list of
include directories.

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

6 years agoAttempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
dbates@webkit.org [Fri, 27 Dec 2013 21:44:49 +0000 (21:44 +0000)]
Attempt to fix the Windows build after <trac.webkit.org/changeset/161106>
(https://bugs.webkit.org/show_bug.cgi?id=126180)

Add files platform/audio/AudioSession.{cpp, h} and platform/audio/AudioSessionListener.h
to the Visual Studio project. Note, the contents of these files are guarded by USE(AUDIO_SESSION),
which is only enabled on Mac and iOS at the time of writing.

I thought to try this approach to fix the build so as to avoid adding an extraneous
USE(AUDIO_SESSION)-guard around the #include "AudioSession.h" in Settings.cpp since
the contents of the file AudioSession.h is guarded by USE(AUDIO_SESSION).

* WebCore.vcxproj/WebCore.vcxproj:

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

6 years ago[iOS] Upstream WebCore/page changes
dbates@webkit.org [Fri, 27 Dec 2013 20:40:28 +0000 (20:40 +0000)]
[iOS] Upstream WebCore/page changes
https://bugs.webkit.org/show_bug.cgi?id=126180

Reviewed by Darin Adler.

Source/WebCore:

* WebCore.xcodeproj/project.pbxproj:
* dom/EventNames.h:
(WebCore::EventNames::isGestureEventType): Added.
* page/AlternativeTextClient.h: Do not define WTF_USE_DICTATION_ALTERNATIVES when building for iOS.
* page/Chrome.cpp:
(WebCore::Chrome::Chrome):
(WebCore::Chrome::dispatchViewportPropertiesDidChange): Added; guarded by PLATFORM(IOS).
(WebCore::Chrome::setCursor): Make this an empty function when building for iOS.
(WebCore::Chrome::setCursorHiddenUntilMouseMoves): Ditto.
(WebCore::Chrome::didReceiveDocType): Added; iOS-specific.
* page/Chrome.h:
(WebCore::Chrome::setDispatchViewportDataDidChangeSuppressed): Added; guarded by PLATFORM(IOS).
* page/ChromeClient.h:
(WebCore::ChromeClient::didFlushCompositingLayers): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::fetchCustomFixedPositionLayoutRect): Added; guarded by PLATFORM(IOS).
(WebCore::ChromeClient::updateViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install): Added iOS-specific code.
(WebCore::DOMTimer::fired): Ditto.
* page/DOMWindow.cpp:
(WebCore::DOMWindow::DOMWindow): Ditto.
(WebCore::DOMWindow::innerHeight): Ditto.
(WebCore::DOMWindow::innerWidth): Ditto.
(WebCore::DOMWindow::scrollX): Ditto.
(WebCore::DOMWindow::scrollY): Ditto.
(WebCore::DOMWindow::scrollBy): Ditto.
(WebCore::DOMWindow::scrollTo): Ditto.
(WebCore::DOMWindow::clearTimeout): Ditto.
(WebCore::DOMWindow::addEventListener): Ditto.
(WebCore::DOMWindow::incrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::decrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
(WebCore::DOMWindow::resetAllGeolocationPermission): Added; Also added FIXME comment.
(WebCore::DOMWindow::removeEventListener): Added iOS-specific code.
(WebCore::DOMWindow::dispatchEvent): Modified to prevent dispatching duplicate pageshow and pagehide
events per <http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-pageshow>.
(WebCore::DOMWindow::removeAllEventListeners): Added iOS-specific code.
* page/DOMWindow.h:
* page/DOMWindow.idl: Added IOS_GESTURE_EVENTS-guarded attributes: ongesture{change, end, start}. Also
added IOS_TOUCH_EVENTS-guarded attributes: {Touch, TouchList}Constructor.
* page/EditorClient.h:
* page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler): Added iOS-specific code.
(WebCore::EventHandler::clear): Ditto.
(WebCore::EventHandler::startPanScrolling): Make this an empty function when building for iOS.
(WebCore::EventHandler::handleMousePressEvent): Modified to invalidate a click when the clicked node is
null. Also, opt out of code for updating the scrollbars as UIKit manages scrollbars on iOS.
(WebCore::EventHandler::handleMouseMoveEvent): Opt of code for updating the scrollbars and cursor when building on iOS.
(WebCore::hitTestResultInFrame): Made this a file-local static function since it's only used in EventHandler.cpp.
(WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled): Added iOS-specific code.
* page/EventHandler.h:
* page/FocusController.h:
* page/Frame.cpp:
(WebCore::Frame::Frame): Added iOS-specific code.
(WebCore::Frame::scrollOverflowLayer): Added; iOS-specific.
(WebCore::Frame::overflowAutoScrollTimerFired): Added; iOS-specific.
(WebCore::Frame::startOverflowAutoScroll): Added; iOS-specific.
(WebCore::Frame::checkOverflowScroll): Added; iOS-specific.
(WebCore::Frame::willDetachPage): Added iOS-specific code.
(WebCore::Frame::createView): Ditto.
(WebCore::Frame::setSelectionChangeCallbacksDisabled): Added; iOS-specific.
(WebCore::Frame::selectionChangeCallbacksDisabled): Added; iOS-specific.
* page/Frame.h:
(WebCore::Frame::timersPaused): Added; guarded by PLATFORM(IOS).
* page/FrameView.cpp:
(WebCore::FrameView::FrameView): Added iOS-specific code.
(WebCore::FrameView::clear): Ditto.
(WebCore::FrameView::flushCompositingStateForThisFrame): Ditto.
(WebCore::FrameView::graphicsLayerForPlatformWidget): Added.
(WebCore::FrameView::scheduleLayerFlushAllowingThrottling): Added.
(WebCore::FrameView::layout): Added iOS-specific code.
(WebCore::countRenderedCharactersInRenderObjectWithThreshold): Added; helper function used by FrameView::renderedCharactersExceed().
Also added FIXME comment.
(WebCore::FrameView::renderedCharactersExceed): Added.
(WebCore::FrameView::visibleContentsResized): Added iOS-specific code.
(WebCore::FrameView::adjustTiledBackingCoverage): Ditto.
(WebCore::FrameView::performPostLayoutTasks): Ditto.
(WebCore::FrameView::sendResizeEventIfNeeded): Ditto.
(WebCore::FrameView::paintContents): Added iOS-specific code. Also added FIXME comments.
(WebCore::FrameView::setUseCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::setCustomFixedPositionLayoutRect): Added; iOS-specific.
(WebCore::FrameView::updateFixedPositionLayoutRect): Added; iOS-specific.
* page/FrameView.h:
* page/Navigator.cpp:
(WebCore::Navigator::standalone): Added; iOS-specific.
* page/Navigator.h:
* page/Navigator.idl: Added WTF_PLATFORM_IOS-guarded attribute: standalone. Also added FIXME comment.
* page/NavigatorBase.cpp:
(WebCore::NavigatorBase::platform): Added iOS-specific code.
* page/Page.h:
(WebCore::Page::hasCustomHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.
(WebCore::Page::customHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
to remove this method.
* page/PageGroup.cpp:
(WebCore::PageGroup::removeVisitedLink): Added.
* page/PageGroup.h:
* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::setScriptEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setStandalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAudioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::audioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::sharedNetworkInterfaceNameGlobal): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setNetworkInterfaceName): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::networkInterfaceName): Added; guarded by PLATFORM(IOS).
* page/Settings.h:
(WebCore::Settings::setMaxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::maxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
(WebCore::Settings::standalone): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::telephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setMediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::mediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setShouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::shouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::setAlwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
(WebCore::Settings::alwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
* page/Settings.in: Added IOS_AIRPLAY-guarded setting: mediaPlaybackAllowsAirPlay.
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Added iOS-specific code and FIXME comment.
* page/ios/EventHandlerIOS.mm: Added.
* page/ios/FrameIOS.mm: Added.
* page/mac/ChromeMac.mm:
* page/mac/PageMac.cpp:
(WebCore::Page::addSchedulePair): Opt out of code when building for iOS.
(WebCore::Page::removeSchedulePair): Ditto.
* page/mac/SettingsMac.mm:
(WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault): Added iOS-specific code.
* page/mac/WebCoreFrameView.h:

Source/WebKit/ios:

* WebCoreSupport/WebChromeClientIOS.mm: Substitute ENABLE(IOS_TOUCH_EVENTS) for ENABLE(TOUCH_EVENTS).

Source/WebKit2:

* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm: Added.
* WebProcess/WebPage/WebPage.cpp: Include header <WebCore/HitTestResult.h>.

Source/WTF:

* wtf/FeatureDefines.h: Define ENABLE_IOS_TOUCH_EVENTS to be enabled by default
when building iOS with ENABLE(TOUCH_EVENTS).

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

6 years agoMerge PageVisibilityState & ViewState::IsVisible in WebKit2
barraclough@apple.com [Fri, 27 Dec 2013 19:46:00 +0000 (19:46 +0000)]
Merge PageVisibilityState & ViewState::IsVisible in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=126214

Reviewed by Alexey Proskuryakov.

WebKit2 redundantly tracks the visibility of the view through two mechanisms - the visibility
state, and the view state. Remove visibility state from the WebKit2 layer. The visibility
state also tracks the prerender state - so split this out and handle it separately (a change
we should make in WebCore, too).

Source/WebCore:

WebCore - changes the API tests exposed a bug, a view should only ever come out of the
prerender state when it becomes visible - redundant notifications that the view is still
hidden should be ignored.

* page/Page.cpp:
(WebCore::Page::setVisibilityState):
    - ignore visibility state change to hidden, if the current state is prerender.

Source/WebKit2:

Removing the redundancy also removes the ability from the API to set a fake visibility state
(IsVisible tracks the actual visibility of the view). Through private API
(WKPageSetVisibilityState) a client could previously request the view be reported as hidden or
visible, but this didn't really work - the override was not enforced and the API may reset the
state at an arbitrary point. The mechanism is only used by testing code, which instead should
actually update the view visibility (this tests more of the actual visibility mechanisms used
by the browser). The one aspect of the API relied on by existing clients is the ability to
initialize a hidden view as prerender - continue to support this specific functionality via
WKPageSetVisibilityState, to maintain backwards compatibility.

- WebKit2 - remove internal state that tracks page visibility separately from the view state
visibility. For backwards compatibility continue to support the WKPageSetVisibilityState API,
but only to initialize the state to prerender.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetVisibilityState):
    - only support initializing the visibility state to prerender.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
    - remove m_visibilityState
(WebKit::WebPageProxy::initializeWebPage):
    - no need to send initial visibility state (this is sent as a part of the creation parameters).
(WebKit::WebPageProxy::viewStateDidChange):
    - no need to send visibility state change (this is sent as a part of view state).
(WebKit::WebPageProxy::setVisibilityStatePrerender):
    - setVisibilityState -> setVisibilityStatePrerender.
* UIProcess/WebPageProxy.h:
    - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
    - added call to updateVisibilityState.
(WebKit::WebPage::setViewIsVisible):
    - added call to updateVisibilityState.
(WebKit::WebPage::updateVisibilityState):
    - previously setVisibilityState, updates the page visibility state according to the view state.
(WebKit::WebPage::setVisibilityStatePrerender):
    - set visibility state to prerender.
* WebProcess/WebPage/WebPage.h:
    - remove m_visibilityState, setVisibilityState -> setVisibilityStatePrerender.
* WebProcess/WebPage/WebPage.messages.in:
    - SetVisibilityState -> SetVisibilityStatePrerender.

Tools:

Tools - WebKit2 no longer (poorly) supports a fake visibility state, so to test the page
visibility mechanisms we should actually be changing characteristics of the view that will
be detected by WebKit2 as a visibility change. This affects three things:
    1) On setVisibilityState WebKitTestRunner must actually change visibility of the view.
    2) The 'PageVisibilityState' test in the API tests is useless (as evidenced by the fact
       that page visibility has been broken in WebKit2 for a couple of months, and didn't
       catch this fact). Removed in favour of:
    3) 'PageVisibilityStateWithWindowChanges' - this is the good stuff. This actually tests
       the visibility mechanism. Beef this test up by adding coverage for: a) the prerender
    state, b) document.hidden, and c) too many state change notifications (it already looks
    for too few).

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2/PageVisibilityState.cpp: Removed.
    - Removed PageVisibilityState - this test was ineffective, API no longer supports this
      test, and behaviour is covered by PageVisibilityStateWithWindowChanges.
* TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
(-[PageVisibilityStateDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
(runJavaScriptAlert):
    - Add checking for too many calls to the alert.
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::setPrerender):
    - Added methods to set visibility to prerender.
(TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
    - Added checking of 'document.hidden'.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setVisibilityState):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::setHidden):
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::setHidden):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::setHidden):
    - Add setHidden method; call this from setVisibilityState.

LayoutTests:

LayoutTests - remove test for notification on visibility state change to preerender. This test
was covering something nonsensical, and not supported by the spec - the page should never see
a visibility change to prerender, this should only be an initial state. WebKit2 API now only
allows the client to change the state to prerender without sending a notification, and there
is no sense in continuing to support the current test case, since the behaviour is neither
allowed by API nor available in web content.

The prerender state is now properly covered by API tests.

* fast/events/page-visibility-transition-test-expected.txt:
* fast/events/page-visibility-transition-test.html:
    - remove test for notification on visibility state change to preerender.

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

6 years agoDisplay EWS status on bot watcher's dashboard
ap@apple.com [Fri, 27 Dec 2013 18:08:07 +0000 (18:08 +0000)]
Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Silence spurious exceptions, no visible behavior change.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js:
(EWSQueue.prototype.update): Removed code that was only needed for an experimental
feature that wasn't landed.

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

6 years agoUnreviewed Windows build fix for r160946.
joepeck@webkit.org [Fri, 27 Dec 2013 17:06:40 +0000 (17:06 +0000)]
Unreviewed Windows build fix for r160946.

Add another file to the Windows InspectorAllInOne.cpp.

* inspector/InspectorAllInOne.cpp:

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

6 years ago[GTK] Unnecessary code is built into WebKitPluginProcess
zandobersek@gmail.com [Fri, 27 Dec 2013 10:30:06 +0000 (10:30 +0000)]
[GTK] Unnecessary code is built into WebKitPluginProcess
https://bugs.webkit.org/show_bug.cgi?id=126259

Reviewed by Carlos Garcia Campos.

* GNUmakefile.list.am: Stop building ChildProcessProxy and ProcessLauncher classes into WebKitPluginProcess.
That code is not required in the plugin process, as one would expect.

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

6 years ago[EFL][WK2] MiniBrowser scale up/down infinitely after r161087
ryuan.choi@samsung.com [Fri, 27 Dec 2013 08:44:24 +0000 (08:44 +0000)]
[EFL][WK2] MiniBrowser scale up/down infinitely after r161087
https://bugs.webkit.org/show_bug.cgi?id=126254

Reviewed by Gyuyoung Kim.

After r161087, contentScaleFactor of WebView is synced with pageScaleFactor
of WebPage. It means that WKViewGetContentScaleFactor might not be same
with PageViewportController's current scale value until received PageScaleFactorDidChange.

* UIProcess/efl/PageViewportControllerClientEfl.cpp:
(WebKit::PageViewportControllerClientEfl::setViewportPosition):
Use controller's current scale just to update and sync the position.

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

6 years agoDisplay EWS status on bot watcher's dashboard
ap@apple.com [Fri, 27 Dec 2013 08:37:12 +0000 (08:37 +0000)]
Display EWS status on bot watcher's dashboard
https://bugs.webkit.org/show_bug.cgi?id=126224

Reviewed by Timothy Hatcher.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js: Added.
Moved platform definitions out of Buildbot.js, as they are also needed for EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js: Added.
(QueueView):
(QueueView.prototype.updateSoon):
(QueueView.prototype.update):
(QueueView.prototype._updateHiddenState):
Moved auto-update and hide logic to a base class, as it equally applies to EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWS.js: Added.
This is a peer to Buildbot.js and WebKitBuildbot.js.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueue.js: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/EWSQueueView.js: Added.
Quite simple for now, only keeping track of queue size.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Initialization.js:
Initialize EWS.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
Create EWS views.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
Updated for Buildbot.Platform rename, it's now Dashboard.Platform.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotBuilderQueueView.css: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css: Removed.
These were empty, no reason to waste the time loading them.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotTesterQueueView.css: Removed.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css: Copied from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/BuildbotQueueView.css.
Renamed, as these styles apply to all queues, not just buildbot ones (and they have to, as columns should look alike).

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
    - Changed page title, as it no longer displays just buildbot status.
    - Updated subresource lists for the new, renamed and removed files.

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

6 years agoEWS status JSON should include Access-Control-Allow-Origin
ap@apple.com [Fri, 27 Dec 2013 08:29:32 +0000 (08:29 +0000)]
EWS status JSON should include Access-Control-Allow-Origin
https://bugs.webkit.org/show_bug.cgi?id=126246

Reviewed by Ryosuke Niwa.

* QueueStatusServer/app.yaml: Update version.
* QueueStatusServer/handlers/queuestatusjson.py:
(QueueStatusJSON.get): Add the header field.

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

6 years agoUnreviewed, rolling out r161096.
commit-queue@webkit.org [Fri, 27 Dec 2013 08:26:42 +0000 (08:26 +0000)]
Unreviewed, rolling out r161096.
http://trac.webkit.org/changeset/161096
https://bugs.webkit.org/show_bug.cgi?id=126256

Made lots of tests crash (Requested by ap on #webkit).

* dom/ContainerNode.cpp:
(WebCore::ContainerNode::insertBefore):
(WebCore::ContainerNode::replaceChild):
(WebCore::willRemoveChildren):
(WebCore::ContainerNode::appendChild):
* dom/Document.cpp:
(WebCore::Document::visibilityStateChanged):
(WebCore::Document::moveNodeIteratorsToNewDocument):
(WebCore::Document::updateRangesAfterChildrenChanged):
(WebCore::Document::nodeChildrenWillBeRemoved):
(WebCore::Document::nodeWillBeRemoved):
(WebCore::Document::textInserted):
(WebCore::Document::textRemoved):
(WebCore::Document::textNodesMerged):
(WebCore::Document::textNodeSplit):
(WebCore::Document::documentWillSuspendForPageCache):
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::mediaVolumeDidChange):
(WebCore::Document::privateBrowsingStateDidChange):
(WebCore::Document::captionPreferencesChanged):
(WebCore::Document::validateAutoSizingNodes):
(WebCore::Document::resetAutoSizingNodes):
(WebCore::Document::webkitExitFullscreen):
* dom/MutationObserver.cpp:
(WebCore::MutationObserver::disconnect):
(WebCore::MutationObserver::getObservedNodes):
(WebCore::MutationObserver::deliver):
* dom/MutationObserverInterestGroup.cpp:
(WebCore::MutationObserverInterestGroup::isOldValueRequested):
(WebCore::MutationObserverInterestGroup::enqueueMutationRecord):
* dom/MutationObserverRegistration.cpp:
(WebCore::MutationObserverRegistration::clearTransientRegistrations):
(WebCore::MutationObserverRegistration::addRegistrationNodesToSet):
* dom/Node.cpp:
(WebCore::Node::dumpStatistics):
(WebCore::Document::invalidateNodeListAndCollectionCaches):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::Node::didMoveToNewDocument):
(WebCore::collectMatchingObserversForMutation):
(WebCore::Node::notifyMutationObserversNodeWillDetach):
* dom/NodeRareData.h:
(WebCore::NodeListsNodeData::adoptDocument):
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
(WebCore::ScriptExecutionContext::stopActiveDOMObjects):
(WebCore::ScriptExecutionContext::closeMessagePorts):
(WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
(WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
* dom/WebKitNamedFlow.cpp:
(WebCore::WebKitNamedFlow::getRegionsByContent):
(WebCore::WebKitNamedFlow::getRegions):
(WebCore::WebKitNamedFlow::getContent):

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

6 years agoConvert some of WebCore/dom over to range-for loops
weinig@apple.com [Fri, 27 Dec 2013 02:55:57 +0000 (02:55 +0000)]
Convert some of WebCore/dom over to range-for loops
https://bugs.webkit.org/show_bug.cgi?id=126250

Reviewed by Andreas Kling.

* dom/ContainerNode.cpp:
* dom/Document.cpp:
* dom/MutationObserver.cpp:
* dom/MutationObserverInterestGroup.cpp:
* dom/MutationObserverRegistration.cpp:
* dom/Node.cpp:
* dom/NodeRareData.h:
* dom/ScriptExecutionContext.cpp:
* dom/WebKitNamedFlow.cpp:

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

6 years agoSmall build fix for the GTK+ CMake port
mrobinson@webkit.org [Fri, 27 Dec 2013 00:21:54 +0000 (00:21 +0000)]
Small build fix for the GTK+ CMake port

Source/WebKit/gtk:

* tests/CMakeLists.txt: Output the WebKit1 GObject API unit tests to the proper directory
and fix the path to the generated API source.

Source/WebKit2:

* UIProcess/API/gtk/tests/CMakeLists.txt: Make the way the output directory is specified similar
to the WebKit1 version of these tests, so that it is more difficult to inadvertently specify the
wrong directory.

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