From 3e446fd6818ae036ac053d4c5364da8b8c9c95b7 Mon Sep 17 00:00:00 2001 From: CGQAQ Date: Fri, 13 Feb 2026 12:04:38 +0800 Subject: [PATCH 1/2] test(flexbox): add regression tests for flex gap not counted in scroll size Flex containers with gap and overflow scroll calculate scrollWidth/scrollHeight without including gap space, causing the last item to be clipped by exactly the total gap length when scrolling to the end. Co-Authored-By: Claude Opus 4.6 --- .../flex-gap-sizing.ts.4a25712f1.png | Bin 0 -> 13251 bytes .../flex-gap-sizing.ts.50df2cc11.png | Bin 0 -> 12752 bytes .../flex-gap-sizing.ts.5e69a5271.png | Bin 0 -> 12787 bytes .../flex-gap-sizing.ts.8f47d6241.png | Bin 0 -> 13151 bytes .../flex-gap-sizing.ts.9c1d6a3a1.png | Bin 0 -> 12529 bytes .../flex-gap-sizing.ts.fea6f8681.png | Bin 0 -> 13275 bytes .../specs/css/css-flexbox/flex-gap-sizing.ts | 454 ++++++++++++++++++ 7 files changed, 454 insertions(+) create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.4a25712f1.png create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.50df2cc11.png create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.5e69a5271.png create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.8f47d6241.png create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.9c1d6a3a1.png create mode 100644 integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.fea6f8681.png create mode 100644 integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts diff --git a/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.4a25712f1.png b/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.4a25712f1.png new file mode 100644 index 0000000000000000000000000000000000000000..6e0ba6eae668f27874ed5ff774668e1714f98782 GIT binary patch literal 13251 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 P4FpnB@k!3(=kNaohL;ig literal 0 HcmV?d00001 diff --git a/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.8f47d6241.png b/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.8f47d6241.png new file mode 100644 index 0000000000000000000000000000000000000000..61dd1a92abb7b4b70d45daad36256ad606ba9a9f GIT binary patch literal 13151 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�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 b`Ob8-U*`5>Z-IZ%K_HbiZsjXIc=mq)P(jAe literal 0 HcmV?d00001 diff --git a/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts b/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts new file mode 100644 index 0000000000..af7278a91a --- /dev/null +++ b/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts @@ -0,0 +1,454 @@ +/*auto generated*/ +describe('css-flexbox gap sizing', () => { + // The bug: when flex items with minWidth overflow a container with gap, + // the scrollable content area does not include the gap space. + // Scrolling to the end clips the last item by exactly the total gap length. + + it('row-flex-1-minwidth-with-gap-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the right end shows "Item 3" fully with its right border visible.` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'row', + gap: '10px', + width: '200px', + height: '80px', + 'background-color': '#f0f0f0', + 'overflow-x': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ffcccc', + height: '60px', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ccffcc', + height: '60px', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ccccff', + height: '60px', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollLeft = flexbox.scrollWidth; + + await snapshot(); + }); + + it('row-flex-1-minwidth-with-gap-4-items-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the right end shows "Item 4" fully with its right border visible.` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'row', + gap: '10px', + width: '200px', + height: '80px', + 'background-color': '#f0f0f0', + 'overflow-x': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-width': '80px', + 'background-color': '#ffcccc', + height: '60px', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '80px', + 'background-color': '#ccffcc', + height: '60px', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '80px', + 'background-color': '#ccccff', + height: '60px', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '80px', + 'background-color': '#ffffcc', + height: '60px', + border: '3px solid orange', + 'box-sizing': 'border-box', + }, + }, [createText('Item 4')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollLeft = flexbox.scrollWidth; + + await snapshot(); + }); + + it('row-flex-1-minwidth-with-large-gap-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the right end shows "Item 3" fully (large 30px gap).` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'row', + gap: '30px', + width: '200px', + height: '80px', + 'background-color': '#f0f0f0', + 'overflow-x': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ffcccc', + height: '60px', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ccffcc', + height: '60px', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-width': '100px', + 'background-color': '#ccccff', + height: '60px', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollLeft = flexbox.scrollWidth; + + await snapshot(); + }); + + it('column-flex-1-minheight-with-gap-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the bottom shows "Item 3" fully with its bottom border visible.` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'column', + gap: '10px', + width: '150px', + height: '200px', + 'background-color': '#f0f0f0', + 'overflow-y': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ffcccc', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ccffcc', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ccccff', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollTop = flexbox.scrollHeight; + + await snapshot(); + }); + + it('column-flex-1-minheight-with-gap-4-items-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the bottom shows "Item 4" fully with its bottom border visible.` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'column', + gap: '10px', + width: '150px', + height: '200px', + 'background-color': '#f0f0f0', + 'overflow-y': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-height': '80px', + 'background-color': '#ffcccc', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '80px', + 'background-color': '#ccffcc', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '80px', + 'background-color': '#ccccff', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '80px', + 'background-color': '#ffffcc', + border: '3px solid orange', + 'box-sizing': 'border-box', + }, + }, [createText('Item 4')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollTop = flexbox.scrollHeight; + + await snapshot(); + }); + + it('column-flex-1-minheight-with-large-gap-scroll-to-end', async () => { + let p; + let flexbox; + p = createElement( + 'p', + { + style: { + 'box-sizing': 'border-box', + }, + }, + [ + createText( + `Test passes if scrolling to the bottom shows "Item 3" fully (large 30px gap).` + ), + ] + ); + flexbox = createElement( + 'div', + { + style: { + display: 'flex', + 'flex-direction': 'column', + gap: '30px', + width: '150px', + height: '200px', + 'background-color': '#f0f0f0', + 'overflow-y': 'auto', + border: '3px solid black', + 'box-sizing': 'border-box', + }, + }, + [ + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ffcccc', + border: '3px solid red', + 'box-sizing': 'border-box', + }, + }, [createText('Item 1')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ccffcc', + border: '3px solid green', + 'box-sizing': 'border-box', + }, + }, [createText('Item 2')]), + createElement('div', { + style: { + flex: '1', + 'min-height': '100px', + 'background-color': '#ccccff', + border: '3px solid blue', + 'box-sizing': 'border-box', + }, + }, [createText('Item 3')]), + ] + ); + BODY.appendChild(p); + BODY.appendChild(flexbox); + + // Scroll to the very end + flexbox.scrollTop = flexbox.scrollHeight; + + await snapshot(); + }); +}); From 279be5cc3c2d39d18914decc6f6d2953a355adf1 Mon Sep 17 00:00:00 2001 From: CGQAQ Date: Fri, 13 Feb 2026 13:00:39 +0800 Subject: [PATCH 2/2] fix: include gap and border-box size in flex scrollable area calculation _setMaxScrollableSize() was not accounting for main-axis gap between items or cross-axis gap between flex lines, and child.scrollableSize (padding-box) could be smaller than the border-box. This caused scrollWidth/scrollHeight to be underestimated, clipping the last item when scrolling to the end of an overflowing flex container with gap. Also fix test timing: use waitForFrame() before/after setting scrollLeft/scrollTop so the scroll controller has clients and the paint takes effect before snapshot capture. Co-Authored-By: Claude Opus 4.6 --- .../flex-gap-sizing.ts.4a25712f1.png | Bin 13251 -> 12873 bytes .../flex-gap-sizing.ts.50df2cc11.png | Bin 12752 -> 12709 bytes .../flex-gap-sizing.ts.5e69a5271.png | Bin 12787 -> 12477 bytes .../flex-gap-sizing.ts.8f47d6241.png | Bin 13151 -> 12447 bytes .../flex-gap-sizing.ts.9c1d6a3a1.png | Bin 12529 -> 12508 bytes .../flex-gap-sizing.ts.fea6f8681.png | Bin 13275 -> 12962 bytes .../specs/css/css-flexbox/flex-gap-sizing.ts | 36 ++++++++++ webf/lib/src/rendering/flex.dart | 30 ++++++-- .../src/rendering/flex_item_width_test.dart | 67 ++++++++++++++---- 9 files changed, 114 insertions(+), 19 deletions(-) diff --git a/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.4a25712f1.png b/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.4a25712f1.png index 6e0ba6eae668f27874ed5ff774668e1714f98782..897bcb3ece074fbd6aecb2ef25bdc729c91c1b26 100644 GIT binary patch literal 12873 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 literal 13251 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 z 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 literal 12787 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 P4FpnB@k!3(=kNaohL;ig diff --git a/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.8f47d6241.png b/integration_tests/snapshots/css/css-flexbox/flex-gap-sizing.ts.8f47d6241.png index 61dd1a92abb7b4b70d45daad36256ad606ba9a9f..454afffdac1282df50d25daca43c63ebcdb7e31d 100644 GIT binary patch literal 12447 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 TQXBjy0}8|wrN?=XUcLV}AdO|( literal 13151 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�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 literal 12529 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 H>&O2Fjw`cM literal 13275 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 b`Ob8-U*`5>Z-IZ%K_HbiZsjXIc=mq)P(jAe diff --git a/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts b/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts index af7278a91a..83ab26ef80 100644 --- a/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts +++ b/integration_tests/specs/css/css-flexbox/flex-gap-sizing.ts @@ -71,9 +71,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollLeft = flexbox.scrollWidth; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); @@ -154,9 +160,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollLeft = flexbox.scrollWidth; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); @@ -227,9 +239,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollLeft = flexbox.scrollWidth; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); @@ -297,9 +315,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollTop = flexbox.scrollHeight; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); @@ -376,9 +400,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollTop = flexbox.scrollHeight; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); @@ -446,9 +476,15 @@ describe('css-flexbox gap sizing', () => { BODY.appendChild(p); BODY.appendChild(flexbox); + // Wait for layout to complete so the scroll controller has clients + await waitForFrame(); + // Scroll to the very end flexbox.scrollTop = flexbox.scrollHeight; + // Wait for the scroll paint to take effect + await waitForFrame(); + await snapshot(); }); }); diff --git a/webf/lib/src/rendering/flex.dart b/webf/lib/src/rendering/flex.dart index f4cd45bdab..2eacff81b0 100644 --- a/webf/lib/src/rendering/flex.dart +++ b/webf/lib/src/rendering/flex.dart @@ -4027,14 +4027,26 @@ class RenderFlexLayout extends RenderLayoutBox { } } - final double childScrollableMain = preSiblingsMainSize + - (_isHorizontalFlexDirection - ? childScrollableSize.width + childOffsetX - : childScrollableSize.height + childOffsetY); - final double childScrollableCross = _isHorizontalFlexDirection + final double childBoxMainSize = _isHorizontalFlexDirection ? child.size.width : child.size.height; + final double childBoxCrossSize = _isHorizontalFlexDirection ? child.size.height : child.size.width; + final double childMainOffset = _isHorizontalFlexDirection ? childOffsetX : childOffsetY; + final double childCrossOffset = _isHorizontalFlexDirection ? childOffsetY : childOffsetX; + final double childScrollableMainExtent = _isHorizontalFlexDirection + ? childScrollableSize.width + childOffsetX + : childScrollableSize.height + childOffsetY; + final double childScrollableCrossExtent = _isHorizontalFlexDirection ? childScrollableSize.height + childOffsetY : childScrollableSize.width + childOffsetX; + // The child's extent must cover at least its offset border-box. + // child.scrollableSize may only cover padding-box, but offsets (margin/relative/transform) + // still need to be preserved so negative offsets don't create phantom trailing scroll range. + final double childScrollableMain = preSiblingsMainSize + + math.max(childBoxMainSize + childMainOffset, childScrollableMainExtent); + final double childScrollableCross = math.max( + childBoxCrossSize + childCrossOffset, + childScrollableCrossExtent); + maxScrollableMainSizeOfLine = math.max(maxScrollableMainSizeOfLine, childScrollableMain); maxScrollableCrossSizeInLine = math.max(maxScrollableCrossSizeInLine, childScrollableCross); @@ -4048,6 +4060,10 @@ class RenderFlexLayout extends RenderLayoutBox { } } preSiblingsMainSize += childMainSize; + // Add main-axis gap between items (not after the last item). + if (runChild != runChildren.last) { + preSiblingsMainSize += _getMainAxisGap(); + } } // Max scrollable cross size of all the children in the line. @@ -4056,6 +4072,10 @@ class RenderFlexLayout extends RenderLayoutBox { scrollableMainSizeOfLines.add(maxScrollableMainSizeOfLine); scrollableCrossSizeOfLines.add(maxScrollableCrossSizeOfLine); preLinesCrossSize += runMetric.crossAxisExtent; + // Add cross-axis gap between flex lines (not after the last line). + if (runMetric != runMetrics.last) { + preLinesCrossSize += _getCrossAxisGap(); + } } // Max scrollable main size of all lines. diff --git a/webf/test/src/rendering/flex_item_width_test.dart b/webf/test/src/rendering/flex_item_width_test.dart index 6d8bbedda1..9bb33abe4f 100644 --- a/webf/test/src/rendering/flex_item_width_test.dart +++ b/webf/test/src/rendering/flex_item_width_test.dart @@ -30,10 +30,13 @@ void main() { }); group('Flex Item Width', () { - testWidgets('block elements in flex container should not stretch to parent width', (WidgetTester tester) async { + testWidgets( + 'block elements in flex container should not stretch to parent width', + (WidgetTester tester) async { final prepared = await WebFWidgetTestUtils.prepareWidgetTest( tester: tester, - controllerName: 'flex-item-width-${DateTime.now().millisecondsSinceEpoch}', + controllerName: + 'flex-item-width-${DateTime.now().millisecondsSinceEpoch}', html: ''' @@ -53,19 +56,19 @@ void main() { final item1 = prepared.getElementById('item1'); final item2 = prepared.getElementById('item2'); final item3 = prepared.getElementById('item3'); - + // Container should be 600px wide expect(container.offsetWidth, equals(600)); - + // Items should size to their content, not stretch to 600px expect(item1.offsetWidth, lessThan(600)); expect(item2.offsetWidth, lessThan(600)); expect(item3.offsetWidth, lessThan(600)); - + // Items should have different widths based on their content expect(item1.offsetWidth, isNot(equals(item2.offsetWidth))); expect(item2.offsetWidth, isNot(equals(item3.offsetWidth))); - + // Debug output print('Container width: ${container.offsetWidth}'); print('Item 1 width: ${item1.offsetWidth}'); @@ -73,10 +76,12 @@ void main() { print('Item 3 width: ${item3.offsetWidth}'); }); - testWidgets('block elements with explicit width should respect it', (WidgetTester tester) async { + testWidgets('block elements with explicit width should respect it', + (WidgetTester tester) async { final prepared = await WebFWidgetTestUtils.prepareWidgetTest( tester: tester, - controllerName: 'flex-item-explicit-width-${DateTime.now().millisecondsSinceEpoch}', + controllerName: + 'flex-item-explicit-width-${DateTime.now().millisecondsSinceEpoch}', html: ''' @@ -93,10 +98,10 @@ void main() { final item1 = prepared.getElementById('item1'); final item2 = prepared.getElementById('item2'); - + // Item with explicit width should be 100px expect(item1.offsetWidth, equals(100)); - + // Item without width should size to content expect(item2.offsetWidth, lessThan(600)); expect(item2.offsetWidth, isNot(equals(100))); @@ -105,7 +110,8 @@ void main() { testWidgets('flex-grow should expand items', (WidgetTester tester) async { final prepared = await WebFWidgetTestUtils.prepareWidgetTest( tester: tester, - controllerName: 'flex-grow-test-${DateTime.now().millisecondsSinceEpoch}', + controllerName: + 'flex-grow-test-${DateTime.now().millisecondsSinceEpoch}', html: ''' @@ -122,15 +128,48 @@ void main() { final item1 = prepared.getElementById('item1'); final item2 = prepared.getElementById('item2'); - + // Item 2 should size to content final item2ContentWidth = item2.offsetWidth; - + // Item 1 with flex-grow should take remaining space expect(item1.offsetWidth, equals(600 - item2ContentWidth)); - + // Total should equal container width expect(item1.offsetWidth + item2.offsetWidth, equals(600)); }); + + testWidgets( + 'negative start-side offset should not create phantom trailing scroll range', + (WidgetTester tester) async { + final prepared = await WebFWidgetTestUtils.prepareWidgetTest( + tester: tester, + controllerName: + 'flex-negative-offset-scroll-${DateTime.now().millisecondsSinceEpoch}', + html: ''' + + +
+
+
+
+
+
+
+
+ + + ''', + ); + + await tester.pump(); + + final relative = prepared.getElementById('relative'); + final transform = prepared.getElementById('transform'); + + // Both containers should end at 200px; shifted children should not add trailing blank scroll area. + expect(relative.scrollWidth, moreOrLessEquals(200, epsilon: 1)); + expect(transform.scrollWidth, moreOrLessEquals(200, epsilon: 1)); + }); }); }