Skip to content
Permalink
Browse files
Take RenderObjects out of the arena.
<https://webkit.org/b/122895>

Reviewed by Antti Koivisto.

Stop arena-allocating renderers so we can move forward on improving
render tree memory management. This will also allow rendering code
to take advantage of malloc optimizations.

Line boxes and BiDi runs remain in the arena for now.


Canonical link: https://commits.webkit.org/140997@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157535 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
Andreas Kling committed Oct 16, 2013
1 parent 85c0e31 commit 7a4134bf81125bf237c5db3163b38841a3546875
Showing with 320 additions and 351 deletions.
  1. +13 −0 Source/WebCore/ChangeLog
  2. +1 −1 Source/WebCore/dom/Document.cpp
  3. +1 −1 Source/WebCore/dom/Element.cpp
  4. +1 −1 Source/WebCore/dom/Element.h
  5. +4 −4 Source/WebCore/dom/Text.cpp
  6. +1 −1 Source/WebCore/dom/Text.h
  7. +2 −2 Source/WebCore/html/BaseButtonInputType.cpp
  8. +1 −1 Source/WebCore/html/BaseButtonInputType.h
  9. +2 −2 Source/WebCore/html/FileInputType.cpp
  10. +1 −1 Source/WebCore/html/FileInputType.h
  11. +1 −1 Source/WebCore/html/HTMLAppletElement.cpp
  12. +1 −1 Source/WebCore/html/HTMLAppletElement.h
  13. +2 −2 Source/WebCore/html/HTMLBRElement.cpp
  14. +1 −1 Source/WebCore/html/HTMLBRElement.h
  15. +2 −2 Source/WebCore/html/HTMLButtonElement.cpp
  16. +1 −1 Source/WebCore/html/HTMLButtonElement.h
  17. +3 −3 Source/WebCore/html/HTMLCanvasElement.cpp
  18. +1 −1 Source/WebCore/html/HTMLCanvasElement.h
  19. +2 −2 Source/WebCore/html/HTMLDetailsElement.cpp
  20. +1 −1 Source/WebCore/html/HTMLDetailsElement.h
  21. +2 −2 Source/WebCore/html/HTMLElement.cpp
  22. +1 −1 Source/WebCore/html/HTMLElement.h
  23. +2 −2 Source/WebCore/html/HTMLFieldSetElement.cpp
  24. +1 −1 Source/WebCore/html/HTMLFieldSetElement.h
  25. +2 −2 Source/WebCore/html/HTMLFrameElement.cpp
  26. +1 −1 Source/WebCore/html/HTMLFrameElement.h
  27. +2 −2 Source/WebCore/html/HTMLFrameSetElement.cpp
  28. +1 −1 Source/WebCore/html/HTMLFrameSetElement.h
  29. +2 −2 Source/WebCore/html/HTMLIFrameElement.cpp
  30. +1 −1 Source/WebCore/html/HTMLIFrameElement.h
  31. +2 −2 Source/WebCore/html/HTMLImageElement.cpp
  32. +1 −1 Source/WebCore/html/HTMLImageElement.h
  33. +2 −2 Source/WebCore/html/HTMLInputElement.cpp
  34. +1 −1 Source/WebCore/html/HTMLInputElement.h
  35. +3 −3 Source/WebCore/html/HTMLMediaElement.cpp
  36. +1 −1 Source/WebCore/html/HTMLMediaElement.h
  37. +2 −2 Source/WebCore/html/HTMLMeterElement.cpp
  38. +1 −1 Source/WebCore/html/HTMLMeterElement.h
  39. +4 −4 Source/WebCore/html/HTMLPlugInImageElement.cpp
  40. +1 −1 Source/WebCore/html/HTMLPlugInImageElement.h
  41. +2 −2 Source/WebCore/html/HTMLProgressElement.cpp
  42. +1 −1 Source/WebCore/html/HTMLProgressElement.h
  43. +3 −3 Source/WebCore/html/HTMLSelectElement.cpp
  44. +1 −1 Source/WebCore/html/HTMLSelectElement.h
  45. +2 −2 Source/WebCore/html/HTMLSummaryElement.cpp
  46. +1 −1 Source/WebCore/html/HTMLSummaryElement.h
  47. +2 −2 Source/WebCore/html/HTMLTextAreaElement.cpp
  48. +1 −1 Source/WebCore/html/HTMLTextAreaElement.h
  49. +2 −2 Source/WebCore/html/HTMLVideoElement.cpp
  50. +1 −1 Source/WebCore/html/HTMLVideoElement.h
  51. +1 −1 Source/WebCore/html/HiddenInputType.cpp
  52. +1 −1 Source/WebCore/html/HiddenInputType.h
  53. +2 −2 Source/WebCore/html/ImageInputType.cpp
  54. +1 −1 Source/WebCore/html/ImageInputType.h
  55. +1 −1 Source/WebCore/html/InputType.cpp
  56. +1 −1 Source/WebCore/html/InputType.h
  57. +2 −2 Source/WebCore/html/RangeInputType.cpp
  58. +1 −1 Source/WebCore/html/RangeInputType.h
  59. +2 −2 Source/WebCore/html/SearchInputType.cpp
  60. +1 −1 Source/WebCore/html/SearchInputType.h
  61. +2 −2 Source/WebCore/html/TextFieldInputType.cpp
  62. +1 −1 Source/WebCore/html/TextFieldInputType.h
  63. +2 −2 Source/WebCore/html/shadow/DetailsMarkerControl.cpp
  64. +1 −1 Source/WebCore/html/shadow/DetailsMarkerControl.h
  65. +6 −6 Source/WebCore/html/shadow/MediaControlElements.cpp
  66. +3 −3 Source/WebCore/html/shadow/MediaControlElements.h
  67. +2 −2 Source/WebCore/html/shadow/MeterShadowElement.cpp
  68. +1 −1 Source/WebCore/html/shadow/MeterShadowElement.h
  69. +2 −2 Source/WebCore/html/shadow/ProgressShadowElement.cpp
  70. +1 −1 Source/WebCore/html/shadow/ProgressShadowElement.h
  71. +4 −4 Source/WebCore/html/shadow/SliderThumbElement.cpp
  72. +2 −2 Source/WebCore/html/shadow/SliderThumbElement.h
  73. +4 −4 Source/WebCore/html/shadow/TextControlInnerElements.cpp
  74. +2 −2 Source/WebCore/html/shadow/TextControlInnerElements.h
  75. +2 −2 Source/WebCore/html/track/TextTrackCue.cpp
  76. +1 −1 Source/WebCore/html/track/TextTrackCue.h
  77. +15 −15 Source/WebCore/mathml/MathMLInlineContainerElement.cpp
  78. +1 −1 Source/WebCore/mathml/MathMLInlineContainerElement.h
  79. +2 −2 Source/WebCore/mathml/MathMLMathElement.cpp
  80. +1 −1 Source/WebCore/mathml/MathMLMathElement.h
  81. +4 −4 Source/WebCore/mathml/MathMLTextElement.cpp
  82. +1 −1 Source/WebCore/mathml/MathMLTextElement.h
  83. +1 −1 Source/WebCore/page/FrameView.cpp
  84. +1 −1 Source/WebCore/rendering/FlowThreadController.cpp
  85. +15 −15 Source/WebCore/rendering/RenderBlock.cpp
  86. +1 −1 Source/WebCore/rendering/RenderButton.cpp
  87. +18 −19 Source/WebCore/rendering/RenderElement.cpp
  88. +1 −1 Source/WebCore/rendering/RenderEmbeddedObject.cpp
  89. +2 −2 Source/WebCore/rendering/RenderFullScreen.cpp
  90. +2 −2 Source/WebCore/rendering/RenderInline.cpp
  91. +3 −3 Source/WebCore/rendering/RenderLayer.cpp
  92. +1 −1 Source/WebCore/rendering/RenderListItem.cpp
  93. +1 −1 Source/WebCore/rendering/RenderMenuList.cpp
  94. +1 −1 Source/WebCore/rendering/RenderMultiColumnBlock.cpp
  95. +1 −1 Source/WebCore/rendering/RenderMultiColumnFlowThread.cpp
  96. +0 −30 Source/WebCore/rendering/RenderObject.cpp
  97. +0 −12 Source/WebCore/rendering/RenderObject.h
  98. +1 −1 Source/WebCore/rendering/RenderRuby.cpp
  99. +2 −2 Source/WebCore/rendering/RenderRubyRun.cpp
  100. +1 −1 Source/WebCore/rendering/RenderScrollbar.cpp
  101. +1 −1 Source/WebCore/rendering/RenderTable.cpp
  102. +1 −1 Source/WebCore/rendering/RenderTableCell.cpp
  103. +1 −1 Source/WebCore/rendering/RenderTableRow.cpp
  104. +1 −1 Source/WebCore/rendering/RenderTableSection.cpp
  105. +1 −1 Source/WebCore/rendering/mathml/RenderMathMLBlock.cpp
  106. +1 −1 Source/WebCore/rendering/mathml/RenderMathMLFenced.cpp
  107. +3 −3 Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp
  108. +1 −1 Source/WebCore/rendering/mathml/RenderMathMLRow.cpp
  109. +1 −1 Source/WebCore/rendering/mathml/RenderMathMLScripts.cpp
  110. +4 −4 Source/WebCore/rendering/style/ContentData.cpp
  111. +2 −3 Source/WebCore/style/StyleResolveTree.cpp
  112. +3 −3 Source/WebCore/svg/SVGAElement.cpp
  113. +1 −1 Source/WebCore/svg/SVGAElement.h
  114. +2 −2 Source/WebCore/svg/SVGAltGlyphElement.cpp
  115. +1 −1 Source/WebCore/svg/SVGAltGlyphElement.h
  116. +2 −2 Source/WebCore/svg/SVGCircleElement.cpp
  117. +1 −1 Source/WebCore/svg/SVGCircleElement.h
  118. +2 −2 Source/WebCore/svg/SVGClipPathElement.cpp
  119. +1 −1 Source/WebCore/svg/SVGClipPathElement.h
  120. +2 −2 Source/WebCore/svg/SVGDefsElement.cpp
  121. +1 −1 Source/WebCore/svg/SVGDefsElement.h
  122. +2 −2 Source/WebCore/svg/SVGEllipseElement.cpp
  123. +1 −1 Source/WebCore/svg/SVGEllipseElement.h
  124. +2 −2 Source/WebCore/svg/SVGFilterElement.cpp
  125. +1 −1 Source/WebCore/svg/SVGFilterElement.h
  126. +2 −2 Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.cpp
  127. +1 −1 Source/WebCore/svg/SVGFilterPrimitiveStandardAttributes.h
  128. +2 −2 Source/WebCore/svg/SVGForeignObjectElement.cpp
  129. +1 −1 Source/WebCore/svg/SVGForeignObjectElement.h
  130. +3 −3 Source/WebCore/svg/SVGGElement.cpp
  131. +1 −1 Source/WebCore/svg/SVGGElement.h
  132. +2 −2 Source/WebCore/svg/SVGGraphicsElement.cpp
  133. +1 −1 Source/WebCore/svg/SVGGraphicsElement.h
  134. +2 −2 Source/WebCore/svg/SVGImageElement.cpp
  135. +1 −1 Source/WebCore/svg/SVGImageElement.h
  136. +2 −2 Source/WebCore/svg/SVGLinearGradientElement.cpp
  137. +1 −1 Source/WebCore/svg/SVGLinearGradientElement.h
  138. +2 −2 Source/WebCore/svg/SVGMarkerElement.cpp
  139. +1 −1 Source/WebCore/svg/SVGMarkerElement.h
  140. +2 −2 Source/WebCore/svg/SVGMaskElement.cpp
  141. +1 −1 Source/WebCore/svg/SVGMaskElement.h
  142. +2 −2 Source/WebCore/svg/SVGPathElement.cpp
  143. +1 −1 Source/WebCore/svg/SVGPathElement.h
  144. +2 −2 Source/WebCore/svg/SVGPatternElement.cpp
  145. +1 −1 Source/WebCore/svg/SVGPatternElement.h
  146. +2 −2 Source/WebCore/svg/SVGRadialGradientElement.cpp
  147. +1 −1 Source/WebCore/svg/SVGRadialGradientElement.h
  148. +2 −2 Source/WebCore/svg/SVGRectElement.cpp
  149. +1 −1 Source/WebCore/svg/SVGRectElement.h
  150. +3 −3 Source/WebCore/svg/SVGSVGElement.cpp
  151. +1 −1 Source/WebCore/svg/SVGSVGElement.h
  152. +2 −2 Source/WebCore/svg/SVGStopElement.cpp
  153. +1 −1 Source/WebCore/svg/SVGStopElement.h
  154. +2 −2 Source/WebCore/svg/SVGSwitchElement.cpp
  155. +1 −1 Source/WebCore/svg/SVGSwitchElement.h
  156. +2 −2 Source/WebCore/svg/SVGSymbolElement.cpp
  157. +1 −1 Source/WebCore/svg/SVGSymbolElement.h
  158. +2 −2 Source/WebCore/svg/SVGTRefElement.cpp
  159. +1 −1 Source/WebCore/svg/SVGTRefElement.h
  160. +2 −2 Source/WebCore/svg/SVGTSpanElement.cpp
  161. +1 −1 Source/WebCore/svg/SVGTSpanElement.h
  162. +2 −2 Source/WebCore/svg/SVGTextElement.cpp
  163. +1 −1 Source/WebCore/svg/SVGTextElement.h
  164. +2 −2 Source/WebCore/svg/SVGTextPathElement.cpp
  165. +1 −1 Source/WebCore/svg/SVGTextPathElement.h
  166. +2 −2 Source/WebCore/svg/SVGUseElement.cpp
  167. +1 −1 Source/WebCore/svg/SVGUseElement.h
