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

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

Issue 18601002: Add infrastructure for partial layouts (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: If text autosizing is enabled, only partial layout for the second of two layouts Created 7 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 | Annotate | Revision Log
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 728 matching lines...) Expand 10 before | Expand all | Expand 10 after
739 } 739 }
740 740
741 #ifndef NDEBUG 741 #ifndef NDEBUG
742 void RenderObject::checkBlockPositionedObjectsNeedLayout() 742 void RenderObject::checkBlockPositionedObjectsNeedLayout()
743 { 743 {
744 ASSERT(!needsLayout()); 744 ASSERT(!needsLayout());
745 745
746 if (isRenderBlock()) 746 if (isRenderBlock())
747 toRenderBlock(this)->checkPositionedObjectsNeedLayout(); 747 toRenderBlock(this)->checkPositionedObjectsNeedLayout();
748 } 748 }
749
750 void RenderObject::checkNotInPartialLayout()
751 {
752 if (frame()) {
esprehn 2013/08/18 03:43:15 Add a frameView(), also I don't know how this can
pdr. 2013/08/20 06:19:10 Done. I changed this to not even check for null s
753 if (FrameView* view = frame()->view()) {
754 // During partial layout, setNeedsLayout(true or false) should not b e called.
755 ASSERT(!view->shouldStopPartialLayout());
756 }
757 }
758 }
749 #endif 759 #endif
750 760
751 void RenderObject::setPreferredLogicalWidthsDirty(bool shouldBeDirty, MarkingBeh avior markParents) 761 void RenderObject::setPreferredLogicalWidthsDirty(bool shouldBeDirty, MarkingBeh avior markParents)
752 { 762 {
753 bool alreadyDirty = preferredLogicalWidthsDirty(); 763 bool alreadyDirty = preferredLogicalWidthsDirty();
754 m_bitfields.setPreferredLogicalWidthsDirty(shouldBeDirty); 764 m_bitfields.setPreferredLogicalWidthsDirty(shouldBeDirty);
755 if (shouldBeDirty && !alreadyDirty && markParents == MarkContainingBlockChai n && (isText() || !style()->hasOutOfFlowPosition())) 765 if (shouldBeDirty && !alreadyDirty && markParents == MarkContainingBlockChai n && (isText() || !style()->hasOutOfFlowPosition()))
756 invalidateContainerPreferredLogicalWidths(); 766 invalidateContainerPreferredLogicalWidths();
757 } 767 }
758 768
(...skipping 2576 matching lines...) Expand 10 before | Expand all | Expand 10 after
3335 { 3345 {
3336 if (object1) { 3346 if (object1) {
3337 const WebCore::RenderObject* root = object1; 3347 const WebCore::RenderObject* root = object1;
3338 while (root->parent()) 3348 while (root->parent())
3339 root = root->parent(); 3349 root = root->parent();
3340 root->showRenderTreeAndMark(object1, "*", object2, "-", 0); 3350 root->showRenderTreeAndMark(object1, "*", object2, "-", 0);
3341 } 3351 }
3342 } 3352 }
3343 3353
3344 #endif 3354 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698