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

Side by Side Diff: Source/WebCore/rendering/RenderObject.cpp

Issue 8666016: Merge 100630 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/912/
Patch Set: Created 9 years, 1 month 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 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 bool RenderObject::isLegend() const 261 bool RenderObject::isLegend() const
262 { 262 {
263 return node() && node()->hasTagName(legendTag); 263 return node() && node()->hasTagName(legendTag);
264 } 264 }
265 265
266 bool RenderObject::isHTMLMarquee() const 266 bool RenderObject::isHTMLMarquee() const
267 { 267 {
268 return node() && node()->renderer() == this && node()->hasTagName(marqueeTag ); 268 return node() && node()->renderer() == this && node()->hasTagName(marqueeTag );
269 } 269 }
270 270
271 static bool isBeforeAfterContentGeneratedByAncestor(RenderObject* renderer, Rend erObject* beforeAfterContent)
272 {
273 while (renderer) {
274 if (renderer->generatingNode() == beforeAfterContent->generatingNode())
275 return true;
276 renderer = renderer->parent();
277 }
278 return false;
279 }
280
271 void RenderObject::addChild(RenderObject* newChild, RenderObject* beforeChild) 281 void RenderObject::addChild(RenderObject* newChild, RenderObject* beforeChild)
272 { 282 {
273 RenderObjectChildList* children = virtualChildren(); 283 RenderObjectChildList* children = virtualChildren();
274 ASSERT(children); 284 ASSERT(children);
275 if (!children) 285 if (!children)
276 return; 286 return;
277 287
278 RenderObject* beforeContent = 0; 288 RenderObject* beforeContent = 0;
279 bool beforeChildHasBeforeAndAfterContent = false; 289 bool beforeChildHasBeforeAndAfterContent = false;
280 if (beforeChild && (beforeChild->isTable() || beforeChild->isTableSection() || beforeChild->isTableRow() || beforeChild->isTableCell())) { 290 if (beforeChild && (beforeChild->isTable() || beforeChild->isTableSection() || beforeChild->isTableRow() || beforeChild->isTableCell())) {
281 beforeContent = beforeChild->findBeforeContentRenderer(); 291 beforeContent = beforeChild->beforePseudoElementRenderer();
282 RenderObject* afterContent = beforeChild->findAfterContentRenderer(); 292 RenderObject* afterContent = beforeChild->afterPseudoElementRenderer();
283 if (beforeContent && afterContent) { 293 if (beforeContent && afterContent && isBeforeAfterContentGeneratedByAnce stor(this, beforeContent)) {
284 beforeChildHasBeforeAndAfterContent = true; 294 beforeChildHasBeforeAndAfterContent = true;
285 beforeContent->destroy(); 295 beforeContent->destroy();
286 } 296 }
287 } 297 }
288 298
289 bool needsTable = false; 299 bool needsTable = false;
290 300
291 if (newChild->isTableCol() && newChild->style()->display() == TABLE_COLUMN_G ROUP) 301 if (newChild->isTableCol() && newChild->style()->display() == TABLE_COLUMN_G ROUP)
292 needsTable = !isTable(); 302 needsTable = !isTable();
293 else if (newChild->isRenderBlock() && newChild->style()->display() == TABLE_ CAPTION) 303 else if (newChild->isRenderBlock() && newChild->style()->display() == TABLE_ CAPTION)
(...skipping 2489 matching lines...) Expand 10 before | Expand all | Expand 10 after
2783 { 2793 {
2784 if (object1) { 2794 if (object1) {
2785 const WebCore::RenderObject* root = object1; 2795 const WebCore::RenderObject* root = object1;
2786 while (root->parent()) 2796 while (root->parent())
2787 root = root->parent(); 2797 root = root->parent();
2788 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); 2798 root->showRenderTreeAndMark(object1, "*", object2, "-", 0);
2789 } 2799 }
2790 } 2800 }
2791 2801
2792 #endif 2802 #endif
OLDNEW
« no previous file with comments | « Source/WebCore/rendering/RenderObject.h ('k') | Source/WebCore/rendering/RenderObjectChildList.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698