WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-69009-20111003161223.patch (text/plain), 45.81 KB, created by
Fady Samuel
on 2011-10-03 13:12:25 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Fady Samuel
Created:
2011-10-03 13:12:25 PDT
Size:
45.81 KB
patch
obsolete
>Subversion Revision: 96522 >diff --git a/ChangeLog b/ChangeLog >index 32c316fc296b23dc1dcbbc6fea01e73bb90fa4ea..c4173687446c0f5443fdde53ee12393a88374731 100644 >--- a/ChangeLog >+++ b/ChangeLog >@@ -1,3 +1,12 @@ >+2011-10-03 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 NOBODY (OOPS!). >+ >+ * Source/autotools/symbols.filter: >+ > 2011-09-23 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> > > [Qt] Fix build against Qt5 after refactor of widgets out of QtGUi >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 7f3cb1d4651daa8d80d8292e20582dfed481b97d..ffa41be2998466eb06146d7490a21b73d0ffc89b 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,88 @@ >+2011-10-03 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 NOBODY (OOPS!). >+ >+ 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-03 Chris Fleizach <cfleizach@apple.com> > > AX: click point for AXHeadings often returns point on empty space (results in wrong context menu) >diff --git a/Source/WebCore/WebCore.exp.in b/Source/WebCore/WebCore.exp.in >index 182158d8f72debb40c9748b74bff71be33e72cac..02b72821531058f18cafee0a4b3332b2edc8ae89 100644 >--- a/Source/WebCore/WebCore.exp.in >+++ b/Source/WebCore/WebCore.exp.in >@@ -283,7 +283,6 @@ __ZN7WebCore12PrintContext9spoolRectERNS_15GraphicsContextERKNS_7IntRectE > __ZN7WebCore12PrintContextC1EPNS_5FrameE > __ZN7WebCore12PrintContextD1Ev > __ZN7WebCore12RenderObject16repaintRectangleERKNS_7IntRectEb >-__ZN7WebCore12RenderObject23absoluteBoundingBoxRectEb > __ZN7WebCore12RenderWidget28resumeWidgetHierarchyUpdatesEv > __ZN7WebCore12RenderWidget29suspendWidgetHierarchyUpdatesEv > __ZN7WebCore12SharedBuffer10wrapNSDataEP6NSData >@@ -1115,6 +1114,7 @@ __ZNK7WebCore11ScriptValue9getStringEPN3JSC9ExecStateERN3WTF6StringE > __ZNK7WebCore12IconDatabase12databasePathEv > __ZNK7WebCore12IconDatabase24shouldStopThreadActivityEv > __ZNK7WebCore12IconDatabase9isEnabledEv >+__ZNK7WebCore12RenderObject23absoluteBoundingBoxRectEb > __ZNK7WebCore12RenderObject14enclosingLayerEv > __ZNK7WebCore12RenderObject15localToAbsoluteERKNS_10FloatPointEbb > __ZNK7WebCore12RenderObject4viewEv >diff --git a/Source/WebCore/dom/Element.cpp b/Source/WebCore/dom/Element.cpp >index b16623baac93101b13c234d4334567be2e67e60e..e8033e352d37af3b7b00c227ee732cb4d0bdf42e 100644 >--- a/Source/WebCore/dom/Element.cpp >+++ b/Source/WebCore/dom/Element.cpp >@@ -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) >diff --git a/Source/WebCore/dom/Node.cpp b/Source/WebCore/dom/Node.cpp >index a6b9e01e0fac74af5a28953eb099b87a50af32e4..79cb92e42c1dfeeafb40ba199ff77e334d2f57e7 100644 >--- a/Source/WebCore/dom/Node.cpp >+++ b/Source/WebCore/dom/Node.cpp >@@ -823,7 +823,7 @@ RenderBoxModelObject* Node::renderBoxModelObject() const > LayoutRect Node::getRect() const > { > if (renderer()) >- return renderer()->absoluteBoundingBoxRect(true); >+ return renderer()->absoluteBoundingBoxRect(); > return LayoutRect(); > } > >@@ -835,7 +835,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(); > } >diff --git a/Source/WebCore/html/shadow/SliderThumbElement.cpp b/Source/WebCore/html/shadow/SliderThumbElement.cpp >index 5d178af079ab4cfbd9d0f72043faf3d87c48bcb8..fc8237ce5033aa7682ec778cd27232d1e48bc09c 100644 >--- a/Source/WebCore/html/shadow/SliderThumbElement.cpp >+++ b/Source/WebCore/html/shadow/SliderThumbElement.cpp >@@ -40,6 +40,7 @@ > #include "HTMLParserIdioms.h" > #include "MouseEvent.h" > #include "RenderDeprecatedFlexibleBox.h" >+#include "RenderObject.h" > #include "RenderSlider.h" > #include "RenderTheme.h" > #include "ShadowRoot.h" >@@ -216,7 +217,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(); >diff --git a/Source/WebCore/html/shadow/TextControlInnerElements.cpp b/Source/WebCore/html/shadow/TextControlInnerElements.cpp >index bf185cf7b0f096b93c8883206ba3374d049345d5..0bddc204043dd53bed6a8040acbfcb8bcfc20779 100644 >--- a/Source/WebCore/html/shadow/TextControlInnerElements.cpp >+++ b/Source/WebCore/html/shadow/TextControlInnerElements.cpp >@@ -38,6 +38,7 @@ > #include "MouseEvent.h" > #include "Page.h" > #include "RenderLayer.h" >+#include "RenderObject.h" > #include "RenderTextControlSingleLine.h" > #include "ScriptController.h" > #include "ScrollbarTheme.h" >@@ -535,7 +536,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); > } >diff --git a/Source/WebCore/inspector/DOMNodeHighlighter.cpp b/Source/WebCore/inspector/DOMNodeHighlighter.cpp >index e689b5250b6a868ea5a550d6daaba2945a78f69d..f8bfb60f9aded20b2e10680a08c964284da84f58 100644 >--- a/Source/WebCore/inspector/DOMNodeHighlighter.cpp >+++ b/Source/WebCore/inspector/DOMNodeHighlighter.cpp >@@ -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); > >diff --git a/Source/WebCore/plugins/IFrameShimSupport.cpp b/Source/WebCore/plugins/IFrameShimSupport.cpp >index c0aa1e4136c4942f29af884f3216885c7ac55b79..8265765110ae5468d0305f3efb046d25add7feff 100644 >--- a/Source/WebCore/plugins/IFrameShimSupport.cpp >+++ b/Source/WebCore/plugins/IFrameShimSupport.cpp >@@ -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)) { >diff --git a/Source/WebCore/rendering/RenderBlock.cpp b/Source/WebCore/rendering/RenderBlock.cpp >index 7fb1b19fe901d3dffa116301f2297c1db0d0dd6b..dc3593f56cdfbde9936d2a3d3eeb5dbda5aa4c2a 100644 >--- a/Source/WebCore/rendering/RenderBlock.cpp >+++ b/Source/WebCore/rendering/RenderBlock.cpp >@@ -5864,7 +5864,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 >@@ -5880,7 +5880,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 >diff --git a/Source/WebCore/rendering/RenderBlock.h b/Source/WebCore/rendering/RenderBlock.h >index f38b7922100280f16bd48351a264ea8b0f91a0cb..1ed95b9c648332e000c95a9181d6f425e47bd5b2 100644 >--- a/Source/WebCore/rendering/RenderBlock.h >+++ b/Source/WebCore/rendering/RenderBlock.h >@@ -684,8 +684,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; >diff --git a/Source/WebCore/rendering/RenderBox.cpp b/Source/WebCore/rendering/RenderBox.cpp >index 5761c69f5b730b3a46130c001c01c56eba5e114c..c34df914e80b18d4f3e0a0d7c271b1b5638c81bc 100644 >--- a/Source/WebCore/rendering/RenderBox.cpp >+++ b/Source/WebCore/rendering/RenderBox.cpp >@@ -498,12 +498,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)); > } >diff --git a/Source/WebCore/rendering/RenderBox.h b/Source/WebCore/rendering/RenderBox.h >index 458093b94f48740c22b165ac0345262a3af9fc77..d0f4f37690572c224161e3ff9271e38e7c6506fa 100644 >--- a/Source/WebCore/rendering/RenderBox.h >+++ b/Source/WebCore/rendering/RenderBox.h >@@ -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; >diff --git a/Source/WebCore/rendering/RenderFileUploadControl.cpp b/Source/WebCore/rendering/RenderFileUploadControl.cpp >index f94491f31c5a8e5fd20224501954e4b46ef08466..01ceeaffcb0fe59be541ff4f2ae3808b1e83a589 100644 >--- a/Source/WebCore/rendering/RenderFileUploadControl.cpp >+++ b/Source/WebCore/rendering/RenderFileUploadControl.cpp >@@ -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()); >diff --git a/Source/WebCore/rendering/RenderIFrame.cpp b/Source/WebCore/rendering/RenderIFrame.cpp >index 11297b5db7a9f7a2d09e465943c487e186f15ad0..ce0f43bd0304151a4083b0a020a9e2ed961b13da 100644 >--- a/Source/WebCore/rendering/RenderIFrame.cpp >+++ b/Source/WebCore/rendering/RenderIFrame.cpp >@@ -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; > } > >diff --git a/Source/WebCore/rendering/RenderInline.cpp b/Source/WebCore/rendering/RenderInline.cpp >index 6ca9d3fb1e92d02cbc90ba4dc33ba19bd84b2804..3f09633b008d956fa1f7e2182e30c4dd205ac3a3 100644 >--- a/Source/WebCore/rendering/RenderInline.cpp >+++ b/Source/WebCore/rendering/RenderInline.cpp >@@ -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())); >diff --git a/Source/WebCore/rendering/RenderInline.h b/Source/WebCore/rendering/RenderInline.h >index afd4aad448b0e81819329ea0aa686e5b09ceb667..fe95af1fe18754265ba97909f7edb6eb3e73ae69 100644 >--- a/Source/WebCore/rendering/RenderInline.h >+++ b/Source/WebCore/rendering/RenderInline.h >@@ -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); >diff --git a/Source/WebCore/rendering/RenderMenuList.cpp b/Source/WebCore/rendering/RenderMenuList.cpp >index 897aa88eaf1ea2a46ed136f50f7c626239139e01..9ba3b5e7a1972cc84fc35464dc3f5dc21da754a1 100644 >--- a/Source/WebCore/rendering/RenderMenuList.cpp >+++ b/Source/WebCore/rendering/RenderMenuList.cpp >@@ -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())); >diff --git a/Source/WebCore/rendering/RenderObject.cpp b/Source/WebCore/rendering/RenderObject.cpp >index 0c676d43e275d2b4ba2accb914bf2813069a7332..3ace846677ece5275bfc2d16ce48bd5d6621024d 100644 >--- a/Source/WebCore/rendering/RenderObject.cpp >+++ b/Source/WebCore/rendering/RenderObject.cpp >@@ -1158,7 +1158,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; >@@ -1208,14 +1208,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); >diff --git a/Source/WebCore/rendering/RenderObject.h b/Source/WebCore/rendering/RenderObject.h >index 377ea4c5aa3c8b2f8800bdd48be759ef6da0c886..f8afeafe0574150d14bbdbeea49776ff44a57802 100644 >--- a/Source/WebCore/rendering/RenderObject.h >+++ b/Source/WebCore/rendering/RenderObject.h >@@ -631,12 +631,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>&); > >diff --git a/Source/WebCore/rendering/RenderText.cpp b/Source/WebCore/rendering/RenderText.cpp >index e88861f3d04a086844d3a70d215a474de68924c9..6b6da2444e12c7326f196d64b8812588274f98c0 100644 >--- a/Source/WebCore/rendering/RenderText.cpp >+++ b/Source/WebCore/rendering/RenderText.cpp >@@ -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); > } >diff --git a/Source/WebCore/rendering/RenderText.h b/Source/WebCore/rendering/RenderText.h >index 4020d8aa37122d125d1dc4ef110709d18f951398..42e9aec96b3b32b2d19e3bc5195c13d471ca0936 100644 >--- a/Source/WebCore/rendering/RenderText.h >+++ b/Source/WebCore/rendering/RenderText.h >@@ -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&); > >diff --git a/Source/WebCore/rendering/RenderTextControlSingleLine.cpp b/Source/WebCore/rendering/RenderTextControlSingleLine.cpp >index 17097b1fbab3618088e0b48937c608e5c2d84cfa..ff90770f09557891075db91e29e1dfe78704afb6 100644 >--- a/Source/WebCore/rendering/RenderTextControlSingleLine.cpp >+++ b/Source/WebCore/rendering/RenderTextControlSingleLine.cpp >@@ -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() >diff --git a/Source/WebCore/rendering/RenderThemeSafari.cpp b/Source/WebCore/rendering/RenderThemeSafari.cpp >index dba874d4aaceda1513e69e6ae0d6506eb4308995..d34d07484463a9f65226f5d12fc17087578330c8 100644 >--- a/Source/WebCore/rendering/RenderThemeSafari.cpp >+++ b/Source/WebCore/rendering/RenderThemeSafari.cpp >@@ -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; >diff --git a/Source/WebCore/rendering/RenderView.cpp b/Source/WebCore/rendering/RenderView.cpp >index 1fefac4f0192ea3eb05415cb3434af5b09f6a741..f421f981da267dd57d5994abc3ec1a7565d18057 100644 >--- a/Source/WebCore/rendering/RenderView.cpp >+++ b/Source/WebCore/rendering/RenderView.cpp >@@ -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; >diff --git a/Source/WebCore/rendering/RenderView.h b/Source/WebCore/rendering/RenderView.h >index e6d7d8f755f5b77bb7d990870e5a6adaaa49fe67..9a6f63d90fbf21a607a5dd53d6220c8af41adf7a 100644 >--- a/Source/WebCore/rendering/RenderView.h >+++ b/Source/WebCore/rendering/RenderView.h >@@ -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); >diff --git a/Source/WebCore/rendering/svg/RenderSVGBlock.cpp b/Source/WebCore/rendering/svg/RenderSVGBlock.cpp >index 2c815908ebf6b98906757d8bc54be6947a7179e3..7b16a4d5bfc9cb7bb65e65bb15abc8e2f6ebaea3 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGBlock.cpp >+++ b/Source/WebCore/rendering/svg/RenderSVGBlock.cpp >@@ -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(); >diff --git a/Source/WebCore/rendering/svg/RenderSVGBlock.h b/Source/WebCore/rendering/svg/RenderSVGBlock.h >index 22c1f18e36e02310be7e7d3e4ec8123a29b5a714..58cf2620a9818d64ae27834fed8d41b716920473 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGBlock.h >+++ b/Source/WebCore/rendering/svg/RenderSVGBlock.h >@@ -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); >diff --git a/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp b/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp >index d29d85ec93971dee18db12bd8e7805f581772f1e..895b2544900123fdbf3ea025854cb9cedbe04fd9 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp >+++ b/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.cpp >@@ -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 > } >diff --git a/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h b/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h >index efff92151d2c361a6d0c8d9777b31f634464d10c..f26c5fc61a37f8207d4d649be6809d52a2f8825f 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h >+++ b/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h >@@ -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); > }; >diff --git a/Source/WebCore/rendering/svg/RenderSVGInline.cpp b/Source/WebCore/rendering/svg/RenderSVGInline.cpp >index 09770efbf027fac9eba7dbc7c4ea437f6aa010b9..4c90580f1359bf681c773ad5d8bb816ced42a625 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGInline.cpp >+++ b/Source/WebCore/rendering/svg/RenderSVGInline.cpp >@@ -82,9 +82,9 @@ void RenderSVGInline::mapLocalToContainer(RenderBoxModelObject* repaintContainer > SVGRenderSupport::mapLocalToContainer(this, repaintContainer, useTransforms, fixed, 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; > >diff --git a/Source/WebCore/rendering/svg/RenderSVGInline.h b/Source/WebCore/rendering/svg/RenderSVGInline.h >index 0a60837f4775969037e84975bcf2008066bb82f7..d2fa1cc524024b61aa7d4aa77a4e8dd8e5608440 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGInline.h >+++ b/Source/WebCore/rendering/svg/RenderSVGInline.h >@@ -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(); >diff --git a/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp b/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp >index 14c1db8e0f93eaf558aeec892a872323cd10d723..fbe493b54dcdec1c5767a478aa66386a54034bf7 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp >+++ b/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp >@@ -70,13 +70,13 @@ LayoutRect RenderSVGModelObject::outlineBoundsForRepaint(RenderBoxModelObject* r > return containerRelativeQuad.enclosingBoundingBox(); > } > >-void RenderSVGModelObject::absoluteRects(Vector<LayoutRect>&, const LayoutPoint&) >+void RenderSVGModelObject::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(); > } > >-void RenderSVGModelObject::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) >+void RenderSVGModelObject::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const > { > quads.append(localToAbsoluteQuad(strokeBoundingBox(), false, wasFixed)); > } >diff --git a/Source/WebCore/rendering/svg/RenderSVGModelObject.h b/Source/WebCore/rendering/svg/RenderSVGModelObject.h >index c28d3c6607d554ea20c2ba5c5aeeedcc2de73b79..7041d449ef632c4fc3009260f92c0003b010d7e1 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGModelObject.h >+++ b/Source/WebCore/rendering/svg/RenderSVGModelObject.h >@@ -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); >diff --git a/Source/WebCore/rendering/svg/RenderSVGText.cpp b/Source/WebCore/rendering/svg/RenderSVGText.cpp >index af439b5d38f084f02a921b2bafa0d9b1abd47081..2a7d80cf2ef521a94fbd977220b1e4ee125d60d5 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGText.cpp >+++ b/Source/WebCore/rendering/svg/RenderSVGText.cpp >@@ -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)); > } >diff --git a/Source/WebCore/rendering/svg/RenderSVGText.h b/Source/WebCore/rendering/svg/RenderSVGText.h >index b3e0f43f8f649c7fa67e0b8420367af0d6e92d3e..a0ada4cb4efe980cabe27a9fa504baa390189dc8 100644 >--- a/Source/WebCore/rendering/svg/RenderSVGText.h >+++ b/Source/WebCore/rendering/svg/RenderSVGText.h >@@ -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; >diff --git a/Source/WebCore/testing/Internals.cpp b/Source/WebCore/testing/Internals.cpp >index d64d0b7c4768f13cebb08caed38104c28abdead6..d7a81540fa0edcd1a9fb34257094dff0252c5006 100644 >--- a/Source/WebCore/testing/Internals.cpp >+++ b/Source/WebCore/testing/Internals.cpp >@@ -208,7 +208,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) >diff --git a/Source/WebKit/qt/Api/qwebframe.cpp b/Source/WebKit/qt/Api/qwebframe.cpp >index 5f12e101439f5fbf0d6cdcb1034117061b5927f4..07f2df987d2cff56dfc8d87d7a5cabb5c1966e1a 100644 >--- a/Source/WebKit/qt/Api/qwebframe.cpp >+++ b/Source/WebKit/qt/Api/qwebframe.cpp >@@ -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(); >diff --git a/Source/WebKit/qt/ChangeLog b/Source/WebKit/qt/ChangeLog >index eabd82a09be7874201bf3a66803553435da9f3e9..20fba6327e56a79ed431855892a2fbc11d264f34 100644 >--- a/Source/WebKit/qt/ChangeLog >+++ b/Source/WebKit/qt/ChangeLog >@@ -1,3 +1,13 @@ >+2011-10-03 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 NOBODY (OOPS!). >+ >+ * Api/qwebframe.cpp: >+ (QWebHitTestResultPrivate::QWebHitTestResultPrivate): >+ > 2011-10-03 Pierre Rossi <pierre.rossi@gmail.com> > > [Qt] Build fix: Qt::escape is deprecated in Qt5 >diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog >index 1042c4571aba74cb5e1aeb7e2c578e04532ce8a7..7082504847f921ab8d1788556869b0827ff8b8e2 100644 >--- a/Source/WebKit2/ChangeLog >+++ b/Source/WebKit2/ChangeLog >@@ -1,3 +1,13 @@ >+2011-10-03 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 NOBODY (OOPS!). >+ >+ * win/WebKit2.def: >+ * win/WebKit2CFLite.def: >+ > 2011-10-03 Carlos Garcia Campos <cgarcia@igalia.com> > > [GTK] Add failing uri parameter to provisional-load-failed and load-failed signals >diff --git a/Source/WebKit2/win/WebKit2.def b/Source/WebKit2/win/WebKit2.def >index fa518e3402a112546190bbbd5212f694594fd102..b7f2ad4446415d5700e0d7d2a8cb139f64ba1333 100644 >--- a/Source/WebKit2/win/WebKit2.def >+++ b/Source/WebKit2/win/WebKit2.def >@@ -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 >diff --git a/Source/WebKit2/win/WebKit2CFLite.def b/Source/WebKit2/win/WebKit2CFLite.def >index 8482b49716c71cb2c32d7c0fbc952f27f41f4d1c..7734995c7dd85551b2fd8e13564c4121f6ae6ebe 100644 >--- a/Source/WebKit2/win/WebKit2CFLite.def >+++ b/Source/WebKit2/win/WebKit2CFLite.def >@@ -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 >diff --git a/Source/autotools/symbols.filter b/Source/autotools/symbols.filter >index 7d39c45ac09e4bbe23358bd3b6759a41403a910c..f67d5f8dd5a8ba3b2b64246d518b89cffbdc4cd8 100644 >--- a/Source/autotools/symbols.filter >+++ b/Source/autotools/symbols.filter >@@ -43,7 +43,7 @@ _ZN7WebCore11EventTarget8toStreamEv; > _ZN7WebCore11MemoryCache11setDisabledEb; > _ZN7WebCore11memoryCacheEv; > _ZN7WebCore12JSDOMWrapper34virtualFunctionToPreventWeakVtableEv; >-_ZN7WebCore12RenderObject23absoluteBoundingBoxRectEb; >+_ZNK7WebCore12RenderObject23absoluteBoundingBoxRectEb; > _ZN7WebCore13createWrapperEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_4NodeE; > _ZN7WebCore15setDOMExceptionEPN3JSC9ExecStateEi; > _ZN7WebCore16HTMLInputElement17setSuggestedValueERKN3WTF6StringE;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 69009
:
109037
|
109063
|
109064
|
109084
|
109085
|
109094
|
109183
|
109197
|
109200
|
109311
|
109515
|
109703
|
109976
|
110010
|
110014