[two_dimensional_scrollables] Expose addAutomaticKeepAlives in Table delegates (#5597)

Fixes https://github.com/flutter/flutter/issues/133583

This was waiting on the stable release that add keep alive support. Now it is available in the tableView delegates.
This commit is contained in:
Kate Lovett
2023-12-07 13:19:06 -06:00
committed by GitHub
parent 073bea49a2
commit 0b78be3c08
5 changed files with 31 additions and 6 deletions

View File

@ -1,5 +1,6 @@
## NEXT
## 0.0.5
* Exposes addAutomaticKeepAlives in TableCellBuilderDelegate and TableCellListDelegate
* Fixes bug where having one reversed axis caused incorrect painting of a pinned row.
* Adds support for BorderRadius in TableSpanDecorations.

View File

@ -6,8 +6,8 @@ publish_to: 'none'
version: 1.0.0+1
environment:
sdk: '>=3.1.0 <4.0.0'
flutter: ">=3.13.0"
sdk: '>=3.2.0 <4.0.0'
flutter: ">=3.16.0"
dependencies:
flutter:

View File

@ -125,6 +125,7 @@ class TableCellBuilderDelegate extends TwoDimensionalChildBuilderDelegate
int pinnedColumnCount = 0,
int pinnedRowCount = 0,
super.addRepaintBoundaries,
super.addAutomaticKeepAlives,
required TableViewCellBuilder cellBuilder,
required TableSpanBuilder columnBuilder,
required TableSpanBuilder rowBuilder,
@ -219,6 +220,7 @@ class TableCellListDelegate extends TwoDimensionalChildListDelegate
int pinnedColumnCount = 0,
int pinnedRowCount = 0,
super.addRepaintBoundaries,
super.addAutomaticKeepAlives,
required List<List<Widget>> cells,
required TableSpanBuilder columnBuilder,
required TableSpanBuilder rowBuilder,

View File

@ -1,12 +1,12 @@
name: two_dimensional_scrollables
description: Widgets that scroll using the two dimensional scrolling foundation.
version: 0.0.4
version: 0.0.5
repository: https://github.com/flutter/packages/tree/main/packages/two_dimensional_scrollables
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+two_dimensional_scrollables%22+
environment:
sdk: '>=3.1.0 <4.0.0'
flutter: ">=3.13.0"
sdk: '>=3.2.0 <4.0.0'
flutter: ">=3.16.0"
dependencies:
flutter:

View File

@ -11,6 +11,18 @@ const Widget cell = SizedBox.shrink();
void main() {
group('TableCellBuilderDelegate', () {
test('exposes addAutomaticKeepAlives from super class', () {
final TableCellBuilderDelegate delegate = TableCellBuilderDelegate(
cellBuilder: (_, __) => cell,
columnBuilder: (_) => span,
rowBuilder: (_) => span,
columnCount: 5,
rowCount: 6,
addAutomaticKeepAlives: false,
);
expect(delegate.addAutomaticKeepAlives, isFalse);
});
test('asserts valid counts for rows and columns', () {
TableCellBuilderDelegate? delegate;
expect(
@ -205,6 +217,16 @@ void main() {
});
group('TableCellListDelegate', () {
test('exposes addAutomaticKeepAlives from super class', () {
final TableCellListDelegate delegate = TableCellListDelegate(
cells: <List<Widget>>[<Widget>[]],
columnBuilder: (_) => span,
rowBuilder: (_) => span,
addAutomaticKeepAlives: false,
);
expect(delegate.addAutomaticKeepAlives, isFalse);
});
test('asserts valid counts for rows and columns', () {
TableCellListDelegate? delegate;
expect(