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

Unified Diff: Source/core/css/resolver/StyleAdjuster.cpp

Issue 1228373007: Compute the correct overflow-x and overflow-y values for table elements (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: Source/core/css/resolver/StyleAdjuster.cpp
diff --git a/Source/core/css/resolver/StyleAdjuster.cpp b/Source/core/css/resolver/StyleAdjuster.cpp
index ddc486e2911935341e95b48dedfddcfd04cb115a..3db5c04ec481bb6fdb85e7efb3ec6215a364e9f0 100644
--- a/Source/core/css/resolver/StyleAdjuster.cpp
+++ b/Source/core/css/resolver/StyleAdjuster.cpp
@@ -424,6 +424,14 @@ void StyleAdjuster::adjustOverflow(ComputedStyle& style)
{
ASSERT(style.overflowX() != OVISIBLE || style.overflowY() != OVISIBLE);
+ // Tables support overflow:hidden and will ignore scroll/auto.
Julien - ping for review 2015/07/16 14:58:13 Let's link to spec! I love that in your descriptio
mstensho (USE GERRIT) 2015/07/16 20:00:06 We will (and should) also ignore "-webkit-paged-x"
+ if (style.display() == TABLE || style.display() == INLINE_TABLE) {
+ if (style.overflowX() != OVISIBLE && style.overflowX() != OHIDDEN)
Julien - ping for review 2015/07/16 14:58:13 I would whitelist here (style.overflowX() == OSCRO
mstensho (USE GERRIT) 2015/07/16 20:00:07 I don't think that's a good idea. What does overfl
Julien - ping for review 2015/07/17 00:29:55 We didn't explicitly mention the paged overflow va
+ style.setOverflowX(OVISIBLE);
+ if (style.overflowY() != OVISIBLE && style.overflowY() != OHIDDEN)
+ style.setOverflowY(OVISIBLE);
+ }
+
// If either overflow value is not visible, change to auto.
if (style.overflowX() == OVISIBLE && style.overflowY() != OVISIBLE) {
// FIXME: Once we implement pagination controls, overflow-x should default to hidden
@@ -434,16 +442,6 @@ void StyleAdjuster::adjustOverflow(ComputedStyle& style)
style.setOverflowY(OAUTO);
}
- // Table rows, sections and the table itself will support overflow:hidden and will ignore scroll/auto.
- // FIXME: Eventually table sections will support auto and scroll.
- if (style.display() == TABLE || style.display() == INLINE_TABLE
- || style.display() == TABLE_ROW_GROUP || style.display() == TABLE_ROW) {
- if (style.overflowX() != OVISIBLE && style.overflowX() != OHIDDEN)
- style.setOverflowX(OVISIBLE);
- if (style.overflowY() != OVISIBLE && style.overflowY() != OHIDDEN)
- style.setOverflowY(OVISIBLE);
- }
-
// Menulists should have visible overflow
if (style.appearance() == MenulistPart) {
style.setOverflowX(OVISIBLE);

Powered by Google App Engine
This is Rietveld 408576698