1. 02 Jan, 2014 26 commits
    • barraclough@apple.com's avatar
      Source/WebCore: [iOS] Tapping any link crashes in WebCore::EventHandler::mouseMoved() · 2f3625cd
      barraclough@apple.com authored
      (also crashes when scrolling certain sites)
      https://bugs.webkit.org/show_bug.cgi?id=126401
      <rdar://problem/15739334>
      
      Patch by Daniel Bates <dabates@apple.com> on 2014-01-02
      Reviewed by Tim Horton.
      
      * page/ios/EventHandlerIOS.mm:
      (WebCore::currentEventSlot): Make the shared variable have static-storage duration.
      
      Source/WebKit/mac: Remove WindowIsVisible
      https://bugs.webkit.org/show_bug.cgi?id=126270
      
      Reviewed by Tim Horton.
      
      We currently track visibility in two ways - ViewState::IsVisible and ViewState::WindowIsVisible.
      The latter detects that the content is hidden in fewer cases than the former, and as such, the
      former is always preferable.
      
      This affects the hidden state provided to FocusController::contentAreaDidShowOrHide and to
      Plugin::windowVisibilityChanged.
      
      * WebView/WebView.mm:
      (-[WebView _windowWillOrderOnScreen:]):
      (-[WebView _windowWillOrderOffScreen:]):
          - rename ContainingWindowIsVisible -> ContentIsVisible.
      
      Source/WebKit2: Remove WindowIsVisible
      https://bugs.webkit.org/show_bug.cgi?id=126270
      
      Reviewed by Tim Horton.
      
      We currently track visibility in two ways - ViewState::IsVisible and ViewState::WindowIsVisible.
      The latter detects that the content is hidden in fewer cases than the former, and as such, the
      former is always preferable.
      
      This affects the hidden state provided to FocusController::contentAreaDidShowOrHide and to
      Plugin::windowVisibilityChanged.
      
      * Shared/ViewState.h:
          - remove WindowIsVisible.
      * UIProcess/API/mac/PageClientImpl.h:
      * UIProcess/API/mac/PageClientImpl.mm:
          - remove isWindowVisible.
      * UIProcess/API/mac/WKView.mm:
      (-[WKView viewDidMoveToWindow]):
      (-[WKView _windowDidMiniaturize:]):
      (-[WKView _windowDidDeminiaturize:]):
      (-[WKView _windowDidOrderOffScreen:]):
      (-[WKView _windowDidOrderOnScreen:]):
          - remove ViewState::WindowIsVisible.
      * UIProcess/PageClient.h:
          - remove isWindowVisible.
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::updateViewState):
          - remove handling of ViewState::WindowIsVisible.
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::setIsVisible):
      (WebKit::PluginView::didInitializePlugin):
      * WebProcess/Plugins/PluginView.h:
          - setWindowIsVisible -> setIsVisible.
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      (WebKit::WebPage::setViewIsVisible):
      (WebKit::WebPage::setViewState):
      (WebKit::WebPage::windowAndWebPageAreFocused):
      * WebProcess/WebPage/WebPage.h:
      (WebKit::WebPage::isVisible):
          - remove m_windowIsVisible, setWindowIsVisible (implementation moved to setViewIsVisible).
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2f3625cd
    • dbates@webkit.org's avatar
      [iOS] Tapping any link crashes in WebCore::EventHandler::mouseMoved() · 3168e38f
      dbates@webkit.org authored
      (also crashes when scrolling certain sites)
      https://bugs.webkit.org/show_bug.cgi?id=126401
      <rdar://problem/15739334>
      
      Reviewed by Tim Horton.
      
      * page/ios/EventHandlerIOS.mm:
      (WebCore::currentEventSlot): Make the shared variable have static-storage duration.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3168e38f
    • barraclough@apple.com's avatar
      Refactor ViewState handling for drawing area / plugins · 465850b9
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126272
      
      Reviewed by Tim Horton.
      
      Instead of all ViewState changes being handled by the WebPage, notify the DrawingArea & PluginView to better encapsulate.
      
      * WebProcess/Plugins/PluginView.cpp:
      (WebKit::PluginView::viewStateDidChange):
      (WebKit::PluginView::platformViewStateDidChange):
          - added, handle changes in ViewState relevant to PluginView.
      (WebKit::PluginView::didInitializePlugin):
          - helper function removed.
      * WebProcess/Plugins/PluginView.h:
          - added/removed function declarations.
      * WebProcess/WebPage/DrawingArea.h:
      (WebKit::DrawingArea::viewStateDidChange):
          - declare viewStateDidChange.
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::setActive):
          - no need to notify plugin.
      (WebKit::WebPage::setViewIsVisible):
          - no need to notify drawing area.
      (WebKit::WebPage::setViewState):
          - send viewStateDidChange to drawing area / plugin.
      (WebKit::WebPage::setWindowIsVisible):
          - no need to notify plugin.
      * WebProcess/WebPage/WebPage.h:
      (WebKit::WebPage::layerHostingMode):
          - removed setLayerHostingMode.
      * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
          - declare viewStateDidChange.
      * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
      (WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange):
          - added, handle changes in ViewState relevant to DrawingArea.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      465850b9
    • ap@apple.com's avatar
      Merge didMoveOnscreen / page visibility to isVisible · cb02e800
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126268
      
      Build fix.
      
      * UIProcess/WebContext.h: Removed some accidental input.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb02e800
    • barraclough@apple.com's avatar
      Merge didMoveOnscreen / page visibility to isVisible · 21294937
      barraclough@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126268
      
      Reviewed by Tim Horton.
      
      The onscreen state most closely tracks view visibility (though currently
      also tracks a mix of in-window state). Make more consistent, simplify,
      and move all animation suspension logic to Page, so it can be controlled
      by the PageThrottler.
      
      Source/WebCore: 
      
      * WebCore.exp.in:
      * page/EventHandler.cpp:
      (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
      * page/FrameView.cpp:
      (WebCore::FrameView::shouldSetCursor):
      * page/Page.cpp:
      (WebCore::Page::Page):
          - initialize new variables.
      (WebCore::Page::setIsVisible):
          - merge setVisibilityState, didMoveOnscreen, willMoveOffscreen.
      (WebCore::Page::setIsPrerender):
          - switches visibility state from hidden to prerender.
      (WebCore::Page::visibilityState):
          - computed from m_isVisible, m_isPrerender.
      (WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
          - m_visibilityState -> m_isVisible.
      * page/Page.h:
          - remove didMoveOnscreen/willMoveOffscreen
            m_isOnscreen & m_visibilityState -> m_isVisible & m_isPrerender
            setVisibilityState -> setIsVisible & setIsPrerender.
      (WebCore::Page::isVisible):
          - isOnscreen -> isVisible.
      
      Source/WebKit/blackberry: 
      
      * Api/WebPage.cpp:
      (BlackBerry::WebKit::WebPagePrivate::setPageVisibilityState):
          - setVisibilityState -> setIsVisible.
      
      Source/WebKit/efl: 
      
      * ewk/ewk_view.cpp:
      (ewk_view_visibility_state_set):
          - setVisibilityState -> setIsVisible/setIsPrerender.
      
      Source/WebKit/gtk: 
      
      * WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
      (DumpRenderTreeSupportGtk::setPageVisibility):
          - setVisibilityState -> setIsVisible/setIsPrerender.
      
      Source/WebKit/mac: 
      
      * WebView/WebView.mm:
      (-[WebView _commonInitializationWithFrameName:groupName:]):
      (-[WebView _updateVisibilityState]):
          - _setVisibilityState:isInitialState: -> _setIsVisibile:isInitialState:.
      (-[WebView _setIsVisible:isInitialState:]):
          - added.
      (-[WebView _setVisibilityState:isInitialState:]):
          - setVisibilityState -> setIsVisible/setIsPrerender.
      (-[WebView viewWillMoveToWindow:]):
      (-[WebView viewDidMoveToWindow]):
          - remove redundant calls to willMoveOffscreen/didMoveOnscreen
            (this is handled by _updateVisibilityState).
      
      Source/WebKit2: 
      
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      (WebKit::WebPage::setViewIsVisible):
          - updateVisibilityState -> setIsVisible.
      (WebKit::WebPage::setIsInWindow):
          - remove redundant willMoveOffscreen/didMoveOnscreen calls - this is handled
            by setIsVisible.
      (WebKit::WebPage::setMayStartMediaWhenInWindow):
          - isOnscreen -> isInWindow. We start media when the view is in a window, not
            when the view is visible.
      (WebKit::WebPage::setVisibilityStatePrerender):
          - setVisibilityState -> setIsPrerender.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      21294937
    • oliver@apple.com's avatar
      Update bindings test results · 61cca14e
      oliver@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      61cca14e
    • zandobersek@gmail.com's avatar
      [GTK] Fix mismatched header guards in private WK1 header files · 1f215b18
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126390
      
      Reviewed by Martin Robinson.
      
      Fix three mismatched header guards that are producing warnings when building with Clang.
      
      * webkit/webkitsecurityoriginprivate.h:
      * webkit/webkitviewportattributesprivate.h:
      * webkit/webkitwebnavigationactionprivate.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f215b18
    • oliver@apple.com's avatar
      Refactor PutPropertySlot to be aware of custom properties · 6884841a
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126187
      
      Reviewed by Antti Koivisto.
      
      Source/JavaScriptCore:
      
      Refactor PutPropertySlot, making the constructor take the thisValue
      used as a target.  This results in a wide range of boilerplate changes
      to pass the new parameter.
      
      * API/JSObjectRef.cpp:
      (JSObjectSetProperty):
      * dfg/DFGOperations.cpp:
      (JSC::DFG::operationPutByValInternal):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::execute):
      * jit/JITOperations.cpp:
      * llint/LLIntSlowPaths.cpp:
      (JSC::LLInt::LLINT_SLOW_PATH_DECL):
      * runtime/Arguments.cpp:
      (JSC::Arguments::putByIndex):
      * runtime/ArrayPrototype.cpp:
      (JSC::putProperty):
      (JSC::arrayProtoFuncPush):
      * runtime/JSCJSValue.cpp:
      (JSC::JSValue::putToPrimitiveByIndex):
      * runtime/JSCell.cpp:
      (JSC::JSCell::putByIndex):
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::put):
      * runtime/JSGenericTypedArrayViewInlines.h:
      (JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):
      * runtime/JSONObject.cpp:
      (JSC::Walker::walk):
      * runtime/JSObject.cpp:
      (JSC::JSObject::putByIndex):
      (JSC::JSObject::putDirectNonIndexAccessor):
      (JSC::JSObject::deleteProperty):
      * runtime/JSObject.h:
      (JSC::JSObject::putDirect):
      * runtime/Lookup.h:
      (JSC::putEntry):
      (JSC::lookupPut):
      * runtime/PutPropertySlot.h:
      (JSC::PutPropertySlot::PutPropertySlot):
      (JSC::PutPropertySlot::setCustomProperty):
      (JSC::PutPropertySlot::thisValue):
      (JSC::PutPropertySlot::isCacheable):
      
      Source/WebCore:
      
      Update the bindings code generation and custom objects
      to the new function signatures
      
      * bindings/js/JSDOMWindowCustom.cpp:
      (WebCore::JSDOMWindow::put):
      * bindings/objc/WebScriptObject.mm:
      (-[WebScriptObject setValue:forKey:]):
      * bindings/scripts/CodeGeneratorJS.pm:
      (GenerateImplementation):
      * bindings/scripts/test/JS/JSTestInterface.cpp:
      (WebCore::JSTestInterface::putByIndex):
      * bridge/NP_jsobject.cpp:
      (_NPN_SetProperty):
      
      Source/WebKit/mac:
      
      Update for new method signatures.
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::setProperty):
      
      Source/WebKit2:
      
      Update for new method signatures.
      
      * WebProcess/Plugins/Netscape/NPJSObject.cpp:
      (WebKit::NPJSObject::setProperty):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6884841a
    • fpizlo@apple.com's avatar
      Rationalize DFG DCE · 9775655d
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=125523
      
      Reviewed by Mark Hahnenberg.
              
      Adds the ability to DCE more things. It's now the case that if a node is completely
      pure, we clear NodeMustGenerate and the node becomes a DCE candidate.
      
      * dfg/DFGAbstractInterpreterInlines.h:
      (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
      * dfg/DFGCSEPhase.cpp:
      (JSC::DFG::CSEPhase::performNodeCSE):
      * dfg/DFGClobberize.h:
      (JSC::DFG::clobberize):
      * dfg/DFGDCEPhase.cpp:
      (JSC::DFG::DCEPhase::cleanVariables):
      * dfg/DFGFixupPhase.cpp:
      (JSC::DFG::FixupPhase::fixupNode):
      * dfg/DFGGraph.h:
      (JSC::DFG::Graph::clobbersWorld):
      * dfg/DFGNodeType.h:
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compileAdd):
      * dfg/DFGSpeculativeJIT.h:
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * ftl/FTLLowerDFGToLLVM.cpp:
      (JSC::FTL::LowerDFGToLLVM::compileNode):
      (JSC::FTL::LowerDFGToLLVM::compileValueAdd):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9775655d
    • ap@apple.com's avatar
      Accessing Trac from build.webkit.org/dashboard should enable XMLHttpRequest.withCredentials · 04118560
      ap@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126391
      
      Reviewed by Dan Bernstein.
      
      Make it conditional, as trac.webkit.org doesn't work when withCredentials is enabled.
      One can request credentials use via Initialization.js.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
      (Trac):
      (Trac.prototype.update):
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
      (loadXML):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04118560
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r160846. · a668ac64
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/160846
      https://bugs.webkit.org/show_bug.cgi?id=126395
      
      Breaks build scripts for Windows when Visual Studio is not
      installed in Program Files (Requested by rfong on #webkit).
      
      * Scripts/webkitdirs.pm:
      (visualStudioInstallDir):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a668ac64
    • mrobinson@webkit.org's avatar
      [GTK] [CMake] run-gtk-tests should run with the cmake build · 96f03ef5
      mrobinson@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126341
      
      Reviewed by Carlos Garcia Campos.
      
      * Scripts/run-gtk-tests:
      (TestRunner.__init__): Use the new calling conventions for the common script.
      (TestRunner._setup_testing_environment): Ditto.
      * gtk/common.py:
      (set_build_types): Added set_build_types, to avoid having build_type arguments
      for all functions in common.
      (binary_build_path): Added this function which gets the path to the built binaries.
      (get_build_path): Removed the build_types argument.
      (build_path): Removed the build_types argument and call get_build_path directly now.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      96f03ef5
    • ap@apple.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=126391 · fb8dbbb3
      ap@apple.com authored
      Accessing Trac from build.webkit.org/dashboard should enable XMLHttpRequest.withCredentials
      
      Rubber-stamped by Dan Bernstein.
      
      * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
      (loadXML): Quick and dirty fix, with a FIXME.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb8dbbb3
    • simon.fraser@apple.com's avatar
      Add AsyncScrollingCoordinator, which is a base class for threaded and future... · 6576a4b7
      simon.fraser@apple.com authored
      Add AsyncScrollingCoordinator, which is a base class for threaded and future remote ScrollingCoordinators
      https://bugs.webkit.org/show_bug.cgi?id=126389
      
      Source/WebCore:
      
      Reviewed by Tim Horton.
      
      Add AsyncScrollingCoordinator, a ScrollingCoordinator that knows about ScrollingStateTrees
      and ScrollingTrees, but leaves it up to subclasses to decide when and how to commit.
      
      * WebCore.xcodeproj/project.pbxproj: Added AsyncScrollingCoordinator.*
      * page/scrolling/AsyncScrollingCoordinator.cpp: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm.
      (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
      (WebCore::AsyncScrollingCoordinator::~AsyncScrollingCoordinator):
      (WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
      (WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
      (WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
      (WebCore::AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
      (WebCore::AsyncScrollingCoordinator::attachToStateTree):
      (WebCore::AsyncScrollingCoordinator::detachFromStateTree):
      (WebCore::AsyncScrollingCoordinator::clearStateTree):
      (WebCore::AsyncScrollingCoordinator::syncChildPositions):
      (WebCore::AsyncScrollingCoordinator::ensureRootStateNodeForFrameView):
      (WebCore::AsyncScrollingCoordinator::updateScrollingNode):
      (WebCore::AsyncScrollingCoordinator::updateViewportConstrainedNode):
      (WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):
      (WebCore::AsyncScrollingCoordinator::setCounterScrollingLayerForNode):
      (WebCore::AsyncScrollingCoordinator::setHeaderLayerForNode):
      (WebCore::AsyncScrollingCoordinator::setFooterLayerForNode):
      (WebCore::AsyncScrollingCoordinator::setNonFastScrollableRegionForNode):
      (WebCore::AsyncScrollingCoordinator::setWheelEventHandlerCountForNode):
      (WebCore::AsyncScrollingCoordinator::setScrollBehaviorForFixedElementsForNode):
      (WebCore::AsyncScrollingCoordinator::setScrollbarPaintersFromScrollbarsForNode):
      (WebCore::AsyncScrollingCoordinator::setSynchronousScrollingReasons):
      (WebCore::AsyncScrollingCoordinator::updateMainFrameScrollLayerPosition):
      (WebCore::AsyncScrollingCoordinator::recomputeWheelEventHandlerCountForFrameView):
      (WebCore::AsyncScrollingCoordinator::isRubberBandInProgress):
      (WebCore::AsyncScrollingCoordinator::setScrollPinningBehavior):
      (WebCore::AsyncScrollingCoordinator::scrollingStateTreeAsText):
      * page/scrolling/AsyncScrollingCoordinator.h: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h.
      (WebCore::AsyncScrollingCoordinator::scrollingTree):
      (WebCore::AsyncScrollingCoordinator::setScrollingTree):
      (WebCore::AsyncScrollingCoordinator::scrollingStateTree):
      (WebCore::AsyncScrollingCoordinator::releaseScrollingTree):
      * page/scrolling/ScrollingCoordinator.h: Add casting support.
      (WebCore::ScrollingCoordinator::isAsyncScrollingCoordinator):
      * page/scrolling/ThreadedScrollingTree.h: commitNewTreeState() needs to be public.
      * page/scrolling/mac/ScrollingCoordinatorMac.h:
      * page/scrolling/mac/ScrollingCoordinatorMac.mm: Lots of code moved to AsyncScrollingCoordinator.
      (WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
      (WebCore::ScrollingCoordinatorMac::~ScrollingCoordinatorMac):
      (WebCore::ScrollingCoordinatorMac::pageDestroyed):
      (WebCore::ScrollingCoordinatorMac::commitTreeStateIfNeeded):
      (WebCore::ScrollingCoordinatorMac::handleWheelEvent):
      (WebCore::ScrollingCoordinatorMac::scheduleTreeStateCommit):
      (WebCore::ScrollingCoordinatorMac::commitTreeState):
      (WebCore::ScrollingCoordinatorMac::updateTiledScrollingIndicator):
      
      Source/WebKit2:
      
      Reviewed by Tim Horton.
      
      Add AsyncScrollingCoordinator, a ScrollingCoordinator that knows about ScrollingStateTrees
      and ScrollingTrees, but leaves it up to subclasses to decide when and how to commit.
      
      * WebProcess/WebPage/EventDispatcher.cpp:
      (WebKit::EventDispatcher::addScrollingTreeForPage): The ScrollingTree is exposed on
      AsyncScrollingCoordinator now, not ScrollingCoordinator, so we have to cast here.
      * WebProcess/WebPage/WebPage.cpp: m_useThreadedScrolling -> m_useAsyncScrolling terminology change.
      (WebKit::WebPage::WebPage):
      (WebKit::WebPage::~WebPage):
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
      (WebKit::TiledCoreAnimationDrawingArea::updatePreferences): Cast to AsyncScrollingCoordinator in order
      to get to the ScrollingTree.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6576a4b7
    • akling@apple.com's avatar
      Simplify the insides of DocumentSharedObjectPool and reduce memory usage. · 2e4918b1
      akling@apple.com authored
      Merging Blink r164152 by Elliott Sprehn.
      
      Instead of storing an OwnPtr to an object that has a pointer to the
      ShareableElementData as well as a pointer into the ShareableElementData
      and the length we can just store a RefPtr to the SharableElementData.
      
      This also reduces the memory usage of the pool by 2 pointers per entry.
      
      * dom/DocumentSharedObjectPool.h:
      * dom/DocumentSharedObjectPool.cpp:
      (WebCore::attributeHash):
      (WebCore::hasSameAttributes):
      (WebCore::DocumentSharedObjectPool::cachedShareableElementDataWithAttributes):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161210 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e4918b1
    • krit@webkit.org's avatar
      Support <box> values computed style for 'clip-path' property · a4389c23
      krit@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126148
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      Calculate computed style for 'clip-path' property.
      
      Updated tests to check for computed style.
      
      * css/BasicShapeFunctions.cpp: Add box value bounding-box.
      (WebCore::valueForBox):
      (WebCore::boxForValue):
      * css/CSSComputedStyleDeclaration.cpp: Return the computed style
          for 'clip-path'.
      (WebCore::ComputedStyleExtractor::propertyValue):
      * css/DeprecatedStyleBuilder.cpp: Create CSSValueLists for 'clip-th'.
      (WebCore::ApplyPropertyClipPath::applyValue):
      * rendering/ClipPathOperation.h: Add bounding-box value.
      (WebCore::ShapeClipPathOperation::pathForReferenceRect):
      (WebCore::ShapeClipPathOperation::setReferenceBox):
      (WebCore::ShapeClipPathOperation::referenceBox):
      (WebCore::BoxClipPathOperation::create):
      (WebCore::BoxClipPathOperation::pathForReferenceRect):
      (WebCore::BoxClipPathOperation::referenceBox):
      (WebCore::BoxClipPathOperation::BoxClipPathOperation):
      * rendering/shapes/ShapeInfo.h: Add bounding-box value.
      (WebCore::ShapeInfo::setShapeSize):
      (WebCore::ShapeInfo::logicalTopOffset):
      (WebCore::ShapeInfo::logicalLeftOffset):
      * rendering/style/BasicShapes.cpp: Add bounding-box value.
      (WebCore::BasicShape::referenceBoxSize):
      * rendering/style/BasicShapes.h:
      
      LayoutTests:
      
      Test computed style of 'clip-path' property.
      
      * fast/masking/parsing-clip-path-shape.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161209 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a4389c23
    • antti@apple.com's avatar
      Always resolve style from root · 1fbb5c99
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126380
      
      Reviewed by Andreas Kling.
              
      Forced style resolve that does not start from the root is never really correct. 
      Remove the few remaining instances.
      
      * dom/ShadowRoot.cpp:
      (WebCore::ShadowRoot::setResetStyleInheritance):
              
          Update style asynchronously.
      
      * dom/ShadowRoot.h:
      * dom/Text.h:
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::createElementRenderer):
      (WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache):
      (WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache):
              
          Delete the render tree synchronously on suspend and rebuild it asynchronously on resume.
          No need for m_customStyleForPageCache hack.
      
      * html/HTMLPlugInImageElement.h:
              
          Remove m_customStyleForPageCache.
      
      * style/StyleResolveTree.cpp:
      * style/StyleResolveTree.h:
              
          Remove Element version of resolveTree from the interface.
      
      * svg/SVGUseElement.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161208 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1fbb5c99
    • antti@apple.com's avatar
      Remove PlaceholderDocument · e9bd3267
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=126382
      
      Reviewed by Andreas Kling.
      
      Remove PlaceholderDocument class and replace it with a bit in Document.
      
      * WebCore.xcodeproj/project.pbxproj:
      * dom/Document.cpp:
      (WebCore::Document::Document):
      (WebCore::Document::createRenderTree):
      * dom/Document.h:
              
          Also make Synthesized a construction flag instead of a boolean parameter.
      
      (WebCore::Document::createNonRenderedPlaceholder):
      * html/HTMLDocument.cpp:
      (WebCore::HTMLDocument::HTMLDocument):
      * html/HTMLDocument.h:
      (WebCore::HTMLDocument::create):
      (WebCore::HTMLDocument::createSynthesizedDocument):
      * loader/DocumentWriter.cpp:
      (WebCore::DocumentWriter::createDocument):
      * loader/PlaceholderDocument.cpp: Removed.
      * loader/PlaceholderDocument.h: Removed.
      * pdf/ios/PDFDocument.h:
      (WebCore::PDFDocument::PDFDocument):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e9bd3267
    • benjamin@webkit.org's avatar
      Attempt to fix the build of WebCore's code generator on CMake based system · c2a7dfd9
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=126271
      
      Reviewed by Sam Weinig.
      
      * CMakeLists.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161206 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2a7dfd9
    • antti@apple.com's avatar
      Remove public attachRenderTree · eb1e9087
      antti@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eb1e9087
    • seokju@webkit.org's avatar
      Remove stale ScriptProfiler methods · 5abcf76f
      seokju@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@161204 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5abcf76f
    • akling@apple.com's avatar
      Remove ChromeClient::fullScreenRendererChanged(). · 8da15849
      akling@apple.com authored
      <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: http://svn.webkit.org/repository/webkit/trunk@161203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8da15849
    • simon.fraser@apple.com's avatar
      Fix the build by exposing some more scrolling state node headers · 4c0e3bdf
      simon.fraser@apple.com authored
      as Private in WebCore.framework.
      
      * WebCore.xcodeproj/project.pbxproj:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4c0e3bdf
    • ryuan.choi@samsung.com's avatar
      [EFL] Unreviewed build fix after r160903 when ACCESSIBILITY is disabled · c2fb3d3d
      ryuan.choi@samsung.com authored
      * accessibility/AccessibilityObject.h:
      (WebCore::AccessibilityObject::children):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@161201 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2fb3d3d
    • akling@apple.com's avatar
      RenderScrollbar: Map of scrollbar parts should use RenderPtr. · a351e06d
      akling@apple.com authored
      <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: http://svn.webkit.org/repository/webkit/trunk@161200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a351e06d
    • antti@apple.com's avatar
      Remove reattachRenderTree · 99eea33d
      antti@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      99eea33d
  2. 01 Jan, 2014 13 commits
    • simon.fraser@apple.com's avatar
      Create a ThreadedScrollingTree subclass of ScrollingTree, and push all... · 1584c72a
      simon.fraser@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161198 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1584c72a
    • akling@apple.com's avatar
      FrameView: Store scroll corner renderer in a RenderPtr. · 7294513b
      akling@apple.com authored
      <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: http://svn.webkit.org/repository/webkit/trunk@161197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7294513b
    • antti@apple.com's avatar
      Remove elementChildren/elementDescendants shorthands · 3eb8fea5
      antti@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3eb8fea5
    • antti@apple.com's avatar
      Do less synchronous render tree construction · ef239769
      antti@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161195 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ef239769
    • simon.fraser@apple.com's avatar
      Updating the scrolling tree should use references to state nodes · 1fb2e828
      simon.fraser@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161194 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1fb2e828
    • zandobersek@gmail.com's avatar
      Unreviewed GTK gardening. · 239cbca4
      zandobersek@gmail.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161193 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      239cbca4
    • simon.fraser@apple.com's avatar
      Add a typedef for PlatformLayerID on GraphicsLayer, and migrate... · 56d5aad5
      simon.fraser@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161192 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      56d5aad5
    • simon.fraser@apple.com's avatar
      ScrollingStateNodes should have a reference to the ScrollingStateTree · f692a741
      simon.fraser@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161191 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f692a741
    • simon.fraser@apple.com's avatar
      Give ScrollingStateNodes a nodeType() · 283ca709
      simon.fraser@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161190 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      283ca709
    • mrobinson@webkit.org's avatar
      [GTK] [CMake] Fix the WEBKIT_SRC_DIR define when building the WebKit2 GObject API unit tests · fc179e1b
      mrobinson@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@161189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc179e1b
    • mrobinson@webkit.org's avatar
      [GTK] Rename libtestnetscapeplugin to libTestNetscapePlugin · 55d01c4c
      mrobinson@webkit.org authored
      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: http://svn.webkit.org/repository/webkit/trunk@161188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      55d01c4c
    • changseok.oh@collabora.com's avatar
      [GTK][WK2] Back items are shown in reverse order in MiniBrowser · 4d60da3f
      changseok.oh@collabora.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161187 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4d60da3f
    • b.long@cablelabs.com's avatar
      [Gtk] WebKitWebInspector has build warnings due to uninitialized didChangeAttachedWidth member · 41632b61
      b.long@cablelabs.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      41632b61
  3. 31 Dec, 2013 1 commit
    • aestes@apple.com's avatar
      [iOS] Upstream PLATFORM(IOS) changes to Source/WebKit/ · a43fba54
      aestes@apple.com authored
      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: http://svn.webkit.org/repository/webkit/trunk@161185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a43fba54