| OLD | NEW | 
|     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 265 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   276 static bool isBeforeAfterContentGeneratedByAncestor(RenderObject* renderer, Rend
      erObject* beforeAfterContent) |   276 static bool isBeforeAfterContentGeneratedByAncestor(RenderObject* renderer, Rend
      erObject* beforeAfterContent) | 
|   277 { |   277 { | 
|   278     while (renderer) { |   278     while (renderer) { | 
|   279         if (renderer->generatingNode() == beforeAfterContent->generatingNode()) |   279         if (renderer->generatingNode() == beforeAfterContent->generatingNode()) | 
|   280             return true; |   280             return true; | 
|   281         renderer = renderer->parent(); |   281         renderer = renderer->parent(); | 
|   282     } |   282     } | 
|   283     return false; |   283     return false; | 
|   284 } |   284 } | 
|   285  |   285  | 
 |   286 RenderTable* RenderObject::createAnonymousTable() const | 
 |   287 { | 
 |   288     RefPtr<RenderStyle> newStyle = RenderStyle::createAnonymousStyle(style()); | 
 |   289     newStyle->setDisplay(TABLE); | 
 |   290  | 
 |   291     RenderTable* table = new (renderArena()) RenderTable(document() /* is anonym
      ous */); | 
 |   292     table->setStyle(newStyle.release()); | 
 |   293     return table; | 
 |   294 } | 
 |   295  | 
|   286 void RenderObject::addChild(RenderObject* newChild, RenderObject* beforeChild) |   296 void RenderObject::addChild(RenderObject* newChild, RenderObject* beforeChild) | 
|   287 { |   297 { | 
|   288     RenderObjectChildList* children = virtualChildren(); |   298     RenderObjectChildList* children = virtualChildren(); | 
|   289     ASSERT(children); |   299     ASSERT(children); | 
|   290     if (!children) |   300     if (!children) | 
|   291         return; |   301         return; | 
|   292  |   302  | 
|   293     RenderObject* beforeContent = 0; |   303     RenderObject* beforeContent = 0; | 
|   294     bool beforeChildHasBeforeAndAfterContent = false; |   304     bool beforeChildHasBeforeAndAfterContent = false; | 
|   295     if (beforeChild && (beforeChild->isTable() || beforeChild->isTableSection() 
      || beforeChild->isTableRow() || beforeChild->isTableCell())) { |   305     if (beforeChild && (beforeChild->isTable() || beforeChild->isTableSection() 
      || beforeChild->isTableRow() || beforeChild->isTableCell())) { | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
|   320         if (needsTable && isTableCell() && !children->firstChild() && !newChild-
      >isTableCell()) |   330         if (needsTable && isTableCell() && !children->firstChild() && !newChild-
      >isTableCell()) | 
|   321             needsTable = false; |   331             needsTable = false; | 
|   322     } |   332     } | 
|   323  |   333  | 
|   324     if (needsTable) { |   334     if (needsTable) { | 
|   325         RenderTable* table; |   335         RenderTable* table; | 
|   326         RenderObject* afterChild = beforeChild ? beforeChild->previousSibling() 
      : children->lastChild(); |   336         RenderObject* afterChild = beforeChild ? beforeChild->previousSibling() 
      : children->lastChild(); | 
|   327         if (afterChild && afterChild->isAnonymous() && afterChild->isTable() && 
      !afterChild->isBeforeContent()) |   337         if (afterChild && afterChild->isAnonymous() && afterChild->isTable() && 
      !afterChild->isBeforeContent()) | 
|   328             table = toRenderTable(afterChild); |   338             table = toRenderTable(afterChild); | 
|   329         else { |   339         else { | 
|   330             table = new (renderArena()) RenderTable(document() /* is anonymous *
      /); |   340             table = createAnonymousTable(); | 
|   331             RefPtr<RenderStyle> newStyle = RenderStyle::create(); |  | 
|   332             newStyle->inheritFrom(style()); |  | 
|   333             newStyle->setDisplay(TABLE); |  | 
|   334             table->setStyle(newStyle.release()); |  | 
|   335             addChild(table, beforeChild); |   341             addChild(table, beforeChild); | 
|   336         } |   342         } | 
|   337         table->addChild(newChild); |   343         table->addChild(newChild); | 
|   338     } else { |   344     } else { | 
|   339         // Just add it... |   345         // Just add it... | 
|   340         children->insertChildNode(this, newChild, beforeChild); |   346         children->insertChildNode(this, newChild, beforeChild); | 
|   341     } |   347     } | 
|   342  |   348  | 
|   343     if (newChild->isText() && newChild->style()->textTransform() == CAPITALIZE) 
      { |   349     if (newChild->isText() && newChild->style()->textTransform() == CAPITALIZE) 
      { | 
|   344         RefPtr<StringImpl> textToTransform = toRenderText(newChild)->originalTex
      t(); |   350         RefPtr<StringImpl> textToTransform = toRenderText(newChild)->originalTex
      t(); | 
| (...skipping 2476 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  2821 { |  2827 { | 
|  2822     if (object1) { |  2828     if (object1) { | 
|  2823         const WebCore::RenderObject* root = object1; |  2829         const WebCore::RenderObject* root = object1; | 
|  2824         while (root->parent()) |  2830         while (root->parent()) | 
|  2825             root = root->parent(); |  2831             root = root->parent(); | 
|  2826         root->showRenderTreeAndMark(object1, "*", object2, "-", 0); |  2832         root->showRenderTreeAndMark(object1, "*", object2, "-", 0); | 
|  2827     } |  2833     } | 
|  2828 } |  2834 } | 
|  2829  |  2835  | 
|  2830 #endif |  2836 #endif | 
| OLD | NEW |