Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods...
authorfsamuel@chromium.org <fsamuel@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Oct 2011 21:36:30 +0000 (21:36 +0000)
committerfsamuel@chromium.org <fsamuel@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Oct 2011 21:36:30 +0000 (21:36 +0000)
https://bugs.webkit.org/show_bug.cgi?id=69009

Reviewed by Simon Fraser.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

Upcoming patches may make use of absoluteBoundingBoxRect on a const RenderObject, so this needed to be fixed.
Making useTransforms default to true instead of false and replacing instances of absoluteBoundingBoxRect() to
absoluteBoundingBoxRectIgnoringTransforms() partially addreses // FIXME: useTransforms should go away eventually.

* WebCore.exp.in:
* dom/Element.cpp:
(WebCore::Element::screenRect):
* dom/Node.cpp:
(WebCore::Node::getRect):
(WebCore::Node::renderRect):
* html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::setPositionFromPoint):
* html/shadow/TextControlInnerElements.cpp:
(WebCore::InputFieldSpeechButtonElement::startSpeechInput):
* inspector/DOMNodeHighlighter.cpp:
* plugins/IFrameShimSupport.cpp:
(WebCore::getPluginOcclusions):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::absoluteRects):
(WebCore::RenderBlock::absoluteQuads):
* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::absoluteRects):
(WebCore::RenderBox::absoluteQuads):
* rendering/RenderBox.h:
* rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::paintObject):
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::flattenFrame):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::absoluteRects):
(WebCore::RenderInline::culledInlineAbsoluteRects):
(WebCore::RenderInline::absoluteQuads):
(WebCore::RenderInline::culledInlineAbsoluteQuads):
* rendering/RenderInline.h:
* rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::showPopup):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::absoluteBoundingBoxRect):
(WebCore::RenderObject::addAbsoluteRectForLayer):
(WebCore::RenderObject::paintingRootRect):
* rendering/RenderObject.h:
(WebCore::RenderObject::absoluteRects):
(WebCore::RenderObject::absoluteBoundingBoxRectIgnoringTransforms):
(WebCore::RenderObject::absoluteQuads):
* rendering/RenderText.cpp:
(WebCore::RenderText::absoluteRects):
(WebCore::RenderText::absoluteQuads):
* rendering/RenderText.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::showPopup):
* rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
(WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
(WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
* rendering/RenderView.cpp:
(WebCore::RenderView::absoluteRects):
(WebCore::RenderView::absoluteQuads):
* rendering/RenderView.h:
* rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::absoluteRects):
* rendering/svg/RenderSVGBlock.h:
* rendering/svg/RenderSVGHiddenContainer.cpp:
(WebCore::RenderSVGHiddenContainer::absoluteQuads):
* rendering/svg/RenderSVGHiddenContainer.h:
* rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::absoluteQuads):
* rendering/svg/RenderSVGInline.h:
* rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::absoluteRects):
(WebCore::RenderSVGModelObject::absoluteQuads):
* rendering/svg/RenderSVGModelObject.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::absoluteQuads):
* rendering/svg/RenderSVGText.h:
* testing/Internals.cpp:
(WebCore::Internals::boundingBox):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebHitTestResultPrivate::QWebHitTestResultPrivate):

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

43 files changed:
ChangeLog
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/dom/Element.cpp
Source/WebCore/dom/Node.cpp
Source/WebCore/html/shadow/SliderThumbElement.cpp
Source/WebCore/html/shadow/TextControlInnerElements.cpp
Source/WebCore/inspector/DOMNodeHighlighter.cpp
Source/WebCore/plugins/IFrameShimSupport.cpp
Source/WebCore/rendering/RenderBlock.cpp
Source/WebCore/rendering/RenderBlock.h
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderBox.h
Source/WebCore/rendering/RenderFileUploadControl.cpp
Source/WebCore/rendering/RenderIFrame.cpp
Source/WebCore/rendering/RenderInline.cpp
Source/WebCore/rendering/RenderInline.h
Source/WebCore/rendering/RenderMenuList.cpp
Source/WebCore/rendering/RenderObject.cpp
Source/WebCore/rendering/RenderObject.h
Source/WebCore/rendering/RenderText.cpp
Source/WebCore/rendering/RenderText.h
Source/WebCore/rendering/RenderTextControlSingleLine.cpp
Source/WebCore/rendering/RenderThemeSafari.cpp
Source/WebCore/rendering/RenderView.cpp
Source/WebCore/rendering/RenderView.h
Source/WebCore/rendering/svg/RenderSVGBlock.cpp
Source/WebCore/rendering/svg/RenderSVGBlock.h
Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp
Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h
Source/WebCore/rendering/svg/RenderSVGInline.cpp
Source/WebCore/rendering/svg/RenderSVGInline.h
Source/WebCore/rendering/svg/RenderSVGModelObject.cpp
Source/WebCore/rendering/svg/RenderSVGModelObject.h
Source/WebCore/rendering/svg/RenderSVGText.cpp
Source/WebCore/rendering/svg/RenderSVGText.h
Source/WebCore/testing/Internals.cpp
Source/WebKit/qt/Api/qwebframe.cpp
Source/WebKit/qt/ChangeLog
Source/WebKit2/ChangeLog
Source/WebKit2/win/WebKit2.def
Source/WebKit2/win/WebKit2CFLite.def
Source/autotools/symbols.filter

