diff options
author | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-11-03 19:43:51 +0100 |
---|---|---|
committer | wolfbeast <mcwerewolf@wolfbeast.com> | 2019-11-03 19:43:51 +0100 |
commit | 5ab2da700448caf181dae7dec2f53997faf118ea (patch) | |
tree | d04be907b452da59046b8c8cefbdd8a6c2f7cfd1 /layout/tables | |
parent | ce11d5cae866f24b8f7435cdc3725cfd2748595b (diff) | |
download | UXP-5ab2da700448caf181dae7dec2f53997faf118ea.tar UXP-5ab2da700448caf181dae7dec2f53997faf118ea.tar.gz UXP-5ab2da700448caf181dae7dec2f53997faf118ea.tar.lz UXP-5ab2da700448caf181dae7dec2f53997faf118ea.tar.xz UXP-5ab2da700448caf181dae7dec2f53997faf118ea.zip |
Issue #146 - Part 6: Allow `position: sticky` on table elements.
Diffstat (limited to 'layout/tables')
-rw-r--r-- | layout/tables/nsTableRowFrame.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/layout/tables/nsTableRowFrame.cpp b/layout/tables/nsTableRowFrame.cpp index 05b9deee9..ea2477b73 100644 --- a/layout/tables/nsTableRowFrame.cpp +++ b/layout/tables/nsTableRowFrame.cpp @@ -926,12 +926,11 @@ nsTableRowFrame::ReflowChildren(nsPresContext* aPresContext, // be merged into the else below if we can.) nsMargin* computedOffsetProp = kidFrame->GetProperty(nsIFrame::ComputedOffsetProperty()); - // Bug 975644: a position:sticky kid can end up with a null - // property value here. - LogicalMargin computedOffsets(wm, computedOffsetProp ? - *computedOffsetProp : nsMargin()); - ReflowInput::ApplyRelativePositioning(kidFrame, wm, computedOffsets, - &kidPosition, containerSize); + + // On our fist reflow sticky children may not have the property yet (we + // need to reflow the children first to size the scroll frame). + LogicalMargin computedOffsets(wm, computedOffsetProp ? *computedOffsetProp : nsMargin()); + ReflowInput::ApplyRelativePositioning(kidFrame, wm, computedOffsets, &kidPosition, containerSize); } // In vertical-rl mode, we are likely to have containerSize.width = 0 |