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

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

Issue 10459020: Merge 118592 (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1132/
Patch Set: Created 8 years, 6 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 574 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 return 0; 585 return 0;
586 } 586 }
587 587
588 RenderBlock* RenderObject::firstLineBlock() const 588 RenderBlock* RenderObject::firstLineBlock() const
589 { 589 {
590 return 0; 590 return 0;
591 } 591 }
592 592
593 static inline bool objectIsRelayoutBoundary(const RenderObject* object) 593 static inline bool objectIsRelayoutBoundary(const RenderObject* object)
594 { 594 {
595 // FIXME: In future it may be possible to broaden this condition in order to improve performance. 595 // FIXME: In future it may be possible to broaden these conditions in order to improve performance.
596 // Table cells are excluded because even when their CSS height is fixed, the ir height() 596 if (object->isTextControl())
597 // may depend on their contents. 597 return true;
598 return object->isTextControl() 598
599 #if ENABLE(SVG) 599 #if ENABLE(SVG)
600 || object->isSVGRoot() 600 if (object->isSVGRoot())
601 return true;
601 #endif 602 #endif
602 || (object->hasOverflowClip() && !object->style()->width().isIntrinsicOr Auto() && !object->style()->height().isIntrinsicOrAuto() && !object->style()->he ight().isPercent() && !object->isTableCell()); 603
604 if (!object->hasOverflowClip())
605 return false;
606
607 if (object->style()->width().isIntrinsicOrAuto() || object->style()->height( ).isIntrinsicOrAuto() || object->style()->height().isPercent())
608 return false;
609
610 // Table parts can't be relayout roots since the table is responsible for la youting all the parts.
611 if (object->isTablePart())
612 return false;
613
614 return true;
603 } 615 }
604 616
605 void RenderObject::markContainingBlocksForLayout(bool scheduleRelayout, RenderOb ject* newRoot) 617 void RenderObject::markContainingBlocksForLayout(bool scheduleRelayout, RenderOb ject* newRoot)
606 { 618 {
607 ASSERT(!scheduleRelayout || !newRoot); 619 ASSERT(!scheduleRelayout || !newRoot);
608 620
609 RenderObject* object = container(); 621 RenderObject* object = container();
610 RenderObject* last = this; 622 RenderObject* last = this;
611 623
612 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self NeedsLayout() && !normalChildNeedsLayout(); 624 bool simplifiedNormalFlowLayout = needsSimplifiedNormalFlowLayout() && !self NeedsLayout() && !normalChildNeedsLayout();
(...skipping 2324 matching lines...) Expand 10 before | Expand all | Expand 10 after
2937 { 2949 {
2938 if (object1) { 2950 if (object1) {
2939 const WebCore::RenderObject* root = object1; 2951 const WebCore::RenderObject* root = object1;
2940 while (root->parent()) 2952 while (root->parent())
2941 root = root->parent(); 2953 root = root->parent();
2942 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); 2954 root->showRenderTreeAndMark(object1, "*", object2, "-", 0);
2943 } 2955 }
2944 } 2956 }
2945 2957
2946 #endif 2958 #endif
OLDNEW
« no previous file with comments | « LayoutTests/tables/table-section-overflow-clip-crash-expected.txt ('k') | Source/WebCore/rendering/RenderTableSection.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698