index 38523805b94496b6c606a7d3bae3ed2e190d4ee6..fecfa950b9b44980086be23ae55c739cd772303e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2011-10-06  Fady Samuel  <fsamuel@chromium.org>
+
+        Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
+        https://bugs.webkit.org/show_bug.cgi?id=69009
+
+        Reviewed by Simon Fraser.
+
+        * Source/autotools/symbols.filter:
+
 2011-10-06  Simon Hausmann  <simon.hausmann@nokia.com>
 
         [Qt][Wk2] Fix build with Qt 5 when QtScript is built as standalone module
index c44d0b9c6a7045b5db7a8ffa67eb0a6ea2f453f2..1d6bc4420b47ff11e86f08ea0aee9101bf718fe3 100644 (file)
@@ -1,3 +1,88 @@
+2011-10-06  Fady Samuel  <fsamuel@chromium.org>
+
+        Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
+        https://bugs.webkit.org/show_bug.cgi?id=69009
+
+        Reviewed by Simon Fraser.
+
+        Upcoming patches may make use of absoluteBoundingBoxRect on a const RenderObject, so this needed to be fixed.
+        Making useTransforms default to true instead of false and replacing instances of absoluteBoundingBoxRect() to
+        absoluteBoundingBoxRectIgnoringTransforms() partially addreses // FIXME: useTransforms should go away eventually.
+
+        * WebCore.exp.in:
+        * dom/Element.cpp:
+        (WebCore::Element::screenRect):
+        * dom/Node.cpp:
+        (WebCore::Node::getRect):
+        (WebCore::Node::renderRect):
+        * html/shadow/SliderThumbElement.cpp:
+        (WebCore::SliderThumbElement::setPositionFromPoint):
+        * html/shadow/TextControlInnerElements.cpp:
+        (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
+        * inspector/DOMNodeHighlighter.cpp:
+        * plugins/IFrameShimSupport.cpp:
+        (WebCore::getPluginOcclusions):
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::absoluteRects):
+        (WebCore::RenderBlock::absoluteQuads):
+        * rendering/RenderBlock.h:
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::absoluteRects):
+        (WebCore::RenderBox::absoluteQuads):
+        * rendering/RenderBox.h:
+        * rendering/RenderFileUploadControl.cpp:
+        (WebCore::RenderFileUploadControl::paintObject):
+        * rendering/RenderIFrame.cpp:
+        (WebCore::RenderIFrame::flattenFrame):
+        * rendering/RenderInline.cpp:
+        (WebCore::RenderInline::absoluteRects):
+        (WebCore::RenderInline::culledInlineAbsoluteRects):
+        (WebCore::RenderInline::absoluteQuads):
+        (WebCore::RenderInline::culledInlineAbsoluteQuads):
+        * rendering/RenderInline.h:
+        * rendering/RenderMenuList.cpp:
+        (WebCore::RenderMenuList::showPopup):
+        * rendering/RenderObject.cpp:
+        (WebCore::RenderObject::absoluteBoundingBoxRect):
+        (WebCore::RenderObject::addAbsoluteRectForLayer):
+        (WebCore::RenderObject::paintingRootRect):
+        * rendering/RenderObject.h:
+        (WebCore::RenderObject::absoluteRects):
+        (WebCore::RenderObject::absoluteBoundingBoxRectIgnoringTransforms):
+        (WebCore::RenderObject::absoluteQuads):
+        * rendering/RenderText.cpp:
+        (WebCore::RenderText::absoluteRects):
+        (WebCore::RenderText::absoluteQuads):
+        * rendering/RenderText.h:
+        * rendering/RenderTextControlSingleLine.cpp:
+        (WebCore::RenderTextControlSingleLine::showPopup):
+        * rendering/RenderThemeSafari.cpp:
+        (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
+        (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
+        (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::absoluteRects):
+        (WebCore::RenderView::absoluteQuads):
+        * rendering/RenderView.h:
+        * rendering/svg/RenderSVGBlock.cpp:
+        (WebCore::RenderSVGBlock::absoluteRects):
+        * rendering/svg/RenderSVGBlock.h:
+        * rendering/svg/RenderSVGHiddenContainer.cpp:
+        (WebCore::RenderSVGHiddenContainer::absoluteQuads):
+        * rendering/svg/RenderSVGHiddenContainer.h:
+        * rendering/svg/RenderSVGInline.cpp:
+        (WebCore::RenderSVGInline::absoluteQuads):
+        * rendering/svg/RenderSVGInline.h:
+        * rendering/svg/RenderSVGModelObject.cpp:
+        (WebCore::RenderSVGModelObject::absoluteRects):
+        (WebCore::RenderSVGModelObject::absoluteQuads):
+        * rendering/svg/RenderSVGModelObject.h:
+        * rendering/svg/RenderSVGText.cpp:
+        (WebCore::RenderSVGText::absoluteQuads):
+        * rendering/svg/RenderSVGText.h:
+        * testing/Internals.cpp:
+        (WebCore::Internals::boundingBox):
+
 2011-10-06  Simon Hausmann  <simon.hausmann@nokia.com>
 
         [Qt][Wk2] Fix build with Qt 5 when QtScript is built as standalone module
index 3efc42c0f34c449745b71014ae72783327c2fd06..1df4d7ff129500bc7f676c0cb5148ec972a08ffa 100644 (file)
@@ -281,7 +281,6 @@ __ZN7WebCore12PrintContext9spoolRectERNS_15GraphicsContextERKNS_7IntRectE
 __ZN7WebCore12PrintContextC1EPNS_5FrameE
 __ZN7WebCore12PrintContextD1Ev
 __ZN7WebCore12RenderObject16repaintRectangleERKNS_7IntRectEb
-__ZN7WebCore12RenderObject23absoluteBoundingBoxRectEb
 __ZN7WebCore12RenderWidget28resumeWidgetHierarchyUpdatesEv
 __ZN7WebCore12RenderWidget29suspendWidgetHierarchyUpdatesEv
 __ZN7WebCore12SharedBuffer10wrapNSDataEP6NSData
@@ -1139,6 +1138,7 @@ __ZNK7WebCore11ScriptValue9getStringEPN3JSC9ExecStateERN3WTF6StringE
 __ZNK7WebCore12IconDatabase12databasePathEv
 __ZNK7WebCore12IconDatabase24shouldStopThreadActivityEv
 __ZNK7WebCore12IconDatabase9isEnabledEv
+__ZNK7WebCore12RenderObject23absoluteBoundingBoxRectEb
 __ZNK7WebCore12RenderObject14enclosingLayerEv
 __ZNK7WebCore12RenderObject15localToAbsoluteERKNS_10FloatPointEbb
 __ZNK7WebCore12RenderObject4viewEv
index b16623baac93101b13c234d4334567be2e67e60e..e8033e352d37af3b7b00c227ee732cb4d0bdf42e 100644 (file)
@@ -573,7 +573,8 @@ LayoutRect Element::screenRect() const
 {
     if (!renderer())
         return LayoutRect();
-    return renderer()->view()->frameView()->contentsToScreen(renderer()->absoluteBoundingBoxRect());
+    // FIXME: this should probably respect transforms
+    return renderer()->view()->frameView()->contentsToScreen(renderer()->absoluteBoundingBoxRectIgnoringTransforms());
 }
 
 static inline bool shouldIgnoreAttributeCase(const Element* e)
index 8959f0b6f760efabbac7819fcefb735276a4329b..471299021c261ae688022b1ad72eaeec71abb61f 100644 (file)
@@ -818,7 +818,7 @@ RenderBoxModelObject* Node::renderBoxModelObject() const
 LayoutRect Node::getRect() const
 {
     if (renderer())
-        return renderer()->absoluteBoundingBoxRect(true);
+        return renderer()->absoluteBoundingBoxRect();
     return LayoutRect();
 }
     
@@ -830,7 +830,7 @@ LayoutRect Node::renderRect(bool* isReplaced)
     while (renderer && !renderer->isBody() && !renderer->isRoot()) {
         if (renderer->isRenderBlock() || renderer->isInlineBlockOrInlineTable() || renderer->isReplaced()) {
             *isReplaced = renderer->isReplaced();
-            return renderer->absoluteBoundingBoxRect(true);
+            return renderer->absoluteBoundingBoxRect();
         }
         renderer = renderer->parent();
     }
index 5d178af079ab4cfbd9d0f72043faf3d87c48bcb8..926b393d3dd1705f5fe31b76ff38085a838d289d 100644 (file)
@@ -216,7 +216,8 @@ void SliderThumbElement::setPositionFromPoint(const LayoutPoint& point)
     // We need to calculate currentPosition from absolute points becaue the
     // renderer for this node is usually on a layer and renderBox()->x() and
     // y() are unusable.
-    LayoutPoint absoluteThumbOrigin = renderBox()->absoluteBoundingBoxRect().location();
+    // FIXME: This should probably respect transforms.
+    LayoutPoint absoluteThumbOrigin = renderBox()->absoluteBoundingBoxRectIgnoringTransforms().location();
     LayoutPoint absoluteSliderContentOrigin = roundedLayoutPoint(input->renderer()->localToAbsolute());
     if (isVertical) {
         trackSize = input->renderBox()->contentHeight() - renderBox()->height();
index bf185cf7b0f096b93c8883206ba3374d049345d5..476218135bad70b8530e3fd77a0980d43965e52f 100644 (file)
@@ -535,7 +535,8 @@ void InputFieldSpeechButtonElement::startSpeechInput()
     RefPtr<HTMLInputElement> input = static_cast<HTMLInputElement*>(shadowAncestorNode());
     AtomicString language = input->computeInheritedLanguage();
     String grammar = input->getAttribute(webkitgrammarAttr);
-    IntRect rect = renderer()->absoluteBoundingBoxRect();
+    // FIXME: this should probably respect transforms
+    IntRect rect = renderer()->absoluteBoundingBoxRectIgnoringTransforms();
     if (speechInput()->startRecognition(m_listenerId, rect, language, grammar, document()->securityOrigin()))
         setState(Recording);
 }
index e689b5250b6a868ea5a550d6daaba2945a78f69d..f8bfb60f9aded20b2e10680a08c964284da84f58 100644 (file)
@@ -361,7 +361,7 @@ void drawNodeHighlight(GraphicsContext& context, HighlightData* highlightData)
         return;
 
     LayoutSize mainFrameOffset = frameToMainFrameOffset(containingFrame);
-    LayoutRect boundingBox = renderer->absoluteBoundingBoxRect(true);
+    LayoutRect boundingBox = renderer->absoluteBoundingBoxRect();
 
     boundingBox.move(mainFrameOffset);
 
index c0aa1e4136c4942f29af884f3216885c7ac55b79..8265765110ae5468d0305f3efb046d25add7feff 100644 (file)
@@ -152,7 +152,7 @@ void getPluginOcclusions(Element* element, Widget* parentWidget, const IntRect&
         RenderObject* iframeRenderer = element->renderer();
 
         if (element->hasTagName(HTMLNames::iframeTag)
-            && iframeRenderer->absoluteBoundingBoxRect().intersects(frameRect)
+            && iframeRenderer->absoluteBoundingBoxRectIgnoringTransforms().intersects(frameRect)
             && (!iframeRenderer->style() || iframeRenderer->style()->visibility() == VISIBLE)) {
             getObjectStack(iframeRenderer, &iframeZstack);
             if (iframeIsAbovePlugin(iframeZstack, pluginZstack)) {
index 872df470e823d4b5ade7aa1dbe291258f61bd870..98312f7f29c0284d203dd4f2eab561c554d0f583 100644 (file)
@@ -5879,7 +5879,7 @@ void RenderBlock::setPageLogicalOffset(int logicalOffset)
     m_rareData->m_pageLogicalOffset = logicalOffset;
 }
 
-void RenderBlock::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderBlock::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     // For blocks inside inlines, we go ahead and include margins so that we run right up to the
     // inline boxes above and below us (thus getting merged with them to form a single irregular
@@ -5895,7 +5895,7 @@ void RenderBlock::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& ac
         rects.append(LayoutRect(accumulatedOffset, size()));
 }
 
-void RenderBlock::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderBlock::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     // For blocks inside inlines, we go ahead and include margins so that we run right up to the
     // inline boxes above and below us (thus getting merged with them to form a single irregular
index f73309ad06dbe8b8290c07e8f472777a52350d54..c956d2aa399b3eb44cc619ca044bd62e5a934e72 100644 (file)
@@ -741,8 +741,8 @@ private:
     LayoutUnit logicalLeftSelectionOffset(RenderBlock* rootBlock, LayoutUnit position);
     LayoutUnit logicalRightSelectionOffset(RenderBlock* rootBlock, LayoutUnit position);
     
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
     LayoutUnit desiredColumnWidth() const;
     unsigned desiredColumnCount() const;
index 5c36e5e5a2e91867b5c4754a60081131c49303a4..9084d576d117c1643eb5f46ea4669bf6176c67bb 100644 (file)
@@ -516,12 +516,12 @@ void RenderBox::setScrollTop(LayoutUnit newTop)
         layer()->scrollToYOffset(newTop, RenderLayer::ScrollOffsetClamped);
 }
 
-void RenderBox::absoluteRects(Vector<IntRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderBox::absoluteRects(Vector<IntRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     rects.append(LayoutRect(accumulatedOffset, size()));
 }
 
-void RenderBox::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderBox::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     quads.append(localToAbsoluteQuad(FloatRect(0, 0, width(), height()), false, wasFixed));
 }
index 28c768b94fa10b006fa8493dc27e5f95948137d3..94cc4ec79ef97e1ec6164b8a4b8b651075e6e08b 100644 (file)
@@ -234,8 +234,8 @@ public:
     virtual LayoutUnit collapsedMarginBefore() const { return marginBefore(); }
     virtual LayoutUnit collapsedMarginAfter() const { return marginAfter(); }
 
-    virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedOffset);
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteRects(Vector<IntRect>&, const LayoutPoint& accumulatedOffset) const;
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
     
     IntRect reflectionBox() const;
     int reflectionOffset() const;
index f94491f31c5a8e5fd20224501954e4b46ef08466..85b94d6c70936e8712b3982ce3008c9d3f835f2c 100644 (file)
@@ -132,7 +132,8 @@ void RenderFileUploadControl::paintObject(PaintInfo& paintInfo, const LayoutPoin
             textX = contentLeft + contentWidth() - buttonAndIconWidth - font.width(textRun);
         // We want to match the button's baseline
         RenderButton* buttonRenderer = toRenderButton(button->renderer());
-        LayoutUnit textY = buttonRenderer->absoluteBoundingBoxRect().y()
+        // FIXME: Make this work with transforms.
+        LayoutUnit textY = buttonRenderer->absoluteBoundingBoxRectIgnoringTransforms().y()
             + buttonRenderer->baselinePosition(AlphabeticBaseline, true, HorizontalLine, PositionOnContainingLine);
 
         paintInfo.context->setFillColor(style()->visitedDependentColor(CSSPropertyColor), style()->colorSpace());
index 11297b5db7a9f7a2d09e465943c487e186f15ad0..ce0f43bd0304151a4083b0a020a9e2ed961b13da 100644 (file)
@@ -105,7 +105,7 @@ bool RenderIFrame::flattenFrame()
         return false;
 
     // Do not flatten offscreen inner frames during frame flattening, as flattening might make them visible.
-    IntRect boundingRect = absoluteBoundingBoxRect();
+    IntRect boundingRect = absoluteBoundingBoxRectIgnoringTransforms();
     return boundingRect.maxX() > 0 && boundingRect.maxY() > 0;
 }
 
index 6ca9d3fb1e92d02cbc90ba4dc33ba19bd84b2804..3f09633b008d956fa1f7e2182e30c4dd205ac3a3 100644 (file)
@@ -466,7 +466,7 @@ void RenderInline::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
     m_lineBoxes.paint(this, paintInfo, paintOffset);
 }
 