@@ -1,3 +1,16 @@
2013-10-16 Andreas Kling <akling@apple.com>

Take RenderObjects out of the arena.
<https://webkit.org/b/122895>

Reviewed by Antti Koivisto.

Stop arena-allocating renderers so we can move forward on improving
render tree memory management. This will also allow rendering code
to take advantage of malloc optimizations.

Line boxes and BiDi runs remain in the arena for now.

2013-10-16 Roger Fong <roger_fong@apple.com>

[Windows] Speculative fix for test, media/video-canvas-drawing-output.html.
@@ -1931,7 +1931,7 @@ void Document::createRenderTree()

m_renderArena = std::make_unique<RenderArena>();

setRenderView(new (*m_renderArena) RenderView(*this));
setRenderView(new RenderView(*this));
#if USE(ACCELERATED_COMPOSITING)
renderView()->setIsInWindow(true);
#endif
@@ -1347,7 +1347,7 @@ bool Element::rendererIsNeeded(const RenderStyle& style)
return style.display() != NONE;
}

RenderElement* Element::createRenderer(RenderArena&, RenderStyle& style)
RenderElement* Element::createRenderer(RenderStyle& style)
{
return RenderElement::createFor(*this, style);
}
@@ -304,7 +304,7 @@ class Element : public ContainerNode {
void lazyAttach(ShouldSetAttached = SetAttached);
void lazyReattach(ShouldSetAttached = SetAttached);

virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);
virtual bool rendererIsNeeded(const RenderStyle&);
void didAffectSelector(AffectedSelectorMask);

