Bug 120233

Summary: Let Document keep its RenderView during render tree detach.
Product: WebKit Reporter: Andreas Kling <kling>
Component: Layout and RenderingAssignee: Andreas Kling <kling>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, esprehn+autocc, glenn, kangil.han, kling, kondapallykalyan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
koivisto: review-
Patch v2 koivisto: review+

Description Andreas Kling 2013-08-23 14:02:29 PDT
Let Document keep its RenderView during render tree detach.
Comment 1 Andreas Kling 2013-08-23 14:04:44 PDT
Created attachment 209509 [details]
Patch
Comment 2 Antti Koivisto 2013-08-23 14:12:21 PDT
Comment on attachment 209509 [details]
Patch

Search for documentBeingDestroyed()
Comment 3 Andreas Kling 2013-08-24 04:07:07 PDT
Created attachment 209539 [details]
Patch v2

Okay, give Document a flag for "render tree being ripped out LOL" mode.
Comment 4 Antti Koivisto 2013-08-24 04:10:21 PDT
Comment on attachment 209539 [details]
Patch v2

View in context: https://bugs.webkit.org/attachment.cgi?id=209539&action=review

> Source/WebCore/dom/Document.cpp:2038
> +    m_renderTreeBeingDestroyed = true;

maybe TemporaryChange<bool>?
Comment 5 Andreas Kling 2013-08-24 04:20:30 PDT
Committed r154542: <http://trac.webkit.org/changeset/154542>
Comment 6 Darin Adler 2013-08-24 15:12:45 PDT
Comment on attachment 209539 [details]
Patch v2

View in context: https://bugs.webkit.org/attachment.cgi?id=209539&action=review

> Source/WebCore/dom/Document.cpp:483
> +    , m_renderTreeBeingDestroyed(false)

I would call this m_isDestroyingRenderTree as in “document is destroying render tree”.

> Source/WebCore/dom/Document.h:550
> +    bool renderTreeBeingDestroyed() const { return m_renderTreeBeingDestroyed; }

I would call this isDestroyingRenderTree() as in “document is destroying render tree”.
Comment 7 Andreas Kling 2013-08-24 15:14:01 PDT
(In reply to comment #6)
> (From update of attachment 209539 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=209539&action=review
> 
> > Source/WebCore/dom/Document.cpp:483
> > +    , m_renderTreeBeingDestroyed(false)
> 
> I would call this m_isDestroyingRenderTree as in “document is destroying render tree”.
> 
> > Source/WebCore/dom/Document.h:550
> > +    bool renderTreeBeingDestroyed() const { return m_renderTreeBeingDestroyed; }
> 
> I would call this isDestroyingRenderTree() as in “document is destroying render tree”.

Yeah, in retrospect that is a better name.
isDetachingRenderTree() is another alternative.