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

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

Issue 2701993002: DO NOT COMMIT: Results of running new (proposed) clang-format on Blink (Closed)
Patch Set: Created 3 years, 10 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) 2012 Apple Inc. All rights reserved. 2 * Copyright (C) 2012 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 const LayoutBlockFlow& blockFlow = toLayoutBlockFlow(object); 106 const LayoutBlockFlow& blockFlow = toLayoutBlockFlow(object);
107 return !blockFlow.createsNewFormattingContext() && 107 return !blockFlow.createsNewFormattingContext() &&
108 !blockFlow.hasTransformRelatedProperty() && 108 !blockFlow.hasTransformRelatedProperty() &&
109 blockFlow.getPaginationBreakability() != LayoutBox::ForbidBreaks && 109 blockFlow.getPaginationBreakability() != LayoutBox::ForbidBreaks &&
110 !isMultiColumnContainer(blockFlow); 110 !isMultiColumnContainer(blockFlow);
111 } 111 }
112 112
113 static inline bool hasAnyColumnSpanners( 113 static inline bool hasAnyColumnSpanners(
114 const LayoutMultiColumnFlowThread& flowThread) { 114 const LayoutMultiColumnFlowThread& flowThread) {
115 LayoutBox* firstBox = flowThread.firstMultiColumnBox(); 115 LayoutBox* firstBox = flowThread.firstMultiColumnBox();
116 return firstBox && (firstBox != flowThread.lastMultiColumnBox() || 116 return firstBox &&
117 firstBox->isLayoutMultiColumnSpannerPlaceholder()); 117 (firstBox != flowThread.lastMultiColumnBox() ||
118 firstBox->isLayoutMultiColumnSpannerPlaceholder());
118 } 119 }
119 120
120 // Find the next layout object that has the multicol container in its containing 121 // Find the next layout object that has the multicol container in its containing
121 // block chain, skipping nested multicol containers. 122 // block chain, skipping nested multicol containers.
122 static LayoutObject* nextInPreOrderAfterChildrenSkippingOutOfFlow( 123 static LayoutObject* nextInPreOrderAfterChildrenSkippingOutOfFlow(
123 LayoutMultiColumnFlowThread* flowThread, 124 LayoutMultiColumnFlowThread* flowThread,
124 LayoutObject* descendant) { 125 LayoutObject* descendant) {
125 ASSERT(descendant->isDescendantOf(flowThread)); 126 ASSERT(descendant->isDescendantOf(flowThread));
126 LayoutObject* object = descendant->nextInPreOrderAfterChildren(flowThread); 127 LayoutObject* object = descendant->nextInPreOrderAfterChildren(flowThread);
127 while (object) { 128 while (object) {
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
415 const LayoutPoint& visualPoint) const { 416 const LayoutPoint& visualPoint) const {
416 LayoutUnit blockOffset = 417 LayoutUnit blockOffset =
417 isHorizontalWritingMode() ? visualPoint.y() : visualPoint.x(); 418 isHorizontalWritingMode() ? visualPoint.y() : visualPoint.x();
418 const LayoutMultiColumnSet* columnSet = nullptr; 419 const LayoutMultiColumnSet* columnSet = nullptr;
419 for (const LayoutMultiColumnSet* candidate = firstMultiColumnSet(); candidate; 420 for (const LayoutMultiColumnSet* candidate = firstMultiColumnSet(); candidate;
420 candidate = candidate->nextSiblingMultiColumnSet()) { 421 candidate = candidate->nextSiblingMultiColumnSet()) {
421 columnSet = candidate; 422 columnSet = candidate;
422 if (candidate->logicalBottom() > blockOffset) 423 if (candidate->logicalBottom() > blockOffset)
423 break; 424 break;
424 } 425 }
425 return columnSet 426 return columnSet ? columnSet->visualPointToFlowThreadPoint(toLayoutPoint(
426 ? columnSet->visualPointToFlowThreadPoint(toLayoutPoint( 427 visualPoint + location() - columnSet->location()))
427 visualPoint + location() - columnSet->location())) 428 : visualPoint;
428 : visualPoint;
429 } 429 }
430 430
431 int LayoutMultiColumnFlowThread::inlineBlockBaseline( 431 int LayoutMultiColumnFlowThread::inlineBlockBaseline(
432 LineDirectionMode lineDirection) const { 432 LineDirectionMode lineDirection) const {
433 LayoutUnit baselineInFlowThread = 433 LayoutUnit baselineInFlowThread =
434 LayoutUnit(LayoutFlowThread::inlineBlockBaseline(lineDirection)); 434 LayoutUnit(LayoutFlowThread::inlineBlockBaseline(lineDirection));
435 LayoutMultiColumnSet* columnSet = 435 LayoutMultiColumnSet* columnSet =
436 columnSetAtBlockOffset(baselineInFlowThread, AssociateWithLatterPage); 436 columnSetAtBlockOffset(baselineInFlowThread, AssociateWithLatterPage);
437 if (!columnSet) 437 if (!columnSet)
438 return baselineInFlowThread.toInt(); 438 return baselineInFlowThread.toInt();
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
717 unsigned computedColumnCount = max<int>(1, columnStyle->columnCount()); 717 unsigned computedColumnCount = max<int>(1, columnStyle->columnCount());
718 718
719 ASSERT(!columnStyle->hasAutoColumnCount() || 719 ASSERT(!columnStyle->hasAutoColumnCount() ||
720 !columnStyle->hasAutoColumnWidth()); 720 !columnStyle->hasAutoColumnWidth());
721 if (columnStyle->hasAutoColumnWidth() && !columnStyle->hasAutoColumnCount()) { 721 if (columnStyle->hasAutoColumnWidth() && !columnStyle->hasAutoColumnCount()) {
722 count = computedColumnCount; 722 count = computedColumnCount;
723 width = ((availableWidth - ((count - 1) * columnGap)) / count) 723 width = ((availableWidth - ((count - 1) * columnGap)) / count)
724 .clampNegativeToZero(); 724 .clampNegativeToZero();
725 } else if (!columnStyle->hasAutoColumnWidth() && 725 } else if (!columnStyle->hasAutoColumnWidth() &&
726 columnStyle->hasAutoColumnCount()) { 726 columnStyle->hasAutoColumnCount()) {
727 count = std::max(LayoutUnit(1), (availableWidth + columnGap) / 727 count = std::max(LayoutUnit(1),
728 (computedColumnWidth + columnGap)) 728 (availableWidth + columnGap) /
729 (computedColumnWidth + columnGap))
729 .toUnsigned(); 730 .toUnsigned();
730 width = ((availableWidth + columnGap) / count) - columnGap; 731 width = ((availableWidth + columnGap) / count) - columnGap;
731 } else { 732 } else {
732 count = std::max(std::min(LayoutUnit(computedColumnCount), 733 count = std::max(std::min(LayoutUnit(computedColumnCount),
733 (availableWidth + columnGap) / 734 (availableWidth + columnGap) /
734 (computedColumnWidth + columnGap)), 735 (computedColumnWidth + columnGap)),
735 LayoutUnit(1)) 736 LayoutUnit(1))
736 .toUnsigned(); 737 .toUnsigned();
737 width = ((availableWidth + columnGap) / count) - columnGap; 738 width = ((availableWidth + columnGap) / count) - columnGap;
738 } 739 }
(...skipping 630 matching lines...) Expand 10 before | Expand all | Expand 10 after
1369 const { 1370 const {
1370 return MultiColumnLayoutState(m_lastSetWorkedOn); 1371 return MultiColumnLayoutState(m_lastSetWorkedOn);
1371 } 1372 }
1372 1373
1373 void LayoutMultiColumnFlowThread::restoreMultiColumnLayoutState( 1374 void LayoutMultiColumnFlowThread::restoreMultiColumnLayoutState(
1374 const MultiColumnLayoutState& state) { 1375 const MultiColumnLayoutState& state) {
1375 m_lastSetWorkedOn = state.columnSet(); 1376 m_lastSetWorkedOn = state.columnSet();
1376 } 1377 }
1377 1378
1378 } // namespace blink 1379 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutInline.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutObject.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698