WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
for bots
anonymous-renderview-4.patch (text/plain), 7.11 KB, created by
Antti Koivisto
on 2013-09-08 13:42:04 PDT
(
hide
)
Description:
for bots
Filename:
MIME Type:
Creator:
Antti Koivisto
Created:
2013-09-08 13:42:04 PDT
Size:
7.11 KB
patch
obsolete
>Index: Source/WebCore/rendering/RenderBlock.cpp >=================================================================== >--- Source/WebCore/rendering/RenderBlock.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderBlock.cpp (working copy) >@@ -5210,6 +5210,8 @@ Node* RenderBlock::nodeForHitTest() cons > // If we are in the margins of block elements that are part of a > // continuation we're actually still inside the enclosing element > // that was split. Use the appropriate inner node. >+ if (isRenderView()) >+ return &document(); > return isAnonymousBlockContinuation() ? continuation()->node() : node(); > } > >Index: Source/WebCore/rendering/RenderBox.cpp >=================================================================== >--- Source/WebCore/rendering/RenderBox.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderBox.cpp (working copy) >@@ -801,8 +801,7 @@ bool RenderBox::canBeScrolledAndHasScrol > > bool RenderBox::canBeProgramaticallyScrolled() const > { >- Node* node = this->node(); >- if (node && node->isDocumentNode()) >+ if (isRenderView()) > return true; > > if (!hasOverflowClip()) >@@ -812,6 +811,7 @@ bool RenderBox::canBeProgramaticallyScro > if (scrollsOverflow() && hasScrollableOverflow) > return true; > >+ Node* node = this->node(); > return node && node->rendererIsEditable(); > } > >@@ -829,7 +829,7 @@ void RenderBox::autoscroll(const IntPoin > // There are two kinds of renderer that can autoscroll. > bool RenderBox::canAutoscroll() const > { >- if (node() && node()->isDocumentNode()) >+ if (isRenderView()) > return view().frameView().isScrollable(); > > // Check for a box that can be scrolled in its own right. >@@ -862,7 +862,7 @@ IntSize RenderBox::calculateAutoscrollDi > RenderBox* RenderBox::findAutoscrollable(RenderObject* renderer) > { > while (renderer && !(renderer->isBox() && toRenderBox(renderer)->canAutoscroll())) { >- if (!renderer->parent() && renderer->node() == &renderer->document() && renderer->document().ownerElement()) >+ if (!renderer->parent() && renderer->isRenderView() && renderer->document().ownerElement()) > renderer = renderer->document().ownerElement()->renderer(); > else > renderer = renderer->parent(); >@@ -2843,7 +2843,7 @@ LayoutUnit RenderBox::computeReplacedLog > case Calculated: > { > RenderObject* cb = isOutOfFlowPositioned() ? container() : containingBlock(); >- while (cb->isAnonymous()) { >+ while (cb->isAnonymous() && !cb->isRenderView()) { > cb = cb->containingBlock(); > toRenderBlock(cb)->addPercentHeightDescendant(const_cast<RenderBox*>(this)); > } >Index: Source/WebCore/rendering/RenderBoxModelObject.cpp >=================================================================== >--- Source/WebCore/rendering/RenderBoxModelObject.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderBoxModelObject.cpp (working copy) >@@ -228,7 +228,7 @@ bool RenderBoxModelObject::hasAutoHeight > // Anonymous block boxes are ignored when resolving percentage values that would refer to it: > // the closest non-anonymous ancestor box is used instead. > RenderBlock* cb = containingBlock(); >- while (cb->isAnonymous()) >+ while (cb->isAnonymous() && !cb->isRenderView()) > cb = cb->containingBlock(); > > // Matching RenderBox::percentageLogicalHeightIsResolvableFromBlock() by >Index: Source/WebCore/rendering/RenderLayerBacking.cpp >=================================================================== >--- Source/WebCore/rendering/RenderLayerBacking.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderLayerBacking.cpp (working copy) >@@ -1568,7 +1568,7 @@ bool RenderLayerBacking::isSimpleContain > if (renderer().isRenderRegion()) > return false; > >- if (renderer().node() && renderer().node()->isDocumentNode()) { >+ if (renderer().isRenderView()) { > // Look to see if the root object has a non-simple background > RenderObject* rootObject = renderer().document().documentElement() ? renderer().document().documentElement()->renderer() : 0; > if (!rootObject) >Index: Source/WebCore/rendering/RenderObject.h >=================================================================== >--- Source/WebCore/rendering/RenderObject.h (revision 155302) >+++ Source/WebCore/rendering/RenderObject.h (working copy) >@@ -527,7 +527,7 @@ public: > // RenderBlock::createAnonymousBlock(). This includes creating an anonymous > // RenderBlock having a BLOCK or BOX display. Other classes such as RenderTextFragment > // are not RenderBlocks and will return false. See https://bugs.webkit.org/show_bug.cgi?id=56709. >- return isAnonymous() && (style()->display() == BLOCK || style()->display() == BOX) && style()->styleType() == NOPSEUDO && isRenderBlock() && !isListMarker() && !isRenderFlowThread() >+ return isAnonymous() && (style()->display() == BLOCK || style()->display() == BOX) && style()->styleType() == NOPSEUDO && isRenderBlock() && !isListMarker() && !isRenderFlowThread() && !isRenderView() > #if ENABLE(FULLSCREEN_API) > && !isRenderFullScreen() > && !isRenderFullScreenPlaceholder() >Index: Source/WebCore/rendering/RenderTreeAsText.cpp >=================================================================== >--- Source/WebCore/rendering/RenderTreeAsText.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderTreeAsText.cpp (working copy) >@@ -837,11 +837,10 @@ static String nodePosition(Node* node) > > static void writeSelection(TextStream& ts, const RenderObject* o) > { >- Node* n = o->node(); >- if (!n || !n->isDocumentNode()) >+ if (!o->isRenderView()) > return; > >- Document* doc = toDocument(n); >+ Document* doc = &o->document(); > Frame* frame = doc->frame(); > if (!frame) > return; >Index: Source/WebCore/rendering/RenderView.cpp >=================================================================== >--- Source/WebCore/rendering/RenderView.cpp (revision 155302) >+++ Source/WebCore/rendering/RenderView.cpp (working copy) >@@ -57,7 +57,7 @@ > namespace WebCore { > > RenderView::RenderView(Document* document) >- : RenderBlockFlow(document) >+ : RenderBlockFlow(0) > , m_frameView(*document->view()) > , m_selectionStart(0) > , m_selectionEnd(0) >@@ -75,6 +75,8 @@ RenderView::RenderView(Document* documen > , m_hasSoftwareFilters(false) > #endif > { >+ setDocumentForAnonymous(document); >+ > // FIXME: We should find a way to enforce this at compile time. > ASSERT(document->view()); > >Index: Source/WebCore/rendering/svg/RenderSVGRoot.cpp >=================================================================== >--- Source/WebCore/rendering/svg/RenderSVGRoot.cpp (revision 155302) >+++ Source/WebCore/rendering/svg/RenderSVGRoot.cpp (working copy) >@@ -185,7 +185,7 @@ LayoutUnit RenderSVGRoot::computeReplace > if (height.isPercent()) { > RenderBlock* cb = containingBlock(); > ASSERT(cb); >- while (cb->isAnonymous()) { >+ while (cb->isAnonymousBlock()) { > cb = cb->containingBlock(); > cb->addPercentHeightDescendant(const_cast<RenderSVGRoot*>(this)); > }
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
Flags:
buildbot
:
commit-queue-
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 121013
:
210991
|
210997
|
210999
|
211019