diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:27 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:13:27 +0000 |
commit | 40a355a42d4a9444dc753c04c6608dade2f06a23 (patch) | |
tree | 871fc667d2de662f171103ce5ec067014ef85e61 /layout/generic/BlockReflowState.h | |
parent | Adding upstream version 124.0.1. (diff) | |
download | firefox-40a355a42d4a9444dc753c04c6608dade2f06a23.tar.xz firefox-40a355a42d4a9444dc753c04c6608dade2f06a23.zip |
Adding upstream version 125.0.1.upstream/125.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'layout/generic/BlockReflowState.h')
-rw-r--r-- | layout/generic/BlockReflowState.h | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/layout/generic/BlockReflowState.h b/layout/generic/BlockReflowState.h index 1dfaa4d9ad..6f05b6ab0a 100644 --- a/layout/generic/BlockReflowState.h +++ b/layout/generic/BlockReflowState.h @@ -41,16 +41,16 @@ class BlockReflowState { mCanHaveOverflowMarkers(false) {} // Set in the BlockReflowState constructor when reflowing a "block margin - // root" frame (i.e. a frame with any of the NS_BLOCK_BFC_STATE_BITS flag - // set, for which margins apply by default). + // root" frame (i.e. a frame with any of the NS_BLOCK_BFC flag set, for + // which margins apply by default). // // The flag is also set when reflowing a frame whose computed BStart border // padding is non-zero. bool mIsBStartMarginRoot : 1; // Set in the BlockReflowState constructor when reflowing a "block margin - // root" frame (i.e. a frame with any of the NS_BLOCK_BFC_STATE_BITS flag - // set, for which margins apply by default). + // root" frame (i.e. a frame with any of the NS_BLOCK_BFC flag set, for + // which margins apply by default). // // The flag is also set when reflowing a frame whose computed BEnd border // padding is non-zero. @@ -102,6 +102,13 @@ class BlockReflowState { const nscoord aInset = 0); /** + * Unshifts coords, restores availableBSize to reality. + * (Constructor applies any cached shift before reflow + * so that frames are reflowed with cached shift) + */ + void UndoAlignContentShift(); + + /** * Get the available reflow space (the area not occupied by floats) * for the current y coordinate. The available space is relative to * our coordinate system, which is the content box, with (0, 0) in the @@ -407,6 +414,11 @@ class BlockReflowState { // continuations. const nscoord mConsumedBSize; + // The amount of block-axis alignment shift to assume during reflow. + // Cached between reflows in the AlignContentShift property. + // (This system optimizes reflow for not changing the shift.) + nscoord mAlignContentShift; + // Cache the current line's BSize if nsBlockFrame::PlaceLine() fails to // place the line. When redoing the line, it will be used to query the // accurate float available space in AddFloat() and |