-void RenderInline::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderInline::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     if (!alwaysCreateLineBoxes())
         culledInlineAbsoluteRects(this, rects, toLayoutSize(accumulatedOffset));
@@ -485,7 +485,7 @@ void RenderInline::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& a
     }
 }
 
-void RenderInline::culledInlineAbsoluteRects(const RenderInline* container, Vector<LayoutRect>& rects, const LayoutSize& offset)
+void RenderInline::culledInlineAbsoluteRects(const RenderInline* container, Vector<LayoutRect>& rects, const LayoutSize& offset) const
 {
     if (!culledInlineFirstLineBox()) {
         rects.append(IntRect(offset.width(), offset.height(), 0, 0));
@@ -553,7 +553,7 @@ void RenderInline::culledInlineAbsoluteRects(const RenderInline* container, Vect
     }
 }
 
-void RenderInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     if (!alwaysCreateLineBoxes())
         culledInlineAbsoluteQuads(this, quads);
@@ -569,7 +569,7 @@ void RenderInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
         continuation()->absoluteQuads(quads, wasFixed);
 }
 
-void RenderInline::culledInlineAbsoluteQuads(const RenderInline* container, Vector<FloatQuad>& quads)
+void RenderInline::culledInlineAbsoluteQuads(const RenderInline* container, Vector<FloatQuad>& quads) const
 {
     if (!culledInlineFirstLineBox()) {
         quads.append(localToAbsoluteQuad(FloatRect()));
index afd4aad448b0e81819329ea0aa686e5b09ceb667..fe95af1fe18754265ba97909f7edb6eb3e73ae69 100644 (file)
@@ -46,8 +46,8 @@ public:
     virtual LayoutUnit marginStart() const;
     virtual LayoutUnit marginEnd() const;
 
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
     virtual LayoutSize offsetFromContainer(RenderObject*, const LayoutPoint&) const;
 
@@ -102,8 +102,8 @@ private:
     LayoutRect culledInlineVisualOverflowBoundingBox() const;
     InlineBox* culledInlineFirstLineBox() const;
     InlineBox* culledInlineLastLineBox() const;
-    void culledInlineAbsoluteRects(const RenderInline* container, Vector<LayoutRect>&, const LayoutSize&);
-    void culledInlineAbsoluteQuads(const RenderInline* container, Vector<FloatQuad>&);
+    void culledInlineAbsoluteRects(const RenderInline* container, Vector<LayoutRect>&, const LayoutSize&) const;
+    void culledInlineAbsoluteQuads(const RenderInline* container, Vector<FloatQuad>&) const;
 
     void addChildToContinuation(RenderObject* newChild, RenderObject* beforeChild);
     virtual void addChildIgnoringContinuation(RenderObject* newChild, RenderObject* beforeChild = 0);
index 897aa88eaf1ea2a46ed136f50f7c626239139e01..9ba3b5e7a1972cc84fc35464dc3f5dc21da754a1 100644 (file)
@@ -302,7 +302,7 @@ void RenderMenuList::showPopup()
     // Compute the top left taking transforms into account, but use
     // the actual width of the element to size the popup.
     FloatPoint absTopLeft = localToAbsolute(FloatPoint(), false, true);
-    LayoutRect absBounds = absoluteBoundingBoxRect();
+    LayoutRect absBounds = absoluteBoundingBoxRectIgnoringTransforms();
     absBounds.setLocation(roundedIntPoint(absTopLeft));
     m_popup->show(absBounds, document()->view(),
         select->optionToListIndex(select->selectedIndex()));
index 730be1dcd1e34611bcdf23e671d7a3d3fc02300b..94c898d8305887f29d6931ef8604637446ba213f 100644 (file)
@@ -1165,7 +1165,7 @@ void RenderObject::paintOutline(GraphicsContext* graphicsContext, const LayoutRe
         graphicsContext->endTransparencyLayer();
 }
 
-IntRect RenderObject::absoluteBoundingBoxRect(bool useTransforms)
+IntRect RenderObject::absoluteBoundingBoxRect(bool useTransforms) const
 {
     if (useTransforms) {
         Vector<FloatQuad> quads;
@@ -1215,14 +1215,14 @@ void RenderObject::absoluteFocusRingQuads(Vector<FloatQuad>& quads)
 void RenderObject::addAbsoluteRectForLayer(IntRect& result)
 {
     if (hasLayer())
-        result.unite(absoluteBoundingBoxRect());
+        result.unite(absoluteBoundingBoxRectIgnoringTransforms());
     for (RenderObject* current = firstChild(); current; current = current->nextSibling())
         current->addAbsoluteRectForLayer(result);
 }
 
 LayoutRect RenderObject::paintingRootRect(LayoutRect& topLevelRect)
 {
-    LayoutRect result = absoluteBoundingBoxRect();
+    LayoutRect result = absoluteBoundingBoxRectIgnoringTransforms();
     topLevelRect = result;
     for (RenderObject* current = firstChild(); current; current = current->nextSibling())
         current->addAbsoluteRectForLayer(result);
index 6dd4bacf728354083d93c2d50b4ac2c185516be1..0f60794319a07b8dd28f768a3c62780d75bddf46 100644 (file)
@@ -638,12 +638,14 @@ public:
     // Return the offset from an object up the container() chain. Asserts that none of the intermediate objects have transforms.
     LayoutSize offsetFromAncestorContainer(RenderObject*) const;
     
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint&) { }
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint&) const { }
+
     // FIXME: useTransforms should go away eventually
-    IntRect absoluteBoundingBoxRect(bool useTransforms = false);
+    IntRect absoluteBoundingBoxRect(bool useTransform = true) const;
+    IntRect absoluteBoundingBoxRectIgnoringTransforms() const { return absoluteBoundingBoxRect(false); }
 
     // Build an array of quads in absolute coords for line boxes
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* /*wasFixed*/ = 0) { }
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* /*wasFixed*/ = 0) const { }
 
     void absoluteFocusRingQuads(Vector<FloatQuad>&);
 
index e88861f3d04a086844d3a70d215a474de68924c9..6b6da2444e12c7326f196d64b8812588274f98c0 100644 (file)
@@ -301,7 +301,7 @@ PassRefPtr<StringImpl> RenderText::originalText() const
     return (e && e->isTextNode()) ? static_cast<Text*>(e)->dataImpl() : 0;
 }
 
