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

Side by Side Diff: third_party/WebKit/Source/core/layout/line/InlineBox.cpp

Issue 2051333005: Let FrameView track object paint invalidations (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@TrackInvalidation
Patch Set: NeedsRebaseline Created 4 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) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved. 2 * Copyright (C) 2003, 2004, 2005, 2006, 2007 Apple Inc. All rights reserved.
3 * 3 *
4 * This library is free software; you can redistribute it and/or 4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public 5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either 6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version. 7 * version 2 of the License, or (at your option) any later version.
8 * 8 *
9 * This library is distributed in the hope that it will be useful, 9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after
373 373
374 LayoutPoint InlineBox::flipForWritingMode(const LayoutPoint& point) const 374 LayoutPoint InlineBox::flipForWritingMode(const LayoutPoint& point) const
375 { 375 {
376 if (!UNLIKELY(getLineLayoutItem().hasFlippedBlocksWritingMode())) 376 if (!UNLIKELY(getLineLayoutItem().hasFlippedBlocksWritingMode()))
377 return point; 377 return point;
378 return root().block().flipForWritingMode(point); 378 return root().block().flipForWritingMode(point);
379 } 379 }
380 380
381 void InlineBox::invalidateDisplayItemClientsRecursively() 381 void InlineBox::invalidateDisplayItemClientsRecursively()
382 { 382 {
383 getLineLayoutItem().invalidateDisplayItemClient(*this); 383 getLineLayoutItem().invalidateDisplayItemClient(*this, PaintInvalidationFull );
384 if (!isInlineFlowBox()) 384 if (!isInlineFlowBox())
385 return; 385 return;
386 for (InlineBox* child = toInlineFlowBox(this)->firstChild(); child; child = child->nextOnLine()) 386 for (InlineBox* child = toInlineFlowBox(this)->firstChild(); child; child = child->nextOnLine())
387 child->invalidateDisplayItemClientsRecursively(); 387 child->invalidateDisplayItemClientsRecursively();
388 } 388 }
389 389
390 } // namespace blink 390 } // namespace blink
391 391
392 #ifndef NDEBUG 392 #ifndef NDEBUG
393 393
394 void showTree(const blink::InlineBox* b) 394 void showTree(const blink::InlineBox* b)
395 { 395 {
396 if (b) 396 if (b)
397 b->showTreeForThis(); 397 b->showTreeForThis();
398 else 398 else
399 fprintf(stderr, "Cannot showTree for (nil) InlineBox.\n"); 399 fprintf(stderr, "Cannot showTree for (nil) InlineBox.\n");
400 } 400 }
401 401
402 void showLineTree(const blink::InlineBox* b) 402 void showLineTree(const blink::InlineBox* b)
403 { 403 {
404 if (b) 404 if (b)
405 b->showLineTreeForThis(); 405 b->showLineTreeForThis();
406 else 406 else
407 fprintf(stderr, "Cannot showLineTree for (nil) InlineBox.\n"); 407 fprintf(stderr, "Cannot showLineTree for (nil) InlineBox.\n");
408 } 408 }
409 409
410 #endif 410 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698