@@ -191,16 +191,16 @@ static bool isSVGText(Text* text)
}
#endif

RenderText* Text::createTextRenderer(RenderArena& arena, RenderStyle& style)
RenderText* Text::createTextRenderer(RenderStyle& style)
{
#if ENABLE(SVG)
if (isSVGText(this) || isSVGShadowText(this))
return new (arena) RenderSVGInlineText(*this, dataImpl());
return new RenderSVGInlineText(*this, dataImpl());
#endif
if (style.hasTextCombine())
return new (arena) RenderCombineText(*this, dataImpl());
return new RenderCombineText(*this, dataImpl());

return new (arena) RenderText(*this, dataImpl());
return new RenderText(*this, dataImpl());
}

bool Text::childTypeAllowed(NodeType) const
@@ -47,7 +47,7 @@ class Text : public CharacterData {
String wholeText() const;
PassRefPtr<Text> replaceWholeText(const String&, ExceptionCode&);

RenderText* createTextRenderer(RenderArena&, RenderStyle&);
RenderText* createTextRenderer(RenderStyle&);

virtual bool canContainRangeEndPoint() const OVERRIDE FINAL { return true; }

@@ -52,9 +52,9 @@ bool BaseButtonInputType::appendFormData(FormDataList&, bool) const
return false;
}

