1. 30 Sep, 2013 13 commits
  2. 29 Sep, 2013 19 commits
    • gyuyoung.kim@samsung.com's avatar
      Generate toCSSFooValue() for CSSCanvasValue · 160f135c
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122058
      
      Reviewed by Antti Koivisto.
      
      Generate toCSSFooValue() for CSSCanvasValue, and use it.
      This type cast function will help to detect bad-casts.
      isCanvasValue() is added in order to generate toCSSCanvasValue.
      
      No new tests, no behavior change.
      
      * css/CSSCanvasValue.h:
      * css/CSSImageGeneratorValue.cpp:
      (WebCore::CSSImageGeneratorValue::image):
      (WebCore::CSSImageGeneratorValue::fixedSize):
      (WebCore::CSSImageGeneratorValue::loadSubimages):
      * css/CSSValue.cpp:
      (WebCore::CSSValue::destroy):
      * css/CSSValue.h:
      (WebCore::CSSValue::isCanvasValue):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      160f135c
    • darin@apple.com's avatar
      Take some Xcode advice about turning on additional warnings in ANGLE and gtest · 7010becb
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122087
      
      Reviewed by Mark Rowe.
      
      Source/ThirdParty:
      
      * gtest/xcode/Config/General.xcconfig: Added some warnings that Xcode 5 suggested.
      
      Source/ThirdParty/ANGLE:
      
      * Configurations/Base.xcconfig: Add some of the warnings that Xcode 5 suggested.
      * src/compiler/preprocessor/Tokenizer.l: Defined YY_NO_INPUT so we don't compile
      an unused function and get a warning.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7010becb
    • mrowe@apple.com's avatar
      Fix the Lion build. · cd657cfb
      mrowe@apple.com authored
      Ensure that C++ and Objective-C++ files build with the right compiler flags.
      
      Source/WebCore:
      
      * Configurations/WebCore.xcconfig:
      
      Source/WebKit/mac:
      
      * Configurations/WebKit.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/BaseTarget.xcconfig:
      
      Tools:
      
      * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig:
      * WebKitTestRunner/Configurations/BaseTarget.xcconfig:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cd657cfb
    • gyuyoung.kim@samsung.com's avatar
      Generate toCSSFooValue() for CSSLineBoxContainValue · c43751f7
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122054
      
      Reviewed by Darin Adler.
      
      As a step to use toCSSFooValue, toCSSLineBoxContainValue is generated by using
      CSS_VALUE_TYPE_CASTS. To use it, isCSSLineBoxContainValue() is changed to
      isLineBoxContatinValue(). Unnecessary local variable is removed by this patch.
      
      No new tests, no behavior changes.
      
      * css/CSSLineBoxContainValue.h:
      * css/CSSValue.cpp:
      (WebCore::CSSValue::destroy):
      * css/CSSValue.h:
      (WebCore::CSSValue::isLineBoxContainValue):
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::applyProperty):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c43751f7
    • gyuyoung.kim@samsung.com's avatar
      Generate toCSSCrossfadeValue() instead of using manual function · 146b3b7b
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122057
      
      Reviewed by Antti Koivisto.
      
      Generated toCSSFooValue() supports more plenty functions rather than
      to use manual cast function.
      
      No new tests, no behavior changes.
      
      * css/CSSCrossfadeValue.h:
      * css/CSSImageGeneratorValue.cpp:
      (WebCore::CSSImageGeneratorValue::image):
      (WebCore::CSSImageGeneratorValue::fixedSize):
      (WebCore::CSSImageGeneratorValue::loadSubimages):
      * css/CSSValue.cpp:
      (WebCore::CSSValue::destroy):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      146b3b7b
    • gyuyoung.kim@samsung.com's avatar
      Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue · b8296662
      gyuyoung.kim@samsung.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122056
      
      Reviewed by Antti Koivisto.
      
      Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue, and use it.
      This type cast function will help to detect bad-casts.
      
      No new tests, no behavior changes.
      
      * css/CSSFilterImageValue.h:
      * css/CSSImageGeneratorValue.cpp:
      (WebCore::CSSImageGeneratorValue::image):
      (WebCore::CSSImageGeneratorValue::fixedSize):
      (WebCore::CSSImageGeneratorValue::loadSubimages):
      * css/CSSInitialValue.h:
      * css/CSSValue.cpp:
      (WebCore::CSSValue::destroy):
      * css/StyleResolver.cpp:
      (WebCore::StyleResolver::generatedOrPendingFromValue):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8296662
    • darin@apple.com's avatar
      Fix crashes caused by my recent attempt at a Windows build fix. · 9608d966
      darin@apple.com authored
              * bindings/js/WebCoreTypedArrayController.cpp:
              (WebCore::WebCoreTypedArrayController::toJS): Added back the prefix for the call to
              WebCore::toJS, otherwise this function just calls itself infinitely recursively.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9608d966
    • weinig@apple.com's avatar
      Fix the build. · af9a6b13
      weinig@apple.com authored
      * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
      (WebKit::NPRuntimeObjectMap::evaluate):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af9a6b13
    • weinig@apple.com's avatar
      Cleanup PageThrottler and PageConsole a bit · f2ead0f7
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122085
      
      Reviewed by Anders Carlsson.
      
      * html/HTMLMediaElement.h:
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::completed):
      * loader/FrameLoader.h:
      * loader/SubresourceLoader.cpp:
      (WebCore::SubresourceLoader::checkForHTTPStatusCodeError):
      (WebCore::SubresourceLoader::didFinishLoading):
      (WebCore::SubresourceLoader::didFail):
      (WebCore::SubresourceLoader::willCancel):
      * loader/SubresourceLoader.h:
      Store the PageActivityAssertionToken as a std::unique_ptr.
      
      * page/Page.cpp:
      (WebCore::Page::Page):
      Use createOwned and pass this by reference for the PageThrottler and PageConsole.
      (WebCore::Page::~Page):
      Remove unnecessary clearing of an OwnPtr that is about to be destroyed.
      * page/Page.h:
      Make m_pageThrottler const and return it as a reference.
      
      * page/PageActivityAssertionToken.cpp:
      (WebCore::PageActivityAssertionToken::PageActivityAssertionToken):
      (WebCore::PageActivityAssertionToken::~PageActivityAssertionToken):
      * page/PageActivityAssertionToken.h:
      Take the PageThrottler by reference in the constructor. It is never null.
      
      * page/PageConsole.cpp:
      (WebCore::PageConsole::PageConsole):
      (WebCore::PageConsole::~PageConsole):
      (WebCore::PageConsole::addMessage):
      * page/PageConsole.h:
      Pass and store the Page as a reference and remove an extraneous null check. Remove
      the create function.
      
      * page/PageThrottler.cpp:
      (WebCore::PageThrottler::PageThrottler):
      (WebCore::PageThrottler::~PageThrottler):
      (WebCore::PageThrottler::createActivityToken):
      (WebCore::PageThrottler::throttlePage):
      (WebCore::PageThrottler::unthrottlePage):
      (WebCore::PageThrottler::addActivityToken):
      (WebCore::PageThrottler::removeActivityToken):
      * page/PageThrottler.h:
      Pass and store the Page as a reference. Move the creation of PageActivityAssertionToken here
      to aid encapsulation.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156625 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f2ead0f7
    • akling@apple.com's avatar
      Pass VM instead of JSGlobalObject to function constructors. · 59875529
      akling@apple.com authored
      <https://webkit.org/b/122082>
      
      Reviewed by Darin Adler.
      
      Functions don't need anything from the global object during their
      construction and only use it to get to the VM. Reduce loads by
      simply passing the VM around instead.
      
      This patch is mostly mechanical, I just changed the signature of
      InternalFunction and worked my way from there until it built.
      
      JSC release binary size -= 4840 bytes.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156624 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      59875529
    • darin@apple.com's avatar
      Try to fix Windows build. · 6d7750ca
      darin@apple.com authored
              * bindings/js/WebCoreTypedArrayController.cpp: Windows has a symbol named Handle, so we need
              to call JSC::Handle out by name. To fix that, I removed "using namespace JSC" entirely. And
              just for fun, sort of "rewrote" this file.
              (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController): Removed unneeded explicit
              initialization of m_owner.
              (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController): Fixed formatting.
              (WebCore::WebCoreTypedArrayController::toJS): Added lots of explicit JSC and got rid of local.
              (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots): Cut
              down on locals, used auto& for type, and called it "wrapper" since that's what JSArrayBuffer is.
              (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize): More of the same.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156623 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d7750ca
    • darin@apple.com's avatar
      Use RenderElement instead of RenderObject in many places · 8cdf7124
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122078
      
      Reviewed by Andreas Kling.
      
      Source/ThirdParty/ANGLE:
      
      * ANGLE.xcodeproj/project.pbxproj: Let Xcode do its thing to this file.
      
      Source/WebCore:
      
      * WebCore.exp.in: Updated for name changes.
      
      * dom/ContainerNode.h: Moved renderer() here from Element.
      * dom/Element.h: Moved renderer() from here to ContainerNode.
      * render/RenderElement.h: Moved renderer() from Element to ContainerNode.
      
      * accessibility/AccessibilityImageMapLink.cpp:
      (WebCore::AccessibilityImageMapLink::imageMapLinkRenderer):
      (WebCore::AccessibilityImageMapLink::detachFromParent):
      (WebCore::AccessibilityImageMapLink::elementPath):
      (WebCore::AccessibilityImageMapLink::elementRect):
      * accessibility/AccessibilityImageMapLink.h:
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
      * bindings/objc/DOM.mm:
      (-[DOMElement image]):
      (-[DOMElement _font]):
      (-[DOMElement _imageTIFFRepresentation]):
      * css/CSSCanvasValue.cpp:
      (WebCore::CSSCanvasValue::canvasChanged):
      (WebCore::CSSCanvasValue::canvasResized):
      (WebCore::CSSCanvasValue::canvasDestroyed):
      (WebCore::CSSCanvasValue::fixedSize):
      (WebCore::CSSCanvasValue::image):
      * css/CSSCanvasValue.h:
      * css/CSSComputedStyleDeclaration.cpp:
      (WebCore::computeRenderStyleForProperty):
      * css/CSSCrossfadeValue.cpp:
      (WebCore::subimageKnownToBeOpaque):
      (WebCore::CSSCrossfadeValue::fixedSize):
      (WebCore::CSSCrossfadeValue::knownToBeOpaque):
      (WebCore::CSSCrossfadeValue::image):
      (WebCore::CSSCrossfadeValue::crossfadeChanged):
      * css/CSSCrossfadeValue.h:
      * css/CSSFilterImageValue.cpp:
      (WebCore::CSSFilterImageValue::fixedSize):
      (WebCore::CSSFilterImageValue::knownToBeOpaque):
      (WebCore::CSSFilterImageValue::image):
      (WebCore::CSSFilterImageValue::filterImageChanged):
      * css/CSSFilterImageValue.h:
      * css/CSSFontSelector.cpp:
      * css/CSSGradientValue.cpp:
      (WebCore::CSSGradientValue::image):
      (WebCore::CSSGradientValue::addStops):
      (WebCore::CSSGradientValue::knownToBeOpaque):
      (WebCore::CSSLinearGradientValue::createGradient):
      (WebCore::CSSRadialGradientValue::createGradient):
      * css/CSSGradientValue.h:
      (WebCore::CSSGradientValue::fixedSize):
      * css/CSSImageGeneratorValue.cpp:
      (WebCore::CSSImageGeneratorValue::addClient):
      (WebCore::CSSImageGeneratorValue::removeClient):
      (WebCore::CSSImageGeneratorValue::image):
      (WebCore::CSSImageGeneratorValue::fixedSize):
      (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
      * css/CSSImageGeneratorValue.h:
      (WebCore::CSSImageGeneratorValue::clients):
      * css/CSSImageValue.cpp:
      (WebCore::CSSImageValue::knownToBeOpaque):
      * css/CSSImageValue.h:
      * css/DeprecatedStyleBuilder.cpp:
      * dom/DocumentMarkerController.cpp:
      (WebCore::DocumentMarkerController::removeMarkersFromList):
      (WebCore::DocumentMarkerController::repaintMarkers):
      * dom/Element.cpp:
      (WebCore::localZoomForRenderer):
      (WebCore::adjustForLocalZoom):
      (WebCore::Element::offsetParent):
      (WebCore::Element::updateExistingPseudoElement):
      * dom/ElementRareData.h:
      (WebCore::ElementRareData::create):
      (WebCore::ElementRareData::ElementRareData):
      * dom/Node.cpp:
      (WebCore::Node::ensureRareData):
      * editing/DeleteButtonController.cpp:
      (WebCore::isDeletableElement):
      * editing/Editor.cpp:
      (WebCore::Editor::hasBidiSelection):
      (WebCore::Editor::baseWritingDirectionForSelectionStart):
      * editing/EditorCommand.cpp:
      (WebCore::verticalScrollDistance):
      * editing/htmlediting.cpp:
      (WebCore::directionOfEnclosingBlock):
      * editing/ios/EditorIOS.mm:
      (WebCore::Editor::fontForSelection):
      (WebCore::getImage):
      * editing/mac/EditorMac.mm:
      (WebCore::Editor::fontForSelection):
      (WebCore::getImage):
      * editing/markup.cpp:
      * html/HTMLAreaElement.cpp:
      (WebCore::HTMLAreaElement::computePath):
      (WebCore::HTMLAreaElement::computeRect):
      (WebCore::HTMLAreaElement::setFocus):
      * html/HTMLAreaElement.h:
      * html/HTMLCanvasElement.cpp:
      (WebCore::HTMLCanvasElement::reset):
      * html/HTMLElement.cpp:
      (WebCore::HTMLElement::setInnerText):
      * html/HTMLFormControlElement.cpp:
      (WebCore::updateFromElementCallback):
      * html/HTMLFormElement.cpp:
      (WebCore::HTMLFormElement::rendererIsNeeded):
      * html/HTMLFrameOwnerElement.h:
      * html/HTMLImageElement.cpp:
      (WebCore::HTMLImageElement::x):
      (WebCore::HTMLImageElement::y):
      (WebCore::HTMLImageElement::willRespondToMouseClickEvents):
      * html/HTMLMapElement.cpp:
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::defaultEventHandler):
      * html/HTMLMeterElement.cpp:
      (WebCore::HTMLMeterElement::renderMeter):
      * html/HTMLOptionElement.cpp:
      (WebCore::HTMLOptionElement::didRecalcStyle):
      * html/HTMLPlugInElement.cpp:
      (WebCore::HTMLPlugInElement::willRespondToMouseClickEvents):
      (WebCore::HTMLPlugInElement::defaultEventHandler):
      (WebCore::HTMLPlugInElement::isKeyboardFocusable):
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::defaultEventHandler):
      * html/HTMLProgressElement.cpp:
      (WebCore::HTMLProgressElement::renderProgress):
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::scrollToSelection):
      (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
      (WebCore::HTMLSelectElement::selectOption):
      * html/HTMLTableCellElement.cpp:
      (WebCore::HTMLTableCellElement::cellAbove):
      * html/HTMLTextFormControlElement.cpp:
      (WebCore::hasVisibleTextArea):
      (WebCore::HTMLTextFormControlElement::setSelectionRange):
      * html/InputType.h:
      * html/parser/HTMLResourcePreloader.cpp:
      * html/shadow/MediaControlElementTypes.cpp:
      (WebCore::MediaControlElement::setDisplayType):
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlPanelElement::startDrag):
      (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
      * html/shadow/MeterShadowElement.cpp:
      (WebCore::MeterShadowElement::rendererIsNeeded):
      (WebCore::MeterInnerElement::rendererIsNeeded):
      * inspector/InspectorOverlay.cpp:
      * inspector/InspectorTimelineAgent.cpp:
      * inspector/InspectorTimelineAgent.h:
      * loader/ImageLoader.cpp:
      (WebCore::ImageLoader::renderImageResource):
      * loader/cache/CachedImage.cpp:
      (WebCore::CachedImage::currentFrameKnownToBeOpaque):
      * loader/cache/CachedImage.h:
      * mathml/MathMLElement.cpp:
      * page/ContextMenuController.cpp:
      * page/DragController.cpp:
      (WebCore::DragController::draggableElement):
      * page/EventHandler.cpp:
      (WebCore::EventHandler::EventHandler):
      (WebCore::EventHandler::clear):
      (WebCore::EventHandler::startPanScrolling):
      (WebCore::EventHandler::autoscrollRenderer):
      (WebCore::EventHandler::scrollOverflow):
      (WebCore::EventHandler::logicalScrollOverflow):
      (WebCore::EventHandler::subframeForTargetNode):
      (WebCore::EventHandler::selectCursor):
      (WebCore::layerForNode):
      (WebCore::EventHandler::handleWheelEvent):
      (WebCore::EventHandler::clearGestureScrollNodes):
      * page/EventHandler.h:
      * page/FocusController.cpp:
      * page/Frame.cpp:
      (WebCore::Frame::ownerRenderer):
      (WebCore::Frame::visiblePositionForPoint):
      (WebCore::Frame::nodeImage):
      * page/FrameView.cpp:
      (WebCore::FrameView::applyOverflowToViewport):
      (WebCore::FrameView::applyPaginationToViewport):
      (WebCore::FrameView::calculateScrollbarModesForLayout):
      (WebCore::FrameView::isEnclosedInCompositingLayer):
      (WebCore::FrameView::embeddedContentBox):
      (WebCore::FrameView::addSlowRepaintObject):
      (WebCore::FrameView::removeSlowRepaintObject):
      (WebCore::FrameView::addViewportConstrainedObject):
      (WebCore::FrameView::removeViewportConstrainedObject):
      (WebCore::FrameView::scrollContentsFastPath):
      (WebCore::FrameView::repaintSlowRepaintObjects):
      (WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
      (WebCore::FrameView::updateOverflowStatus):
      (WebCore::FrameView::updateScrollCorner):
      (WebCore::FrameView::paintContents):
      (WebCore::FrameView::convertFromRenderer):
      (WebCore::FrameView::convertToRenderer):
      * page/FrameView.h:
      * page/PageSerializer.cpp:
      (WebCore::PageSerializer::addImageToResources):
      * page/PageSerializer.h:
      * page/animation/AnimationBase.cpp:
      (WebCore::AnimationBase::AnimationBase):
      (WebCore::AnimationBase::updateStateMachine):
      * page/animation/AnimationBase.h:
      (WebCore::AnimationBase::renderer):
      * page/animation/AnimationController.cpp:
      (WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
      (WebCore::AnimationControllerPrivate::clear):
      (WebCore::AnimationControllerPrivate::updateAnimations):
      (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
      (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
      (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
      (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument):
      (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument):
      (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
      (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
      (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
      (WebCore::AnimationControllerPrivate::numberOfActiveAnimations):
      (WebCore::AnimationController::cancelAnimations):
      (WebCore::AnimationController::updateAnimations):
      (WebCore::AnimationController::getAnimatedStyleForRenderer):
      (WebCore::AnimationController::notifyAnimationStarted):
      (WebCore::AnimationController::pauseAnimationAtTime):
      (WebCore::AnimationController::pauseTransitionAtTime):
      (WebCore::AnimationController::isRunningAnimationOnRenderer):
      (WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):
      * page/animation/AnimationController.h:
      * page/animation/AnimationControllerPrivate.h:
      * page/animation/CSSPropertyAnimation.cpp:
      (WebCore::crossfadeBlend):
      * page/animation/CompositeAnimation.cpp:
      (WebCore::CompositeAnimation::updateTransitions):
      (WebCore::CompositeAnimation::updateKeyframeAnimations):
      (WebCore::CompositeAnimation::animate):
      * page/animation/CompositeAnimation.h:
      * page/animation/ImplicitAnimation.cpp:
      (WebCore::ImplicitAnimation::ImplicitAnimation):
      (WebCore::ImplicitAnimation::animate):
      (WebCore::ImplicitAnimation::pauseAnimation):
      (WebCore::ImplicitAnimation::sendTransitionEvent):
      * page/animation/ImplicitAnimation.h:
      (WebCore::ImplicitAnimation::create):
      * page/animation/KeyframeAnimation.cpp:
      (WebCore::KeyframeAnimation::KeyframeAnimation):
      (WebCore::KeyframeAnimation::animate):
      (WebCore::KeyframeAnimation::pauseAnimation):
      (WebCore::KeyframeAnimation::endAnimation):
      (WebCore::KeyframeAnimation::sendAnimationEvent):
      * page/animation/KeyframeAnimation.h:
      * page/mac/EventHandlerMac.mm:
      (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
      (WebCore::EventHandler::passSubframeEventToSubframe):
      * page/mac/FrameSnapshottingMac.mm:
      (WebCore::snapshotDragImage):
      * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
      (WebCore::MediaPlayerPrivateQTKit::paint):
      * rendering/CounterNode.cpp:
      (WebCore::CounterNode::CounterNode):
      (WebCore::CounterNode::create):
      * rendering/CounterNode.h:
      (WebCore::CounterNode::owner):
      * rendering/FilterEffectRenderer.cpp:
      (WebCore::FilterEffectRenderer::buildReferenceFilter):
      (WebCore::FilterEffectRenderer::build):
      * rendering/FilterEffectRenderer.h:
      * rendering/HitTestResult.cpp:
      (WebCore::HitTestResult::spellingToolTip):
      (WebCore::HitTestResult::title):
      (WebCore::HitTestResult::innerTextIfTruncated):
      (WebCore::HitTestResult::image):
      * rendering/LayoutRepainter.cpp:
      (WebCore::LayoutRepainter::LayoutRepainter):
      * rendering/LayoutRepainter.h:
      * rendering/LayoutState.h:
      (WebCore::LayoutState::LayoutState):
      * rendering/LineWidth.h:
      * rendering/LogicalSelectionOffsetCaches.h:
      (WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject):
      (WebCore::isNonRenderBlockInline):
      (WebCore::containingBlockForFixedPosition):
      (WebCore::containingBlockForAbsolutePosition):
      (WebCore::containingBlockForObjectInFlow):
      (WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
      * rendering/PaintInfo.h:
      (WebCore::PaintInfo::PaintInfo):
      (WebCore::PaintInfo::updateSubtreePaintRootForChildren):
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::paintFillLayers):
      (WebCore::RenderBox::paintFillLayer):
      * rendering/RenderBox.h:
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::paintFillLayerExtended):
      (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
      * rendering/RenderBoxModelObject.h:
      * rendering/RenderCounter.cpp:
      (WebCore::nextInPreOrder):
      (WebCore::planCounter):
      (WebCore::makeCounterNode):
      (WebCore::RenderCounter::originalText):
      * rendering/RenderElement.cpp:
      (WebCore::RenderElement::~RenderElement):
      (WebCore::RenderElement::insertChildInternal):
      (WebCore::RenderElement::removeChildInternal):
      (WebCore::RenderElement::willBeDestroyed):
      (WebCore::RenderElement::rendererForRootBackground):
      * rendering/RenderImageResource.cpp:
      (WebCore::RenderImageResource::initialize):
      * rendering/RenderImageResource.h:
      * rendering/RenderImageResourceStyleImage.cpp:
      (WebCore::RenderImageResourceStyleImage::initialize):
      * rendering/RenderImageResourceStyleImage.h:
      (WebCore::RenderImageResourceStyleImage::create):
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
      (WebCore::RenderLayerCompositor::requiresCompositingLayer):
      (WebCore::RenderLayerCompositor::canBeComposited):
      (WebCore::RenderLayerCompositor::requiresOwnBackingStore):
      (WebCore::RenderLayerCompositor::reasonsForCompositing):
      (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
      (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
      (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
      (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
      (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
      (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
      (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):
      (WebCore::RenderLayerCompositor::requiresCompositingForFilters):
      (WebCore::RenderLayerCompositor::requiresCompositingForBlending):
      (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
      (WebCore::RenderLayerCompositor::isRunningAcceleratedTransformAnimation):
      * rendering/RenderLayerCompositor.h:
      * rendering/RenderObject.cpp:
      (WebCore::RenderObject::containingBlock):
      (WebCore::mustRepaintFillLayers):
      (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered):
      (WebCore::RenderObject::willBeDestroyed):
      * rendering/RenderScrollbarPart.cpp:
      (WebCore::RenderScrollbarPart::rendererOwningScrollbar):
      * rendering/RenderScrollbarPart.h:
      * rendering/RenderTableCell.cpp:
      (WebCore::RenderTableCell::paintBackgroundsBehindCell):
      * rendering/RenderTableCell.h:
      * rendering/RenderView.cpp:
      (WebCore::RenderView::RenderView):
      * rendering/style/FillLayer.cpp:
      (WebCore::FillLayer::hasOpaqueImage):
      * rendering/style/FillLayer.h:
      * rendering/style/KeyframeList.h:
      (WebCore::KeyframeList::KeyframeList):
      * rendering/style/StyleCachedImage.cpp:
      (WebCore::StyleCachedImage::imageSize):
      (WebCore::StyleCachedImage::computeIntrinsicDimensions):
      (WebCore::StyleCachedImage::setContainerSizeForRenderer):
      (WebCore::StyleCachedImage::addClient):
      (WebCore::StyleCachedImage::removeClient):
      (WebCore::StyleCachedImage::image):
      (WebCore::StyleCachedImage::knownToBeOpaque):
      * rendering/style/StyleCachedImage.h:
      * rendering/style/StyleCachedImageSet.cpp:
      (WebCore::StyleCachedImageSet::imageSize):
      (WebCore::StyleCachedImageSet::computeIntrinsicDimensions):
      (WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
      (WebCore::StyleCachedImageSet::addClient):
      (WebCore::StyleCachedImageSet::removeClient):
      (WebCore::StyleCachedImageSet::image):
      (WebCore::StyleCachedImageSet::knownToBeOpaque):
      * rendering/style/StyleCachedImageSet.h:
      * rendering/style/StyleGeneratedImage.cpp:
      (WebCore::StyleGeneratedImage::imageSize):
      (WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
      (WebCore::StyleGeneratedImage::addClient):
      (WebCore::StyleGeneratedImage::removeClient):
      (WebCore::StyleGeneratedImage::image):
      (WebCore::StyleGeneratedImage::knownToBeOpaque):
      * rendering/style/StyleGeneratedImage.h:
      * rendering/style/StyleImage.h:
      (WebCore::StyleImage::imagesEquivalent):
      * rendering/style/StylePendingImage.h:
      (WebCore::StylePendingImage::cssImageValue):
      (WebCore::StylePendingImage::cssImageGeneratorValue):
      (WebCore::StylePendingImage::cssCursorImageValue):
      (WebCore::StylePendingImage::cssImageSetValue):
      (WebCore::StylePendingImage::computeIntrinsicDimensions):
      * testing/Internals.cpp:
      (WebCore::Internals::boundingBox):
      (WebCore::Internals::isSelectPopupVisible):
      (WebCore::Internals::isPluginUnavailabilityIndicatorObscured):
      Use RenderElement instead of RenderObject where it was easy to do so.
      For local variables holding the return value of renderer() functions,
      use auto instead, so the most-specific possible type will be used,
      without having to figure out what that is in each case. Also use some
      more OVERRIDE and FINAL and use nullptr instead of 0. And replace some
      cryptic short local variable names with words.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8cdf7124
    • akling@apple.com's avatar
      Pass VM instead of JSGlobalObject to ArrayPrototype constructor. · 1a4cbada
      akling@apple.com authored
      <https://webkit.org/b/122079>
      
      Reviewed by Geoffrey Garen.
      
      ArrayPrototype doesn't need the global object for anything during
      construction, so reduce the amount of loads by just passing the VM.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a4cbada
    • akling@apple.com's avatar
      Pass VM instead of ExecState to simple builtin constructors. · b34659a8
      akling@apple.com authored
      <https://webkit.org/b/122077>
      
      Reviewed by Sam Weinig.
      
      None of the simple builtins need the ExecState for anything during
      their construction, so reduce the amount of loads by just passing
      the VM around instead.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156620 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b34659a8
    • pdr@google.com's avatar
      Repaint borders and outlines on pseudo content changes · ffe769be
      pdr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122070
      
      Reviewed by Andreas Kling.
      
      Source/WebCore:
      
      This patch fixes a regression from wkrev.com/150259 where pseudo content with
      borders or outlines would fail to repaint if the color property changed.
      The root bug is that border-color and outline-color properties use 'color' if
      no explicit border-color or outline-color are given, and changing color should
      repaint borders and outlines even if the text content is empty.
      
      Relevant spec sections:
      border: http://www.w3.org/TR/CSS1/#border-color
      outline: http://www.w3.org/TR/CSS2/ui.html#propdef-outline-color
      
      This patch also renames StyleDifferenceRepaintIfText to
      StyleDifferenceRepaintIfTextOrBorderOrOutline and updates the relevant functions.
      
      Test: fast/repaint/hover-pseudo-borders.html
      
      * rendering/RenderElement.cpp:
      (WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline):
      
          This function has been renamed to reflect that it returns true for borders
          or outlines as well.
      
      (WebCore::RenderElement::shouldRepaintForStyleDifference):
      * rendering/RenderElement.h:
      * rendering/style/RenderStyle.cpp:
      (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline):
      (WebCore::RenderStyle::diff):
      * rendering/style/RenderStyle.h:
      * rendering/style/RenderStyleConstants.h:
      * rendering/svg/SVGResourcesCache.cpp:
      (WebCore::SVGResourcesCache::clientStyleChanged):
          These have also been renamed to reflect the new borders and outlines check.
      
      LayoutTests:
      
      * fast/repaint/hover-pseudo-borders.html: Added.
      * platform/mac/fast/repaint/hover-pseudo-borders-expected.png: Added.
      * platform/mac/fast/repaint/hover-pseudo-borders-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156619 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ffe769be
    • antti@apple.com's avatar
      Tighten typing in inline rendering · 3ab7ef3a
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122076
      
      Reviewed by Andreas Kling.
              
      More RenderElement, const, &, etc.
      
      * dom/Position.cpp:
      (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
      * rendering/InlineFlowBox.cpp:
      (WebCore::isLastChildForRenderer):
      (WebCore::isAncestorAndWithinBlock):
      (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
      (WebCore::InlineFlowBox::nodeAtPoint):
      * rendering/InlineIterator.h:
      (WebCore::InlineIterator::InlineIterator):
      (WebCore::InlineIterator::root):
      (WebCore::isEmptyInline):
      (WebCore::bidiNextShared):
      (WebCore::bidiNextSkippingEmptyInlines):
      (WebCore::bidiNextIncludingEmptyInlines):
      (WebCore::bidiFirstSkippingEmptyInlines):
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::inlineLogicalWidth):
      (WebCore::alwaysRequiresLineBox):
      (WebCore::requiresLineBox):
      (WebCore::canBreakAtThisPosition):
      (WebCore::LineBreaker::nextSegmentBreak):
      * rendering/shapes/ShapeInsideInfo.h:
      (WebCore::LineSegmentIterator::LineSegmentIterator):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156618 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3ab7ef3a
    • commit-queue@webkit.org's avatar
      Refactor code for finding x86 scratch register. · f73a79e3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=122072
      
      Patch by Nadav Rotem <nrotem@apple.com> on 2013-09-29
      Reviewed by Geoffrey Garen.
      
      * assembler/MacroAssemblerX86Common.h:
      (JSC::MacroAssemblerX86Common::getUnusedRegister):
      (JSC::MacroAssemblerX86Common::store8):
      (JSC::MacroAssemblerX86Common::store16):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f73a79e3
    • zandobersek@gmail.com's avatar
      Unreviewed GTK gardening. Skip the IndexedDB tests for now as the feature is going · f6e218be
      zandobersek@gmail.com authored
      through substantial changes that don't ensure constant proper functionality.
      
      * platform/gtk-wk2/TestExpectations:
      * platform/gtk/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f6e218be
    • weinig@apple.com's avatar
      Merge ScriptControllerBase into ScriptController · 4dd19042
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122071
      
      Reviewed by Antti Koivisto.
      
      There is no need for ScriptControllerBase. Remove it.
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.vcxproj/WebCore.vcxproj:
      * WebCore.vcxproj/WebCore.vcxproj.filters:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/ScriptControllerBase.cpp: Removed.
      * bindings/ScriptControllerBase.h: Removed.
      * bindings/js/ScriptController.cpp:
      (WebCore::ScriptController::canExecuteScripts):
      (WebCore::ScriptController::executeScript):
      (WebCore::ScriptController::executeIfJavaScriptURL):
      * bindings/js/ScriptController.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4dd19042
  3. 28 Sep, 2013 8 commits
    • zandobersek@gmail.com's avatar
      Unreviewed build fix after r156613 for ports enabling CSS3_TEXT. · 81787310
      zandobersek@gmail.com authored
      * rendering/RenderBlockLineLayout.cpp:
      (WebCore::requiresIndent): Use the RenderStyle reference.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156614 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81787310
    • antti@apple.com's avatar
      Switch inline boxes to use const RenderStyle& · 78e56776
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122068
      
      Reviewed by Sam Weinig.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156613 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78e56776
    • antti@apple.com's avatar
      Add first()/last() to ElementIteratorAdapters · 1cff4b46
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122067
      
      Reviewed by Darin Adler.
      
      Add a convenient way for getting the first and last element if it exists.
              
      Use it in some places.
      
      * accessibility/AccessibilityNodeObject.cpp:
      (WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
      * css/CSSFontFaceSource.cpp:
      (WebCore::CSSFontFaceSource::getFontData):
      * dom/Document.cpp:
      (WebCore::Document::childrenChanged):
      (WebCore::Document::removeTitle):
      * dom/ElementChildIterator.h:
      (WebCore::::first):
      (WebCore::::last):
      * dom/ElementDescendantIterator.h:
      (WebCore::::first):
      (WebCore::::last):
      * html/HTMLFieldSetElement.cpp:
      (WebCore::HTMLFieldSetElement::legend):
      * html/HTMLLegendElement.cpp:
      (WebCore::HTMLLegendElement::associatedControl):
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::finishParsingChildren):
      (WebCore::HTMLMediaElement::selectMediaResource):
      * svg/SVGElement.cpp:
      (WebCore::SVGElement::title):
      * svg/SVGFontFaceElement.cpp:
      (WebCore::SVGFontFaceElement::rebuildFontFace):
      * svg/graphics/SVGImage.cpp:
      (WebCore::SVGImage::hasSingleSecurityOrigin):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156612 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1cff4b46
    • mrowe@apple.com's avatar
      Fix some failures with newer versions of clang. · a75e9229
      mrowe@apple.com authored
      Some CoreGraphics headers generate warnings under newer versions of clang. Since they're system headers the warnings would
      usually be suppressed, but we're adding the frameworks to the non-system framework search path so they're no longer treated
      as system headers. We address this by removing the system paths from FRAMEWORK_SEARCH_PATHS and using the -iframework compiler
      flag in OTHER_CFLAGS to add the paths to the system framework search path. We have to set OTHER_CFLAGS at the target level
      in order for it to coexist with the ASAN-related OTHER_CFLAGS that's set in DebugRelease.xcconfig.
      
      Reviewed by Dan Bernstein.
      
      Source/WebCore:
      
      * Configurations/WebCore.xcconfig:
      
      Source/WebKit/mac:
      
      * Configurations/DebugRelease.xcconfig:
      * Configurations/WebKit.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/BaseTarget.xcconfig:
      * Configurations/DebugRelease.xcconfig:
      
      Tools:
      
      * DumpRenderTree/mac/Configurations/Base.xcconfig:
      * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: A new .xcconfig file that's included by all target-specific .xcconfig files.
      * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
      * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
      * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig:
      * DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig:
      * WebKitTestRunner/Configurations/Base.xcconfig:
      * WebKitTestRunner/Configurations/BaseTarget.xcconfig: A new .xcconfig file that's included by all target-specific .xcconfig files.
      * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
      * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
      * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a75e9229
    • mrowe@apple.com's avatar
      Take Xcode's advice and enable some extra warnings. · c11deac3
      mrowe@apple.com authored
      Reviewed by Sam Weinig.
      
      Source/JavaScriptCore:
      
      * Configurations/Base.xcconfig:
      * JavaScriptCore.xcodeproj/project.pbxproj:
      
      Source/WebCore:
      
      * Configurations/Base.xcconfig:
      * WebCore.xcodeproj/project.pbxproj:
      * dom/NamedNodeMap.cpp:
      (WebCore::NamedNodeMap::removeNamedItemNS): Use the correct constant.
      
      Source/WebKit:
      
      * WebKit.xcodeproj/project.pbxproj:
      
      Source/WebKit/mac:
      
      * Configurations/Base.xcconfig:
      
      Source/WebKit2:
      
      * Configurations/Base.xcconfig:
      * WebKit2.xcodeproj/project.pbxproj:
      
      Source/WTF:
      
      * Configurations/Base.xcconfig:
      * WTF.xcodeproj/project.pbxproj:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156610 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c11deac3
    • weinig@apple.com's avatar
      CTTE: VisitedLinkState should hold a Document& · 9ec60814
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122066
      
      Reviewed by Antti Koivisto.
      
      The Document can never be null, so use a reference.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156609 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ec60814
    • antti@apple.com's avatar
      Clean up code for getting first line style · b0608f67
      antti@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122037
      
      Reviewed by Andreas Kling.
      
      We have confusing RenderObject::style(bool firstLine). Get rid of it in favour of 
      just using RenderObject::firstLineStyle() where appropriate.
              
      Also switch to RenderStyle references in many places and move first line style caching
      code down to RenderElement.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b0608f67
    • darin@apple.com's avatar
      Add Frame::mainFrame and Frame::isMainFrame · 0e83ab12
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=122064
      
      Reviewed by Andreas Kling.
      
      Source/WebCore:
      
      * WebCore.exp.in: Removed exports of FrameView::isMainFrameView and
      Page::frameIsMainFrame. Since the new isMainFrame function is inline, it
      does not need to be exported.
      
      * history/PageCache.cpp:
      (WebCore::PageCache::markPagesForFullStyleRecalc):
      (WebCore::PageCache::markPagesForDeviceScaleChanged):
      These two were the only functions I found that really wanted the equivalent
      of Page::frameIsMainFrame, so wrote it out here instead of using a function
      call.
      
      * inspector/InspectorAgent.cpp: Removed the unused isMainResourceLoader function.
      * inspector/InspectorAgent.h: Removed declarations of a few nonexistent or
      unused private member functions. Also removed the InjectedScriptForOriginMap
      typedef: It's mor readable to use the type directly
      
      * loader/FrameLoader.h: Removed isLoadingMainFrame. It's not better than
      calling frame().isMainFrame() directly.
      
      * page/Frame.cpp:
      (WebCore::Frame::Frame): Initialize m_mainFrame and call selfOnlyRef, keeping
      the MainFrame alive as long as any of its subframes is alive.
      (WebCore::Frame::~Frame): Call selfOnlyDeref.
      (WebCore::Frame::createView): Use isMainFrame.
      (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
      
      * page/Frame.h: Added Frame::mainFrame, Frame::isMainFrame, and Frame::m_mainFrame.
      
      * page/FrameView.h: Removed the isMainFrameView function. It's not better than
      calling frame().isMainFrame() directly.
      
      * page/MainFrame.cpp:
      (WebCore::MainFrame::MainFrame): Initialize m_selfOnlyRefCount to 0.
      (WebCore::MainFrame::selfOnlyRef): Added.
      (WebCore::MainFrame::selfOnlyDeref): Added.
      (WebCore::MainFrame::dropChildren): Added. Called when the self-only reference
      count reaches 0 to avoid a reference cycle with subframes.
      
      * page/MainFrame.h: Added new data members as mentioned above. Also, the
      definition of the Frame::isMainFrame inline function goes here, since it can't
      compile without the MainFrame class definition. This means that callers of
      isMainFrame need to include MainFrame.h, which seems reasonable and is easy
      to do.
      
      * page/Page.cpp:
      * page/Page.h: Added assertion to Page::mainFrame since it returns a reference.
      Removed Page::frameIsMainFrame since it's not better than calling isMainFrame
      on the frame.
      
      * dom/Document.cpp:
      (WebCore::Document::setVisualUpdatesAllowed):
      (WebCore::Document::didBecomeCurrentDocumentInFrame):
      (WebCore::Document::updateViewportArguments):
      (WebCore::Document::setInPageCache):
      (WebCore::Document::ensurePlugInsInjectedScript):
      * history/CachedFrame.cpp:
      (WebCore::CachedFrame::CachedFrame):
      * history/CachedPage.cpp:
      (WebCore::CachedPage::restore):
      * html/HTMLPlugInImageElement.cpp:
      (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
      * html/ImageDocument.cpp:
      (WebCore::ImageDocument::shouldShrinkToFit):
      * inspector/InspectorController.cpp:
      (WebCore::InspectorController::didClearWindowObjectInWorld):
      * inspector/InspectorInstrumentation.cpp:
      (WebCore::InspectorInstrumentation::didCommitLoadImpl):
      * inspector/InspectorPageAgent.cpp:
      (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
      (WebCore::InspectorPageAgent::frameNavigated):
      * loader/DocumentLoader.cpp:
      (WebCore::DocumentLoader::willSendRequest):
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::transitionToCommitted):
      (WebCore::FrameLoader::prepareForCachedPageRestore):
      (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
      (WebCore::FrameLoader::didLayout):
      (WebCore::FrameLoader::checkLoadComplete):
      (WebCore::FrameLoader::addExtraFieldsToRequest):
      (WebCore::FrameLoader::loadResourceSynchronously):
      (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
      (WebCore::FrameLoader::dispatchDidCommitLoad):
      (WebCore::FrameLoader::loadProgressingStatusChanged):
      * loader/HistoryController.cpp:
      (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
      (WebCore::HistoryController::restoreScrollPositionAndViewState):
      (WebCore::HistoryController::updateForCommit):
      (WebCore::HistoryController::updateForSameDocumentNavigation):
      (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
      (WebCore::HistoryController::pushState):
      * loader/icon/IconController.cpp:
      (WebCore::IconController::startLoader):
      * page/AutoscrollController.cpp:
      (WebCore::AutoscrollController::stopAutoscrollTimer):
      * page/ContextMenuController.cpp:
      (WebCore::ContextMenuController::populate):
      * page/DOMWindow.cpp:
      (WebCore::allowsBeforeUnloadListeners):
      (WebCore::DOMWindow::focus):
      (WebCore::DOMWindow::blur):
      (WebCore::DOMWindow::close):
      (WebCore::DOMWindow::allowedToChangeWindowGeometry):
      * page/EventHandler.cpp:
      (WebCore::EventHandler::hitTestResultAtPoint):
      (WebCore::EventHandler::selectCursor):
      (WebCore::EventHandler::handleMousePressEvent):
      (WebCore::EventHandler::keyEvent):
      * page/FrameTree.cpp:
      (WebCore::FrameTree::find):
      (WebCore::FrameTree::traverseNextWithWrap):
      * page/FrameView.cpp:
      (WebCore::FrameView::FrameView):
      (WebCore::FrameView::setFrameRect):
      (WebCore::FrameView::createScrollbar):
      (WebCore::FrameView::applyOverflowToViewport):
      (WebCore::FrameView::setHeaderHeight):
      (WebCore::FrameView::setFooterHeight):
      (WebCore::FrameView::minimumScrollPosition):
      (WebCore::FrameView::maximumScrollPosition):
      (WebCore::FrameView::shouldUpdateFixedElementsAfterScrolling):
      (WebCore::FrameView::beginDeferredRepaints):
      (WebCore::FrameView::endDeferredRepaints):
      (WebCore::FrameView::performPostLayoutTasks):
      (WebCore::FrameView::sendResizeEventIfNeeded):
      (WebCore::FrameView::pagination):
      (WebCore::FrameView::visibleContentScaleFactor):
      (WebCore::FrameView::setVisibleScrollerThumbRect):
      (WebCore::FrameView::scrollbarStyleChanged):
      (WebCore::FrameView::paintScrollCorner):
      (WebCore::FrameView::paintScrollbar):
      (WebCore::FrameView::paintOverhangAreas):
      * page/scrolling/ScrollingCoordinator.cpp:
      (WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::RenderLayerBacking):
      Use the new functions where possible instead of Page::frameIsMainFrame,
      Page::mainFrame, FrameLoader::isLoadingMainFrame, and FrameView::isMainFrameView.
      
      Source/WebKit/blackberry:
      
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
      Call isMainFrame.
      
      Source/WebKit/efl:
      
      * WebCoreSupport/FrameLoaderClientEfl.cpp:
      (WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):
      (WebCore::FrameLoaderClientEfl::assignIdentifierToInitialRequest):
      (WebCore::FrameLoaderClientEfl::updateGlobalHistory):
      Call isMainFrame.
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/FrameLoaderClientGtk.cpp:
      (WebKit::FrameLoaderClient::assignIdentifierToInitialRequest):
      Call isMainFrame.
      
      Source/WebKit/mac:
      
      * WebCoreSupport/WebFrameLoaderClient.mm:
      (WebFrameLoaderClient::canHandleRequest):
      (WebFrameLoaderClient::transitionToCommittedForNewPage):
      * WebView/WebFrameView.mm:
      (-[WebFrameView _install]):
      Call isMainFrame.
      
      Source/WebKit2:
      
      * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
      (WebKit::TiledCoreAnimationDrawingArea::shouldUseTiledBackingForFrameView):
      Call isMainFrame.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@156607 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0e83ab12