-void RenderText::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderText::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     for (InlineTextBox* box = firstTextBox(); box; box = box->nextTextBox())
         rects.append(enclosingLayoutRect(FloatRect(accumulatedOffset + box->topLeft(), box->size())));
@@ -388,7 +388,7 @@ static IntRect ellipsisRectForBox(InlineTextBox* box, unsigned startPos, unsigne
     return IntRect();
 }
     
-void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed, ClippingOption option)
+void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed, ClippingOption option) const
 {
     for (InlineTextBox* box = firstTextBox(); box; box = box->nextTextBox()) {
         IntRect boundaries = box->calculateBoundaries();
@@ -405,7 +405,7 @@ void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed, Clippin
     }
 }
     
-void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     absoluteQuads(quads, wasFixed, NoClipping);
 }
index 4020d8aa37122d125d1dc4ef110709d18f951398..42e9aec96b3b32b2d19e3bc5195c13d471ca0936 100644 (file)
@@ -54,14 +54,14 @@ public:
     InlineTextBox* createInlineTextBox();
     void dirtyLineBoxes(bool fullLayout);
 
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
     void absoluteRectsForRange(Vector<IntRect>&, unsigned startOffset = 0, unsigned endOffset = UINT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0);
 
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
     void absoluteQuadsForRange(Vector<FloatQuad>&, unsigned startOffset = 0, unsigned endOffset = UINT_MAX, bool useSelectionHeight = false, bool* wasFixed = 0);
 
     enum ClippingOption { NoClipping, ClipToEllipsis };
