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

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

Issue 16402019: Remove clips where we can show that they are unnecessary. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: per jchaffraix 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
« no previous file with comments | « Source/core/rendering/RenderBlock.cpp ('k') | Source/core/rendering/RenderBox.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved. 3 * Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ight reserved.
4 * Copyright (C) 2010 Google Inc. All rights reserved. 4 * Copyright (C) 2010 Google Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 3297 matching lines...) Expand 10 before | Expand all | Expand 10 after
3308 } 3308 }
3309 3309
3310 void RenderBlock::addOverflowFromInlineChildren() 3310 void RenderBlock::addOverflowFromInlineChildren()
3311 { 3311 {
3312 LayoutUnit endPadding = hasOverflowClip() ? paddingEnd() : LayoutUnit(); 3312 LayoutUnit endPadding = hasOverflowClip() ? paddingEnd() : LayoutUnit();
3313 // FIXME: Need to find another way to do this, since scrollbars could show w hen we don't want them to. 3313 // FIXME: Need to find another way to do this, since scrollbars could show w hen we don't want them to.
3314 if (hasOverflowClip() && !endPadding && node() && node()->isRootEditableElem ent() && style()->isLeftToRightDirection()) 3314 if (hasOverflowClip() && !endPadding && node() && node()->isRootEditableElem ent() && style()->isLeftToRightDirection())
3315 endPadding = 1; 3315 endPadding = 1;
3316 for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) { 3316 for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) {
3317 addLayoutOverflow(curr->paddedLayoutOverflowRect(endPadding)); 3317 addLayoutOverflow(curr->paddedLayoutOverflowRect(endPadding));
3318 if (!hasOverflowClip()) 3318 LayoutRect visualOverflow = curr->visualOverflowRect(curr->lineTop(), cu rr->lineBottom());
3319 addVisualOverflow(curr->visualOverflowRect(curr->lineTop(), curr->li neBottom())); 3319 addContentsVisualOverflow(visualOverflow);
3320 } 3320 }
3321 } 3321 }
3322 3322
3323 void RenderBlock::deleteEllipsisLineBoxes() 3323 void RenderBlock::deleteEllipsisLineBoxes()
3324 { 3324 {
3325 ETextAlign textAlign = style()->textAlign(); 3325 ETextAlign textAlign = style()->textAlign();
3326 bool ltr = style()->isLeftToRightDirection(); 3326 bool ltr = style()->isLeftToRightDirection();
3327 bool firstLine = true; 3327 bool firstLine = true;
3328 for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) { 3328 for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) {
3329 if (curr->hasEllipsisBox()) { 3329 if (curr->hasEllipsisBox()) {
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
3479 lineGridBox->alignBoxesInBlockDirection(logicalHeight(), textBoxDataMap, ver ticalPositionCache); 3479 lineGridBox->alignBoxesInBlockDirection(logicalHeight(), textBoxDataMap, ver ticalPositionCache);
3480 3480
3481 setLineGridBox(lineGridBox); 3481 setLineGridBox(lineGridBox);
3482 3482
3483 // FIXME: If any of the characteristics of the box change compared to the ol d one, then we need to do a deep dirtying 3483 // FIXME: If any of the characteristics of the box change compared to the ol d one, then we need to do a deep dirtying
3484 // (similar to what happens when the page height changes). Ideally, though, we only do this if someone is actually snapping 3484 // (similar to what happens when the page height changes). Ideally, though, we only do this if someone is actually snapping
3485 // to this grid. 3485 // to this grid.
3486 } 3486 }
3487 3487
3488 } 3488 }
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderBlock.cpp ('k') | Source/core/rendering/RenderBox.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698