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

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

Issue 933043005: [New Multicolumn] Handle flow thread overflow correctly in flipped writing modes. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 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 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "config.h" 5 #include "config.h"
6 6
7 #include "core/layout/MultiColumnFragmentainerGroup.h" 7 #include "core/layout/MultiColumnFragmentainerGroup.h"
8 8
9 #include "core/layout/LayoutMultiColumnSet.h" 9 #include "core/layout/LayoutMultiColumnSet.h"
10 10
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after
150 { 150 {
151 // |layerBoundingBox| is in the flow thread coordinate space, relative to th e top/left edge of 151 // |layerBoundingBox| is in the flow thread coordinate space, relative to th e top/left edge of
152 // the flow thread, but note that it has been converted with respect to writ ing mode (so that 152 // the flow thread, but note that it has been converted with respect to writ ing mode (so that
153 // it's visual/physical in that sense). 153 // it's visual/physical in that sense).
154 // 154 //
155 // |dirtyRect| is visual, relative to the multicol container. 155 // |dirtyRect| is visual, relative to the multicol container.
156 // 156 //
157 // Then there's the output from this method - the stuff we put into the list of fragments. The 157 // Then there's the output from this method - the stuff we put into the list of fragments. The
158 // fragment.paginationOffset point is the actual visual translation required to get from a 158 // fragment.paginationOffset point is the actual visual translation required to get from a
159 // location in the flow thread to a location in a given column. The fragment .paginationClip 159 // location in the flow thread to a location in a given column. The fragment .paginationClip
160 // rectangle, on the other hand, is in flow thread coordinates. 160 // rectangle, on the other hand, is in flow thread coordinates, but otherwis e completely
161 // physical in terms of writing mode.
161 // 162 //
162 // All other rectangles in this method are sized physically, and the inline direction coordinate 163 // All other rectangles in this method are sized physically, and the inline direction coordinate
163 // is physical too, but the block direction coordinate is "logical top". Thi s is the same as 164 // is physical too, but the block direction coordinate is "logical top". Thi s is the same as
164 // e.g. RenderBox::frameRect(). These rectangles also pretend that there's o nly one long column, 165 // e.g. RenderBox::frameRect(). These rectangles also pretend that there's o nly one long column,
165 // i.e. they are for the flow thread. 166 // i.e. they are for the flow thread.
166 167
167 LayoutMultiColumnFlowThread* flowThread = m_columnSet.multiColumnFlowThread( ); 168 LayoutMultiColumnFlowThread* flowThread = m_columnSet.multiColumnFlowThread( );
168 bool isHorizontalWritingMode = m_columnSet.isHorizontalWritingMode(); 169 bool isHorizontalWritingMode = m_columnSet.isHorizontalWritingMode();
169 170
170 // Put the layer bounds into flow thread-local coordinates by flipping it fi rst. Since we're in 171 // Put the layer bounds into flow thread-local coordinates by flipping it fi rst. Since we're in
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
500 append(MultiColumnFragmentainerGroup(m_columnSet)); 501 append(MultiColumnFragmentainerGroup(m_columnSet));
501 return last(); 502 return last();
502 } 503 }
503 504
504 void MultiColumnFragmentainerGroupList::deleteExtraGroups() 505 void MultiColumnFragmentainerGroupList::deleteExtraGroups()
505 { 506 {
506 shrink(1); 507 shrink(1);
507 } 508 }
508 509
509 } // namespace blink 510 } // namespace blink
OLDNEW
« Source/core/layout/LayoutFlowThread.cpp ('K') | « Source/core/layout/LayoutFlowThread.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698