-    void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed = 0, ClippingOption = NoClipping);
+    void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed = 0, ClippingOption = NoClipping) const;
 
     virtual VisiblePosition positionForPoint(const LayoutPoint&);
 
index 17097b1fbab3618088e0b48937c608e5c2d84cfa..ff90770f09557891075db91e29e1dfe78704afb6 100644 (file)
@@ -174,7 +174,7 @@ void RenderTextControlSingleLine::showPopup()
         m_searchPopup->saveRecentSearches(name, m_recentSearches);
     }
 
-    m_searchPopup->popupMenu()->show(absoluteBoundingBoxRect(true), document()->view(), -1);
+    m_searchPopup->popupMenu()->show(absoluteBoundingBoxRect(), document()->view(), -1);
 }
 
 void RenderTextControlSingleLine::hidePopup()
index d27021c9d19a13f959ad22f7da1b82979c0c3adc..999f2f73d531a2e48794b5576353e08644ac789d 100644 (file)
@@ -1080,7 +1080,7 @@ bool RenderThemeSafari::paintSearchFieldCancelButton(RenderObject* o, const Pain
     RenderObject* renderer = input->renderer();
     ASSERT(renderer);
 
-    IntRect searchRect = renderer->absoluteBoundingBoxRect();
+    IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
 
     paintThemePart(SafariTheme::SearchFieldCancelButtonPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
     return false;
@@ -1134,7 +1134,7 @@ bool RenderThemeSafari::paintSearchFieldResultsDecoration(RenderObject* o, const
     RenderObject* renderer = input->renderer();
     ASSERT(renderer);
 
-    IntRect searchRect = renderer->absoluteBoundingBoxRect();
+    IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
 
     paintThemePart(SafariTheme::SearchFieldResultsDecorationPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
     return false;
@@ -1157,7 +1157,7 @@ bool RenderThemeSafari::paintSearchFieldResultsButton(RenderObject* o, const Pai
     RenderObject* renderer = input->renderer();
     ASSERT(renderer);
 
-    IntRect searchRect = renderer->absoluteBoundingBoxRect();
+    IntRect searchRect = renderer->absoluteBoundingBoxRectIgnoringTransforms();
 
     paintThemePart(SafariTheme::SearchFieldResultsButtonPart, paintInfo.context->platformContext(), searchRect, controlSizeFromRect(searchRect, searchFieldSizes()), determineState(o));
     return false;
index 1fefac4f0192ea3eb05415cb3434af5b09f6a741..f421f981da267dd57d5994abc3ec1a7565d18057 100644 (file)
@@ -329,12 +329,12 @@ void RenderView::computeRectForRepaint(RenderBoxModelObject* repaintContainer, I
         rect = m_layer->transform()->mapRect(rect);
 }
 
-void RenderView::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderView::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     rects.append(LayoutRect(accumulatedOffset, m_layer->size()));
 }
 
-void RenderView::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderView::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     if (wasFixed)
         *wasFixed = false;
index bbdd4542a2be0829af7d819210cb7256664e8538..9d4e9e4307b0f9d0fd15f0c513f416c51184166f 100644 (file)
@@ -86,8 +86,8 @@ public:
 
     bool printing() const;
 
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
 #if USE(ACCELERATED_COMPOSITING)
     void setMaximalOutlineSize(int o);
index 2c815908ebf6b98906757d8bc54be6947a7179e3..7b16a4d5bfc9cb7bb65e65bb15abc8e2f6ebaea3 100644 (file)
@@ -78,7 +78,7 @@ void RenderSVGBlock::updateBoxModelInfoFromStyle()
     setHasOverflowClip(false);
 }
 
-void RenderSVGBlock::absoluteRects(Vector<LayoutRect>&, const LayoutPoint&)
+void RenderSVGBlock::absoluteRects(Vector<LayoutRect>&, const LayoutPoint&) const
 {
     // This code path should never be taken for SVG, as we're assuming useTransforms=true everywhere, absoluteQuads should be used.
     ASSERT_NOT_REACHED();
index 22c1f18e36e02310be7e7d3e4ec8123a29b5a714..58cf2620a9818d64ae27834fed8d41b716920473 100644 (file)
@@ -38,7 +38,7 @@ private:
     virtual void setStyle(PassRefPtr<RenderStyle>);
     virtual void updateBoxModelInfoFromStyle();
 
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
 
     virtual void willBeDestroyed();
     virtual void styleWillChange(StyleDifference, const RenderStyle* newStyle);
index d29d85ec93971dee18db12bd8e7805f581772f1e..895b2544900123fdbf3ea025854cb9cedbe04fd9 100644 (file)
@@ -44,7 +44,7 @@ void RenderSVGHiddenContainer::paint(PaintInfo&, const LayoutPoint&)
     // This subtree does not paint.
 }
 
-void RenderSVGHiddenContainer::absoluteQuads(Vector<FloatQuad>&, bool*)
+void RenderSVGHiddenContainer::absoluteQuads(Vector<FloatQuad>&, bool*) const
 {
     // This subtree does not take up space or paint
 }
index efff92151d2c361a6d0c8d9777b31f634464d10c..f26c5fc61a37f8207d4d649be6809d52a2f8825f 100644 (file)
@@ -44,7 +44,7 @@ private:
     virtual void paint(PaintInfo&, const LayoutPoint&);
     
     virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject*) const { return LayoutRect(); }
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
     virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction);
 };