RenderElement* BaseButtonInputType::createRenderer(RenderArena& arena, RenderStyle&) const
RenderElement* BaseButtonInputType::createRenderer(RenderStyle&) const
{
return new (arena) RenderButton(element());
return new RenderButton(element());
}

bool BaseButtonInputType::storesValueSeparateFromAttribute()
@@ -43,7 +43,7 @@ class BaseButtonInputType : public BaseClickableWithKeyInputType {
private:
virtual bool shouldSaveAndRestoreFormControlState() const OVERRIDE;
virtual bool appendFormData(FormDataList&, bool) const OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
virtual bool storesValueSeparateFromAttribute() OVERRIDE;
virtual void setValue(const String&, bool, TextFieldEventBehavior) OVERRIDE;
};
@@ -212,9 +212,9 @@ void FileInputType::handleDOMActivateEvent(Event* event)
event->setDefaultHandled();
}

RenderElement* FileInputType::createRenderer(RenderArena& arena, RenderStyle&) const
RenderElement* FileInputType::createRenderer(RenderStyle&) const
{
return new (arena) RenderFileUploadControl(element());
return new RenderFileUploadControl(element());
}

bool FileInputType::canSetStringValue() const
@@ -59,7 +59,7 @@ class FileInputType : public BaseClickableWithKeyInputType, private FileChooserC
virtual bool valueMissing(const String&) const OVERRIDE;
virtual String valueMissingText() const OVERRIDE;
virtual void handleDOMActivateEvent(Event*) OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) const OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) const OVERRIDE;
virtual bool canSetStringValue() const OVERRIDE;
virtual bool canChangeFromAnotherType() const OVERRIDE;
virtual FileList* files() OVERRIDE;
@@ -75,7 +75,7 @@ bool HTMLAppletElement::rendererIsNeeded(const RenderStyle& style)
return HTMLPlugInImageElement::rendererIsNeeded(style);
}

