Index: Source/core/rendering/RenderObject.cpp |
diff --git a/Source/core/rendering/RenderObject.cpp b/Source/core/rendering/RenderObject.cpp |
index 99218f852b05ae1b1877c0567bdb216889ca18a3..689e36c6d1ee9f8e74c2ddc80717147a26099333 100644 |
--- a/Source/core/rendering/RenderObject.cpp |
+++ b/Source/core/rendering/RenderObject.cpp |
@@ -136,7 +136,7 @@ void RenderObject::operator delete(void* ptr) |
RenderObject* RenderObject::createObject(Element* element, RenderStyle* style) |
{ |
- Document* doc = element->document(); |
+ Document& doc = element->document(); |
// Minimal support for content properties replacing an entire element. |
// Works only if we have exactly one piece of content and it's a URL. |
@@ -166,13 +166,13 @@ RenderObject* RenderObject::createObject(Element* element, RenderStyle* style) |
// treat <rt> as ruby text ONLY if it still has its default treatment of block |
if (element->hasTagName(rtTag) && style->display() == BLOCK) |
return new RenderRubyText(element); |
- if (RuntimeEnabledFeatures::cssRegionsEnabled() && style->isDisplayRegionType() && !style->regionThread().isEmpty() && doc->renderView()) |
+ if (RuntimeEnabledFeatures::cssRegionsEnabled() && style->isDisplayRegionType() && !style->regionThread().isEmpty() && doc.renderView()) |
return new RenderRegion(element, 0); |
if (style->display() == RUN_IN) |
- UseCounter::count(doc, UseCounter::CSSDisplayRunIn); |
+ UseCounter::count(&doc, UseCounter::CSSDisplayRunIn); |
else if (style->display() == COMPACT) |
- UseCounter::count(doc, UseCounter::CSSDisplayCompact); |
+ UseCounter::count(&doc, UseCounter::CSSDisplayCompact); |
switch (style->display()) { |
case NONE: |
@@ -183,7 +183,7 @@ RenderObject* RenderObject::createObject(Element* element, RenderStyle* style) |
case INLINE_BLOCK: |
case RUN_IN: |
case COMPACT: |
- if ((!style->hasAutoColumnCount() || !style->hasAutoColumnWidth()) && doc->regionBasedColumnsEnabled()) |
+ if ((!style->hasAutoColumnCount() || !style->hasAutoColumnWidth()) && doc.regionBasedColumnsEnabled()) |
return new RenderMultiColumnBlock(element); |
return new RenderBlock(element); |
case LIST_ITEM: |
@@ -1139,12 +1139,12 @@ void RenderObject::addPDFURLRect(GraphicsContext* context, const LayoutRect& rec |
const AtomicString& href = toElement(n)->getAttribute(hrefAttr); |
if (href.isNull()) |
return; |
- KURL url = n->document()->completeURL(href); |
+ KURL url = n->document().completeURL(href); |
if (!url.isValid()) |
return; |
- if (context->supportsURLFragments() && url.hasFragmentIdentifier() && equalIgnoringFragmentIdentifier(url, n->document()->baseURL())) { |
+ if (context->supportsURLFragments() && url.hasFragmentIdentifier() && equalIgnoringFragmentIdentifier(url, n->document().baseURL())) { |
String name = url.fragmentIdentifier(); |
- if (document()->findAnchor(name)) |
+ if (document().findAnchor(name)) |
context->setURLFragmentForRect(name, pixelSnappedIntRect(rect)); |
return; |
} |
@@ -1320,7 +1320,7 @@ RenderLayerModelObject* RenderObject::containerForRepaint() const |
} |
} |
- if (document()->view()->hasSoftwareFilters()) { |
+ if (document().view()->hasSoftwareFilters()) { |
if (RenderLayer* parentLayer = enclosingLayer()) { |
RenderLayer* enclosingFilterLayer = parentLayer->enclosingFilterLayer(); |
if (enclosingFilterLayer) |
@@ -1335,7 +1335,7 @@ RenderLayerModelObject* RenderObject::containerForRepaint() const |
if (parentRenderFlowThread) { |
// The ancestor document will do the reparenting when the repaint propagates further up. |
// We're just a seamless child document, and we don't need to do the hacking. |
- if (parentRenderFlowThread && parentRenderFlowThread->document() != document()) |
+ if (&parentRenderFlowThread && &parentRenderFlowThread->document() != &document()) |
return repaintContainer; |
// If we have already found a repaint container then we will repaint into that container only if it is part of the same |
// flow thread. Otherwise we will need to catch the repaint call and send it to the flow thread. |
@@ -1542,7 +1542,7 @@ bool RenderObject::repaintAfterLayoutIfNeeded(const RenderLayerModelObject* repa |
bool RenderObject::checkForRepaintDuringLayout() const |
{ |
- return !document()->view()->needsFullRepaint() && !hasLayer() && everHadLayout(); |
+ return !document().view()->needsFullRepaint() && !hasLayer() && everHadLayout(); |
} |
LayoutRect RenderObject::rectWithOutlineForRepaint(const RenderLayerModelObject* repaintContainer, LayoutUnit outlineWidth) const |
@@ -1914,8 +1914,8 @@ void RenderObject::styleWillChange(StyleDifference diff, const RenderStyle* newS |
|| m_style->zIndex() != newStyle->zIndex() |
|| m_style->hasAutoZIndex() != newStyle->hasAutoZIndex(); |
if (visibilityChanged) { |
- document()->setAnnotatedRegionsDirty(true); |
- if (AXObjectCache* cache = document()->existingAXObjectCache()) |
+ document().setAnnotatedRegionsDirty(true); |
+ if (AXObjectCache* cache = document().existingAXObjectCache()) |
cache->childrenChanged(parent()); |
} |
@@ -1974,7 +1974,7 @@ void RenderObject::styleWillChange(StyleDifference diff, const RenderStyle* newS |
bool newStyleSlowScroll = newStyle && !shouldBlitOnFixedBackgroundImage && newStyle->hasFixedBackgroundImage(); |
bool oldStyleSlowScroll = m_style && !shouldBlitOnFixedBackgroundImage && m_style->hasFixedBackgroundImage(); |
- bool drawsRootBackground = isRoot() || (isBody() && !rendererHasBackground(document()->documentElement()->renderer())); |
+ bool drawsRootBackground = isRoot() || (isBody() && !rendererHasBackground(document().documentElement()->renderer())); |
if (drawsRootBackground && !shouldBlitOnFixedBackgroundImage) { |
if (view()->compositor()->supportsFixedRootBackgroundCompositing()) { |
if (newStyleSlowScroll && newStyle->hasEntirelyFixedBackground()) |
@@ -2373,7 +2373,7 @@ RenderObject* RenderObject::rendererForRootBackground() |
// to crawl around a render tree with potential :before/:after content and |
// anonymous blocks created by inline <body> tags etc. We can locate the <body> |
// render object very easily via the DOM. |
- HTMLElement* body = document()->body(); |
+ HTMLElement* body = document().body(); |
RenderObject* bodyObject = (body && body->hasLocalName(bodyTag)) ? body->renderer() : 0; |
if (bodyObject) |
return bodyObject; |
@@ -2386,13 +2386,13 @@ RespectImageOrientationEnum RenderObject::shouldRespectImageOrientation() const |
{ |
// Respect the image's orientation if it's being used as a full-page image or it's |
// an <img> and the setting to respect it everywhere is set. |
- return document()->isImageDocument() || |
- (document()->settings() && document()->settings()->shouldRespectImageOrientation() && node() && node()->hasTagName(HTMLNames::imgTag)) ? RespectImageOrientation : DoNotRespectImageOrientation; |
+ return document().isImageDocument() |
+ || (document().settings() && document().settings()->shouldRespectImageOrientation() && node() && node()->hasTagName(HTMLNames::imgTag)) ? RespectImageOrientation : DoNotRespectImageOrientation; |
} |
bool RenderObject::hasOutlineAnnotation() const |
{ |
- return node() && node()->isLink() && document()->printing(); |
+ return node() && node()->isLink() && document().printing(); |
} |
bool RenderObject::hasEntirelyFixedBackground() const |
@@ -2504,14 +2504,14 @@ void RenderObject::willBeDestroyed() |
// For accessibility management, notify the parent of the imminent change to its child set. |
// We do it now, before remove(), while the parent pointer is still available. |
- if (AXObjectCache* cache = document()->existingAXObjectCache()) |
+ if (AXObjectCache* cache = document().existingAXObjectCache()) |
cache->childrenChanged(this->parent()); |
remove(); |
// The remove() call above may invoke axObjectCache()->childrenChanged() on the parent, which may require the AX render |
// object for this renderer. So we remove the AX render object now, after the renderer is removed. |
- if (AXObjectCache* cache = document()->existingAXObjectCache()) |
+ if (AXObjectCache* cache = document().existingAXObjectCache()) |
cache->remove(this); |
#ifndef NDEBUG |
@@ -2843,7 +2843,7 @@ static PassRefPtr<RenderStyle> firstLineStyleForCachedUncachedType(StyleCacheSta |
PassRefPtr<RenderStyle> RenderObject::uncachedFirstLineStyle(RenderStyle* style) const |
{ |
- if (!document()->styleSheetCollections()->usesFirstLineRules()) |
+ if (!document().styleSheetCollections()->usesFirstLineRules()) |
return 0; |
ASSERT(!isText()); |
@@ -2853,7 +2853,7 @@ PassRefPtr<RenderStyle> RenderObject::uncachedFirstLineStyle(RenderStyle* style) |
RenderStyle* RenderObject::cachedFirstLineStyle() const |
{ |
- ASSERT(document()->styleSheetCollections()->usesFirstLineRules()); |
+ ASSERT(document().styleSheetCollections()->usesFirstLineRules()); |
if (RefPtr<RenderStyle> style = firstLineStyleForCachedUncachedType(Cached, isText() ? parent() : this, m_style.get())) |
return style.get(); |
@@ -2895,12 +2895,12 @@ PassRefPtr<RenderStyle> RenderObject::getUncachedPseudoStyle(const PseudoStyleRe |
Element* element = toElement(n); |
if (pseudoStyleRequest.pseudoId == FIRST_LINE_INHERITED) { |
- RefPtr<RenderStyle> result = document()->styleResolver()->styleForElement(element, parentStyle, DisallowStyleSharing); |
+ RefPtr<RenderStyle> result = document().styleResolver()->styleForElement(element, parentStyle, DisallowStyleSharing); |
result->setStyleType(FIRST_LINE_INHERITED); |
return result.release(); |
} |
- return document()->styleResolver()->pseudoStyleForElement(element, pseudoStyleRequest, parentStyle); |
+ return document().styleResolver()->pseudoStyleForElement(element, pseudoStyleRequest, parentStyle); |
} |
bool RenderObject::hasBlendMode() const |
@@ -3008,12 +3008,12 @@ bool RenderObject::willRenderImage(ImageResource*) |
return false; |
// We will not render a new image when Active DOM is suspended |
- if (document()->activeDOMObjectsAreSuspended()) |
+ if (document().activeDOMObjectsAreSuspended()) |
return false; |
// If we're not in a window (i.e., we're dormant from being in a background tab) |
// then we don't want to render either. |
- return !document()->view()->isOffscreen(); |
+ return !document().view()->isOffscreen(); |
} |
int RenderObject::maximalOutlineSize(PaintPhase p) const |
@@ -3127,7 +3127,7 @@ Element* RenderObject::offsetParent() const |
// CSS regions specification says that region flows should return the body element as their offsetParent. |
if (ancestor->isRenderNamedFlowThread()) |
- return document()->body(); |
+ return document().body(); |
node = ancestor->node(); |