Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(73)

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutObject.cpp

Issue 2150003005: Add grid/flex layout support for <fieldset> (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add grid/flex layout support for <fieldset> Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2011 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2009 Google Inc. All rights reserved. 7 * Copyright (C) 2009 Google Inc. All rights reserved.
8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 8 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 2806 matching lines...) Expand 10 before | Expand all | Expand 10 after
2817 2817
2818 void LayoutObject::destroyAndCleanupAnonymousWrappers() 2818 void LayoutObject::destroyAndCleanupAnonymousWrappers()
2819 { 2819 {
2820 // If the tree is destroyed, there is no need for a clean-up phase. 2820 // If the tree is destroyed, there is no need for a clean-up phase.
2821 if (documentBeingDestroyed()) { 2821 if (documentBeingDestroyed()) {
2822 destroy(); 2822 destroy();
2823 return; 2823 return;
2824 } 2824 }
2825 2825
2826 LayoutObject* destroyRoot = this; 2826 LayoutObject* destroyRoot = this;
2827 for (LayoutObject* destroyRootParent = destroyRoot->parent(); destroyRootPar ent && destroyRootParent->isAnonymous(); destroyRoot = destroyRootParent, destro yRootParent = destroyRootParent->parent()) { 2827 for (LayoutObject* destroyRootParent = destroyRoot->parent(); destroyRootPar ent && destroyRootParent->isAnonymous() && !destroyRootParent->parent()->creates AnonymousWrapper(); destroyRoot = destroyRootParent, destroyRootParent = destroy RootParent->parent()) {
2828
2828 // Anonymous block continuations are tracked and destroyed elsewhere (se e the bottom of LayoutBlock::removeChild) 2829 // Anonymous block continuations are tracked and destroyed elsewhere (se e the bottom of LayoutBlock::removeChild)
2829 if (destroyRootParent->isLayoutBlockFlow() && toLayoutBlockFlow(destroyR ootParent)->isAnonymousBlockContinuation()) 2830 if (destroyRootParent->isLayoutBlockFlow() && toLayoutBlockFlow(destroyR ootParent)->isAnonymousBlockContinuation())
2830 break; 2831 break;
2831 // A flow thread is tracked by its containing block. Whether its childre n are removed or not is irrelevant. 2832 // A flow thread is tracked by its containing block. Whether its childre n are removed or not is irrelevant.
2832 if (destroyRootParent->isLayoutFlowThread()) 2833 if (destroyRootParent->isLayoutFlowThread())
2833 break; 2834 break;
2834 2835
2835 if (destroyRootParent->slowFirstChild() != destroyRoot || destroyRootPar ent->slowLastChild() != destroyRoot) 2836 if (destroyRootParent->slowFirstChild() != destroyRoot || destroyRootPar ent->slowLastChild() != destroyRoot)
2836 break; // Need to keep the anonymous parent, since it won't become e mpty by the removal of this layoutObject. 2837 break; // Need to keep the anonymous parent, since it won't become e mpty by the removal of this layoutObject.
2837 } 2838 }
(...skipping 836 matching lines...) Expand 10 before | Expand all | Expand 10 after
3674 const blink::LayoutObject* root = object1; 3675 const blink::LayoutObject* root = object1;
3675 while (root->parent()) 3676 while (root->parent())
3676 root = root->parent(); 3677 root = root->parent();
3677 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0); 3678 root->showLayoutTreeAndMark(object1, "*", object2, "-", 0);
3678 } else { 3679 } else {
3679 WTFLogAlways("%s", "Cannot showLayoutTree. Root is (nil)"); 3680 WTFLogAlways("%s", "Cannot showLayoutTree. Root is (nil)");
3680 } 3681 }
3681 } 3682 }
3682 3683
3683 #endif 3684 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutGrid.cpp ('k') | third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698