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

Side by Side Diff: Source/core/layout/LayoutListItem.cpp

Issue 1025213002: Begin tracking why layout is invalidated (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 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 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved. 4 * Copyright (C) 2003, 2004, 2005, 2006, 2010 Apple Inc. All rights reserved.
5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net) 5 * Copyright (C) 2006 Andrew Wellington (proton@wiretapped.net)
6 * 6 *
7 * This library is free software; you can redistribute it and/or 7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Library General Public 8 * modify it under the terms of the GNU Library General Public
9 * License as published by the Free Software Foundation; either 9 * License as published by the Free Software Foundation; either
10 * version 2 of the License, or (at your option) any later version. 10 * version 2 of the License, or (at your option) any later version.
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
246 } 246 }
247 247
248 return 0; 248 return 0;
249 } 249 }
250 250
251 void LayoutListItem::updateValue() 251 void LayoutListItem::updateValue()
252 { 252 {
253 if (!m_hasExplicitValue) { 253 if (!m_hasExplicitValue) {
254 m_isValueUpToDate = false; 254 m_isValueUpToDate = false;
255 if (m_marker) 255 if (m_marker)
256 m_marker->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation( ); 256 m_marker->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation( LayoutInvalidationReason::ListValueChange);
257 } 257 }
258 } 258 }
259 259
260 static LayoutObject* firstNonMarkerChild(LayoutObject* parent) 260 static LayoutObject* firstNonMarkerChild(LayoutObject* parent)
261 { 261 {
262 LayoutObject* result = parent->slowFirstChild(); 262 LayoutObject* result = parent->slowFirstChild();
263 while (result && result->isListMarker()) 263 while (result && result->isListMarker())
264 result = result->nextSibling(); 264 result = result->nextSibling();
265 return result; 265 return result;
266 } 266 }
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
436 const String& LayoutListItem::markerText() const 436 const String& LayoutListItem::markerText() const
437 { 437 {
438 if (m_marker) 438 if (m_marker)
439 return m_marker->text(); 439 return m_marker->text();
440 return nullAtom.string(); 440 return nullAtom.string();
441 } 441 }
442 442
443 void LayoutListItem::explicitValueChanged() 443 void LayoutListItem::explicitValueChanged()
444 { 444 {
445 if (m_marker) 445 if (m_marker)
446 m_marker->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation(); 446 m_marker->setNeedsLayoutAndPrefWidthsRecalcAndFullPaintInvalidation(Layo utInvalidationReason::ListValueChange);
447 Node* listNode = enclosingList(this); 447 Node* listNode = enclosingList(this);
448 for (LayoutListItem* item = this; item; item = nextListItem(listNode, item)) 448 for (LayoutListItem* item = this; item; item = nextListItem(listNode, item))
449 item->updateValue(); 449 item->updateValue();
450 } 450 }
451 451
452 void LayoutListItem::setExplicitValue(int value) 452 void LayoutListItem::setExplicitValue(int value)
453 { 453 {
454 ASSERT(node()); 454 ASSERT(node());
455 455
456 if (m_hasExplicitValue && m_explicitValue == value) 456 if (m_hasExplicitValue && m_explicitValue == value)
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 // assume that all the following ones have too. 514 // assume that all the following ones have too.
515 // This gives us the opportunity to stop here and avoid 515 // This gives us the opportunity to stop here and avoid
516 // marking the same nodes again. 516 // marking the same nodes again.
517 break; 517 break;
518 } 518 }
519 item->updateValue(); 519 item->updateValue();
520 } 520 }
521 } 521 }
522 522
523 } // namespace blink 523 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698