index f4a29e284d4f3ba579bb3d8bc578f607158bcdb6..c22244fc6e10e9bfe0aa13d704df7e28763127c2 100644 (file)
@@ -82,9 +82,9 @@ void RenderSVGInline::mapLocalToContainer(RenderBoxModelObject* repaintContainer
     SVGRenderSupport::mapLocalToContainer(this, repaintContainer, transformState, wasFixed);
 }
 
-void RenderSVGInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderSVGInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
-    RenderObject* object = RenderSVGText::locateRenderSVGTextAncestor(this);
+    const RenderObject* object = RenderSVGText::locateRenderSVGTextAncestor(this);
     if (!object)
         return;
 
index 0a60837f4775969037e84975bcf2008066bb82f7..d2fa1cc524024b61aa7d4aa77a4e8dd8e5608440 100644 (file)
@@ -48,7 +48,7 @@ public:
     virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
     virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
     virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
 private:
     virtual InlineFlowBox* createInlineFlowBox();
index c2e3fdff805d7788d5efe7cdbbfc15a7fe3c66e9..7086d4ce91e6645c1e1c70d83bc4f49c82fccab6 100644 (file)
@@ -70,14 +70,14 @@ LayoutRect RenderSVGModelObject::outlineBoundsForRepaint(RenderBoxModelObject* r
     return containerRelativeQuad.enclosingBoundingBox();
 }
 
