Changeset 161323 in webkit
- Timestamp:
- Jan 5, 2014, 3:45:54 AM (12 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r161321 r161323 1 2014-01-05 Andreas Kling <akling@apple.com> 2 3 Use lineageOfType to simplify two rendering helpers. 4 <https://webkit.org/b/126498> 5 6 Reviewed by Antti Koivisto. 7 8 * rendering/RenderRuby.cpp: 9 (WebCore::findRubyRunParent): 10 * rendering/svg/SVGRenderSupport.cpp: 11 (WebCore::SVGRenderSupport::findTreeRootObject): 12 13 Simplify two functions that walk their parent chain to find the 14 closest ancestor of a certain type. 15 16 * rendering/RenderRubyRun.h: 17 18 Add requisite isRendererOfType<RenderRubyRun>(). 19 1 20 2014-01-05 Csaba Osztrogonác <ossy@webkit.org> 2 21 -
trunk/Source/WebCore/rendering/RenderRuby.cpp
r158163 r161323 33 33 #include "RenderRuby.h" 34 34 35 #include "RenderIterator.h" 35 36 #include "RenderRubyRun.h" 36 37 #include "RenderStyle.h" … … 102 103 static inline RenderRubyRun& findRubyRunParent(RenderObject& child) 103 104 { 104 RenderObject* ancestor = &child; 105 while (ancestor && !ancestor->isRubyRun()) 106 ancestor = ancestor->parent(); 107 ASSERT(ancestor); 108 return toRenderRubyRun(*ancestor); 105 return *lineageOfType<RenderRubyRun>(child).first(); 109 106 } 110 107 -
trunk/Source/WebCore/rendering/RenderRubyRun.h
r158097 r161323 78 78 }; 79 79 80 template<> inline bool isRendererOfType<const RenderRubyRun>(const RenderObject& renderer) { return renderer.isRubyRun(); } 81 80 82 RENDER_OBJECT_TYPE_CASTS(RenderRubyRun, isRubyRun()) 81 83 -
trunk/Source/WebCore/rendering/svg/SVGRenderSupport.cpp
r160651 r161323 29 29 30 30 #include "NodeRenderStyle.h" 31 #include "RenderElement.h" 31 32 #include "RenderGeometryMap.h" 33 #include "RenderIterator.h" 32 34 #include "RenderLayer.h" 33 35 #include "RenderSVGResource.h" … … 183 185 const RenderSVGRoot& SVGRenderSupport::findTreeRootObject(const RenderElement& start) 184 186 { 185 auto renderer = &start; 186 while (renderer && !renderer->isSVGRoot()) 187 renderer = renderer->parent(); 188 189 ASSERT(renderer); 190 return toRenderSVGRoot(*renderer); 187 return *lineageOfType<RenderSVGRoot>(start).first(); 191 188 } 192 189
Note:
See TracChangeset
for help on using the changeset viewer.