Move node geometry functions from Range to RenderObject
Created attachment 406911 [details] Patch
Are you going to hold off from landing this?
Yes.
Created attachment 406939 [details] Patch
Created attachment 406962 [details] Patch
Hooray, all tests passing now, so ready for review. I won’t be landing this until Saturday at the soonest, but would love to get review soon.
Comment on attachment 406962 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406962&action=review > Source/WebCore/rendering/RenderObject.h:573 > + WEBCORE_EXPORT static Vector<FloatQuad> absoluteTextQuads(const SimpleRange&, OptionSet<BoundingRectBehavior> = { }); > + WEBCORE_EXPORT static Vector<IntRect> absoluteTextRects(const SimpleRange&, OptionSet<BoundingRectBehavior> = { }); > + WEBCORE_EXPORT static Vector<FloatRect> absoluteBorderAndTextRects(const SimpleRange&, OptionSet<BoundingRectBehavior> = { }); > + static Vector<FloatRect> clientBorderAndTextRects(const SimpleRange&); It's a bit unfortunate that functions with _text_ and _border_ in their names end up in RenderObject (where we have neither border nor text) but I understand that it's hard to find a better place for a concept (Range) that has no associated renderer.
Comment on attachment 406962 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=406962&action=review >> Source/WebCore/rendering/RenderObject.h:573 >> + static Vector<FloatRect> clientBorderAndTextRects(const SimpleRange&); > > It's a bit unfortunate that functions with _text_ and _border_ in their names end up in RenderObject (where we have neither border nor text) but I understand that it's hard to find a better place for a concept (Range) that has no associated renderer. I am totally willing to follow up and move them somewhere else in the rendering world. They don’t have to stay on RenderObject.
Committed r266028: <https://trac.webkit.org/changeset/266028>
<rdar://problem/67617601>
(In reply to Darin Adler from comment #9) > Committed r266028: <https://trac.webkit.org/changeset/266028> Seems like it broke one test on ios-wk2: platform/ios/ios/fast/coordinates/range-client-rects.html. Tracked in Bug 215772. Also, unfortunately ios-wk2 ews was broken for some time late last week (due to Bug 215742), due to which the green ios-wk2 bubble for this bug is misleading (iOS layout-tests weren't actually run).