RenderElement* HTMLAppletElement::createRenderer(RenderArena&, RenderStyle& style)
RenderElement* HTMLAppletElement::createRenderer(RenderStyle& style)
{
if (!canEmbedJava())
return RenderElement::createFor(*this, style);
@@ -37,7 +37,7 @@ class HTMLAppletElement FINAL : public HTMLPlugInImageElement {
virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;

virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;

virtual RenderWidget* renderWidgetForJSBindings() const;
virtual void updateWidget(PluginCreationOption) OVERRIDE;
@@ -71,12 +71,12 @@ void HTMLBRElement::collectStyleForPresentationAttribute(const QualifiedName& na
HTMLElement::collectStyleForPresentationAttribute(name, value, style);
}

RenderElement* HTMLBRElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLBRElement::createRenderer(RenderStyle& style)
{
if (style.hasContent())
return RenderElement::createFor(*this, style);

return new (arena) RenderLineBreak(*this);
return new RenderLineBreak(*this);
}

}
@@ -41,7 +41,7 @@ class HTMLBRElement FINAL : public HTMLElement {
virtual bool isPresentationAttribute(const QualifiedName&) const OVERRIDE;
virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;

virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);
};

} // namespace
@@ -57,9 +57,9 @@ void HTMLButtonElement::setType(const AtomicString& type)
setAttribute(typeAttr, type);
}

RenderElement* HTMLButtonElement::createRenderer(RenderArena& arena, RenderStyle&)
RenderElement* HTMLButtonElement::createRenderer(RenderStyle&)
{
return new (arena) RenderButton(*this);
return new RenderButton(*this);
}

