Implement position:sticky for table parts
Bug: 702927
Change-Id: I9972f82a8d2b560042b0acbd8484eed5f76f6f2e
Reviewed-on: https://chromium-review.googlesource.com/772412
Commit-Queue: Robert Hogan <robhogan@gmail.com>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517390}
diff --git a/third_party/WebKit/LayoutTests/TestExpectations b/third_party/WebKit/LayoutTests/TestExpectations
index 6617dda..053cf6b 100644
--- a/third_party/WebKit/LayoutTests/TestExpectations
+++ b/third_party/WebKit/LayoutTests/TestExpectations
@@ -265,13 +265,6 @@
# ====== Paint team owned tests to here ======
-#### external/wpt/css/css-position
-crbug.com/702927 external/wpt/css/css-position/position-sticky-table-tr-top.html [ Failure ]
-crbug.com/702927 external/wpt/css/css-position/position-sticky-table-tr-bottom.html [ Failure ]
-crbug.com/702927 external/wpt/css/css-position/position-sticky-table-tfoot-bottom.html [ Failure ]
-crbug.com/702927 external/wpt/css/css-position/position-sticky-table-thead-top.html [ Failure ]
-crbug.com/702927 external/wpt/css/css-position/position-sticky-parsing.html [ Failure ]
-
# ====== Layout team owned tests from here ======
diff --git a/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp b/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
index 2ef18f0..a272be1 100644
--- a/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
+++ b/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
@@ -328,18 +328,6 @@
style.GetWritingMode() != layout_parent_style.GetWritingMode())
style.SetDisplay(EDisplay::kInlineBlock);
- // We do not honor position: sticky for table rows, headers, and
- // footers. This is correct for position: relative in CSS2.1 (and caused a
- // crash in containingBlock() on some sites) and position: sticky is defined
- // as following position: relative behavior for table elements. It is
- // incorrect for CSS3.
- if ((style.Display() == EDisplay::kTableHeaderGroup ||
- style.Display() == EDisplay::kTableRowGroup ||
- style.Display() == EDisplay::kTableFooterGroup ||
- style.Display() == EDisplay::kTableRow) &&
- style.GetPosition() == EPosition::kSticky)
- style.SetPosition(EPosition::kStatic);
-
// Cannot support position: sticky for table columns and column groups because
// current code is only doing background painting through columns / column
// groups.