-void RenderSVGModelObject::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset)
+void RenderSVGModelObject::absoluteRects(Vector<LayoutRect>& rects, const LayoutPoint& accumulatedOffset) const
 {
     LayoutRect rect = enclosingLayoutRect(strokeBoundingBox());
     rect.moveBy(accumulatedOffset);
     rects.append(rect);
 }
 
-void RenderSVGModelObject::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderSVGModelObject::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     quads.append(localToAbsoluteQuad(strokeBoundingBox(), false, wasFixed));
 }
index c28d3c6607d554ea20c2ba5c5aeeedcc2de73b79..7041d449ef632c4fc3009260f92c0003b010d7e1 100644 (file)
@@ -55,8 +55,8 @@ public:
     virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
     virtual LayoutRect outlineBoundsForRepaint(RenderBoxModelObject* repaintContainer, LayoutPoint*) const;
 
-    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset) const;
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
     virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
     virtual void styleWillChange(StyleDifference, const RenderStyle* newStyle);
index 57b4f574ea00205d334a0067d8ff66e35455ec28..1453cb16a602a028fab834a556c28f5f1407b15c 100644 (file)
@@ -225,7 +225,7 @@ VisiblePosition RenderSVGText::positionForPoint(const LayoutPoint& pointInConten
     return closestBox->renderer()->positionForPoint(LayoutPoint(pointInContents.x(), closestBox->y()));
 }
 
-void RenderSVGText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed)
+void RenderSVGText::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const
 {
     quads.append(localToAbsoluteQuad(strokeBoundingBox(), false, wasFixed));
 }
index b3e0f43f8f649c7fa67e0b8420367af0d6e92d3e..a0ada4cb4efe980cabe27a9fa504baa390189dc8 100644 (file)
@@ -60,7 +60,7 @@ private:
     virtual bool requiresLayer() const { return false; }
     virtual void layout();
 
-    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
+    virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed) const;
 
     virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
     virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
index df8ac2eabd212451c0c747e0e6e4f373dc6b11c3..c907ae82250808221604259836fdd8fad704b5ce 100644 (file)
@@ -202,7 +202,7 @@ PassRefPtr<ClientRect> Internals::boundingBox(Element* element, ExceptionCode& e
     RenderObject* renderer = element->renderer();
     if (!renderer)
         return ClientRect::create();
-    return ClientRect::create(renderer->absoluteBoundingBoxRect());
+    return ClientRect::create(renderer->absoluteBoundingBoxRectIgnoringTransforms());
 }
 
 unsigned Internals::markerCountForNode(Node* node, ExceptionCode& ec)