const AtomicString& HTMLButtonElement::formControlType() const
@@ -45,7 +45,7 @@ class HTMLButtonElement FINAL : public HTMLFormControlElement {

virtual const AtomicString& formControlType() const;

virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);

// HTMLFormControlElement always creates one, but buttons don't need it.
virtual bool alwaysCreateUserAgentShadowRoot() const OVERRIDE { return false; }
@@ -109,16 +109,16 @@ void HTMLCanvasElement::parseAttribute(const QualifiedName& name, const AtomicSt
HTMLElement::parseAttribute(name, value);
}

RenderElement* HTMLCanvasElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLCanvasElement::createRenderer(RenderStyle& style)
{
Frame* frame = document().frame();
if (frame && frame->script().canExecuteScripts(NotAboutToExecuteScript)) {
m_rendererIsCanvas = true;
return new (arena) RenderHTMLCanvas(*this);
return new RenderHTMLCanvas(*this);
}

m_rendererIsCanvas = false;
return HTMLElement::createRenderer(arena, style);
return HTMLElement::createRenderer(style);
}

void HTMLCanvasElement::willAttachRenderers()
@@ -144,7 +144,7 @@ class HTMLCanvasElement FINAL : public HTMLElement {
HTMLCanvasElement(const QualifiedName&, Document&);

virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
virtual void willAttachRenderers() OVERRIDE;
virtual bool areAuthorShadowsAllowed() const OVERRIDE;

@@ -112,9 +112,9 @@ HTMLDetailsElement::HTMLDetailsElement(const QualifiedName& tagName, Document& d
ASSERT(hasTagName(detailsTag));
}

RenderElement* HTMLDetailsElement::createRenderer(RenderArena& arena, RenderStyle&)
RenderElement* HTMLDetailsElement::createRenderer(RenderStyle&)
{
return new (arena) RenderBlockFlow(*this);
return new RenderBlockFlow(*this);
}

void HTMLDetailsElement::didAddUserAgentShadowRoot(ShadowRoot* root)
@@ -35,7 +35,7 @@ class HTMLDetailsElement FINAL : public HTMLElement {
private:
HTMLDetailsElement(const QualifiedName&, Document&);

virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);
virtual bool childShouldCreateRenderer(const Node*) const OVERRIDE;
virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;

@@ -784,10 +784,10 @@ bool HTMLElement::rendererIsNeeded(const RenderStyle& style)
return StyledElement::rendererIsNeeded(style);
}

RenderElement* HTMLElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLElement::createRenderer(RenderStyle& style)
{
if (hasLocalName(wbrTag))
return new (arena) RenderLineBreak(*this);
return new RenderLineBreak(*this);
return RenderElement::createFor(*this, style);
}

@@ -82,7 +82,7 @@ class HTMLElement : public StyledElement {
bool ieForbidsInsertHTML() const;

virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;

HTMLFormElement* form() const { return virtualForm(); }

@@ -83,9 +83,9 @@ const AtomicString& HTMLFieldSetElement::formControlType() const
return fieldset;
}

RenderElement* HTMLFieldSetElement::createRenderer(RenderArena& arena, RenderStyle&)
RenderElement* HTMLFieldSetElement::createRenderer(RenderStyle&)
{
return new (arena) RenderFieldset(*this);
return new RenderFieldset(*this);
}

HTMLLegendElement* HTMLFieldSetElement::legend() const
@@ -49,7 +49,7 @@ class HTMLFieldSetElement FINAL : public HTMLFormControlElement {

virtual bool isEnumeratable() const OVERRIDE { return true; }
virtual bool supportsFocus() const OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
virtual const AtomicString& formControlType() const OVERRIDE;
virtual bool recalcWillValidate() const OVERRIDE { return false; }
virtual void childrenChanged(const ChildChange&) OVERRIDE;
@@ -54,9 +54,9 @@ bool HTMLFrameElement::rendererIsNeeded(const RenderStyle&)
return isURLAllowed();
}

