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

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

Issue 2727093002: Account for perspective and preserve-3d in mapToVisualRectInAncestorSpace (Closed)
Patch Set: none Created 3 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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1997 Martin Jones (mjones@kde.org) 2 * Copyright (C) 1997 Martin Jones (mjones@kde.org)
3 * (C) 1997 Torben Weis (weis@kde.org) 3 * (C) 1997 Torben Weis (weis@kde.org)
4 * (C) 1998 Waldo Bastian (bastian@kde.org) 4 * (C) 1998 Waldo Bastian (bastian@kde.org)
5 * (C) 1999 Lars Knoll (knoll@kde.org) 5 * (C) 1999 Lars Knoll (knoll@kde.org)
6 * (C) 1999 Antti Koivisto (koivisto@kde.org) 6 * (C) 1999 Antti Koivisto (koivisto@kde.org)
7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2013 Apple Inc. 7 * Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2013 Apple Inc.
8 * All rights reserved. 8 * All rights reserved.
9 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) 9 * Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com)
10 * 10 *
(...skipping 2045 matching lines...) Expand 10 before | Expand all | Expand 10 after
2056 if (!sectionBelow) 2056 if (!sectionBelow)
2057 return true; 2057 return true;
2058 if (LayoutTableRow* firstRow = sectionBelow->firstRow()) { 2058 if (LayoutTableRow* firstRow = sectionBelow->firstRow()) {
2059 if (firstRow->paginationStrut() || firstRow->logicalHeight() > pageHeight) 2059 if (firstRow->paginationStrut() || firstRow->logicalHeight() > pageHeight)
2060 return false; 2060 return false;
2061 } 2061 }
2062 2062
2063 return true; 2063 return true;
2064 } 2064 }
2065 2065
2066 bool LayoutTableSection::mapToVisualRectInAncestorSpace( 2066 bool LayoutTableSection::mapToVisualRectInAncestorSpaceInternal(
2067 const LayoutBoxModelObject* ancestor, 2067 const LayoutBoxModelObject* ancestor,
2068 LayoutRect& rect, 2068 TransformState& transformState,
2069 VisualRectFlags flags) const { 2069 VisualRectFlags flags) const {
2070 if (ancestor == this) 2070 if (ancestor == this)
2071 return true; 2071 return true;
2072 // Repeating table headers are painted once per fragmentation page/column. 2072 // Repeating table headers are painted once per fragmentation page/column.
2073 // This does not go through the regular fragmentation machinery, so we need 2073 // This does not go through the regular fragmentation machinery, so we need
2074 // special code to expand the invalidation rect to contain all positions of 2074 // special code to expand the invalidation rect to contain all positions of
2075 // the header in all columns. 2075 // the header in all columns.
2076 // Note that this is in flow thread coordinates, not visual coordinates. The 2076 // Note that this is in flow thread coordinates, not visual coordinates. The
2077 // enclosing LayoutFlowThread will convert to visual coordinates. 2077 // enclosing LayoutFlowThread will convert to visual coordinates.
2078 if (table()->header() == this && isRepeatingHeaderGroup()) 2078 if (table()->header() == this && isRepeatingHeaderGroup()) {
2079 transformState.flatten();
2080 FloatRect rect = transformState.lastPlanarQuad().boundingBox();
2079 rect.setHeight(table()->logicalHeight()); 2081 rect.setHeight(table()->logicalHeight());
2080 return LayoutTableBoxComponent::mapToVisualRectInAncestorSpace(ancestor, rect, 2082 transformState.setQuad(FloatQuad(rect));
2081 flags); 2083 }
2084 return LayoutTableBoxComponent::mapToVisualRectInAncestorSpaceInternal(
2085 ancestor, transformState, flags);
2082 } 2086 }
2083 2087
2084 } // namespace blink 2088 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutTableSection.h ('k') | third_party/WebKit/Source/core/layout/LayoutView.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698