index 5f12e101439f5fbf0d6cdcb1034117061b5927f4..07f2df987d2cff56dfc8d87d7a5cabb5c1966e1a 100644 (file)
@@ -1751,7 +1751,7 @@ QWebHitTestResultPrivate::QWebHitTestResultPrivate(const WebCore::HitTestResult
     imageUrl = hitTest.absoluteImageURL();
     innerNode = hitTest.innerNode();
     innerNonSharedNode = hitTest.innerNonSharedNode();
-    boundingRect = innerNonSharedNode ? innerNonSharedNode->renderer()->absoluteBoundingBoxRect(true) : IntRect();
+    boundingRect = innerNonSharedNode ? innerNonSharedNode->renderer()->absoluteBoundingBoxRect() : IntRect();
     WebCore::Image *img = hitTest.image();
     if (img) {
         QPixmap *pix = img->nativeImageForCurrentFrame();
index 0bb3a214990bb055d3032447f449e1cca228305e..8a8f9b22460f8d78543ede1df04b9c7689ef738a 100644 (file)
@@ -1,3 +1,13 @@
+2011-10-06  Fady Samuel  <fsamuel@chromium.org>
+
+        Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
+        https://bugs.webkit.org/show_bug.cgi?id=69009
+
+        Reviewed by Simon Fraser.
+
+        * Api/qwebframe.cpp:
+        (QWebHitTestResultPrivate::QWebHitTestResultPrivate):
+
 2011-10-06  Simon Hausmann  <simon.hausmann@nokia.com>
 
         [Qt][Wk2] Fix build with Qt 5 when QtScript is built as standalone module
index 771f0fc34045441d9c0d3ff647f4f0ee77376f2e..39232d713288d726b5d0d990f39436dce72c5fb4 100644 (file)
@@ -1,3 +1,13 @@
+2011-10-06  Fady Samuel  <fsamuel@chromium.org>
+
+        Code clean-up: Make RenderObject::absoluteBoundingBoxRect and associated methods const and make its parameter useTransforms no longer default to false
+        https://bugs.webkit.org/show_bug.cgi?id=69009
+
+        Reviewed by Simon Fraser.
+
+        * win/WebKit2.def:
+        * win/WebKit2CFLite.def:
+
 2011-10-06  Ravi Phaneendra Kasibhatla  <ravi.kasibhatla@motorola.com>
 
         Move windows specific TextChecker implementation common to all ports.
index e82291f78bca1148273b79ec17a64c888fbc9122..5ab54e95ce58d00f23c59db37d1584fb8a73bb4c 100644 (file)
@@ -143,7 +143,8 @@ EXPORTS
         ??0ClientRect@WebCore@@AAE@XZ
         ??0String@WTF@@QAE@PBD@Z
         ??0String@WTF@@QAE@PB_W@Z
-        ?absoluteBoundingBoxRect@RenderObject@WebCore@@QAE?AVIntRect@2@_N@Z
+        ?absoluteBoundingBoxRect@RenderObject@WebCore@@QBE?AVIntRect@2@_N@Z
+        ?absoluteBoundingBoxRectIgnoringTransforms@RenderObject@WebCore@@QBE?AVIntRect@2@XZ
         ?add@AtomicString@WTF@@CA?AV?$PassRefPtr@VStringImpl@WTF@@@2@PBD@Z
         ?addSlowCase@AtomicString@WTF@@CA?AV?$PassRefPtr@VStringImpl@WTF@@@2@PAVStringImpl@2@@Z
         ?cacheDOMStructure@WebCore@@YAPAVStructure@JSC@@PAVJSDOMGlobalObject@1@PAV23@PBUClassInfo@3@@Z
index aa1d316944a2df13b338b761165d6ba35ef85b54..7d746290e3b3a903f43f56089c7f4d9901b6bb9f 100644 (file)
@@ -135,7 +135,8 @@ EXPORTS
         ??0String@WTF@@QAE@PB_W@Z
         ??1NodeRenderingContext@WebCore@@QAE@XZ
         ??1Range@WebCore@@QAE@XZ
-        ?absoluteBoundingBoxRect@RenderObject@WebCore@@QAE?AVIntRect@2@_N@Z
+        ?absoluteBoundingBoxRect@RenderObject@WebCore@@QBE?AVIntRect@2@_N@Z
+        ?absoluteBoundingBoxRectIgnoringTransforms@RenderObject@WebCore@@QBE?AVIntRect@2@XZ
         ?add@AtomicString@WTF@@CA?AV?$PassRefPtr@VStringImpl@WTF@@@2@PBD@Z
         ?addSlowCase@AtomicString@WTF@@CA?AV?$PassRefPtr@VStringImpl@WTF@@@2@PAVStringImpl@2@@Z
         ?cacheDOMStructure@WebCore@@YAPAVStructure@JSC@@PAVJSDOMGlobalObject@1@PAV23@PBUClassInfo@3@@Z
index 1ab97373358c3a8b24fa351566fc6f8919bda4e3..2ffbe99547b3b64cec5ea1a40deaa8c7c60d57e9 100644 (file)
@@ -41,7 +41,7 @@ _ZN7WebCore10ClientRectC1ERKNS_7IntRectE;
 _ZN7WebCore11EventTarget17toGeneratedStreamEv;
 _ZN7WebCore11EventTarget8toStreamEv;
 _ZN7WebCore12JSDOMWrapper34virtualFunctionToPreventWeakVtableEv;
-_ZN7WebCore12RenderObject23absoluteBoundingBoxRectEb;
+_ZNK7WebCore12RenderObject23absoluteBoundingBoxRectEb;
 _ZN7WebCore13createWrapperEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_4NodeE;
 _ZN7WebCore15setDOMExceptionEPN3JSC9ExecStateEi;
 _ZN7WebCore16HTMLInputElement17setSuggestedValueERKN3WTF6StringE;