RenderElement* HTMLFrameElement::createRenderer(RenderArena& arena, RenderStyle&)
RenderElement* HTMLFrameElement::createRenderer(RenderStyle&)
{
return new (arena) RenderFrame(*this);
return new RenderFrame(*this);
}

bool HTMLFrameElement::noResize() const
@@ -42,7 +42,7 @@ class HTMLFrameElement FINAL : public HTMLFrameElementBase {
virtual void didAttachRenderers() OVERRIDE;

virtual bool rendererIsNeeded(const RenderStyle&);
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);

virtual void parseAttribute(const QualifiedName&, const AtomicString&) OVERRIDE;

@@ -155,12 +155,12 @@ bool HTMLFrameSetElement::rendererIsNeeded(const RenderStyle& style)
return style.isStyleAvailable();
}

RenderElement* HTMLFrameSetElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLFrameSetElement::createRenderer(RenderStyle& style)
{
if (style.hasContent())
return RenderElement::createFor(*this, style);

return new (arena) RenderFrameSet(*this);
return new RenderFrameSet(*this);
}

HTMLFrameSetElement* HTMLFrameSetElement::findContaining(Element* descendant)
@@ -75,7 +75,7 @@ class HTMLFrameSetElement FINAL : public HTMLElement {

virtual void willAttachRenderers() OVERRIDE;
virtual bool rendererIsNeeded(const RenderStyle&);
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);

virtual void defaultEventHandler(Event*);

@@ -95,9 +95,9 @@ bool HTMLIFrameElement::rendererIsNeeded(const RenderStyle& style)
return isURLAllowed() && style.display() != NONE;
}

RenderElement* HTMLIFrameElement::createRenderer(RenderArena& arena, RenderStyle&)
RenderElement* HTMLIFrameElement::createRenderer(RenderStyle&)
{
return new (arena) RenderIFrame(*this);
return new RenderIFrame(*this);
}

bool HTMLIFrameElement::shouldDisplaySeamlessly() const
@@ -42,7 +42,7 @@ class HTMLIFrameElement FINAL : public HTMLFrameElementBase {
virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;

virtual bool rendererIsNeeded(const RenderStyle&);
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&);
virtual RenderElement* createRenderer(RenderStyle&);

virtual void didRecalcStyle(Style::Change) OVERRIDE;
};
@@ -177,12 +177,12 @@ String HTMLImageElement::altText() const
return alt;
}

RenderElement* HTMLImageElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLImageElement::createRenderer(RenderStyle& style)
{
if (style.hasContent())
return RenderElement::createFor(*this, style);

RenderImage* image = new (arena) RenderImage(*this);
RenderImage* image = new RenderImage(*this);
image->setImageResource(RenderImageResource::create());
return image;
}
@@ -98,7 +98,7 @@ class HTMLImageElement : public HTMLElement, public FormNamedItem {
virtual void collectStyleForPresentationAttribute(const QualifiedName&, const AtomicString&, MutableStylePropertySet*) OVERRIDE;

virtual void didAttachRenderers() OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;

virtual bool canStartSelection() const OVERRIDE;

@@ -791,9 +791,9 @@ bool HTMLInputElement::rendererIsNeeded(const RenderStyle& style)
return m_inputType->rendererIsNeeded() && HTMLTextFormControlElement::rendererIsNeeded(style);
}

RenderElement* HTMLInputElement::createRenderer(RenderArena& arena, RenderStyle& style)
RenderElement* HTMLInputElement::createRenderer(RenderStyle& style)
{
return m_inputType->createRenderer(arena, style);
return m_inputType->createRenderer(style);
}

void HTMLInputElement::willAttachRenderers()
@@ -200,7 +200,7 @@ class HTMLInputElement : public HTMLTextFormControlElement {
bool canHaveSelection() const;

virtual bool rendererIsNeeded(const RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderArena&, RenderStyle&) OVERRIDE;
virtual RenderElement* createRenderer(RenderStyle&) OVERRIDE;
virtual void willAttachRenderers() OVERRIDE;
virtual void didAttachRenderers() OVERRIDE;
virtual void didDetachRenderers() OVERRIDE;

0 comments on commit 7a4134b

Please sign in to comment.