Skip to content

[two_dimensional_scrollables] TableView - #4536

Merged
auto-submit[bot] merged 31 commits into
flutter:mainfrom
Piinks:tableView
Aug 17, 2023
Merged

[two_dimensional_scrollables] TableView#4536
auto-submit[bot] merged 31 commits into
flutter:mainfrom
Piinks:tableView

Conversation

@Piinks

@PiinksPiinks commented Jul 21, 2023

Copy link
Copy Markdown
Contributor

Design doc: flutter.dev/go/table-view

Fixesflutter/flutter#87370
Fixesflutter/flutter#30770

This adds a new package: two_dimensional_scrollables - a package for widgets that scroll in two dimensions.

The first widget in the collection here is TableView.

Screen.Recording.2023-07-24.at.2.46.23.PM.mov

TableView is built on top of the 2D scrolling foundation that lives in the Flutter framework.

Other widgets that will be included in this package in the future are TreeView and TreeTableView.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages repo does use dart format.)
  • I signed the CLA.
  • The title of the PR starts with the name of the package surrounded by square brackets, e.g. [shared_preferences]
  • I listed at least one issue that this PR fixes in the description above.
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
  • I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
  • I updated/added relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or this PR is test-exempt.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Comment threadpackages/two_dimensional_scrollables/README.md Outdated
Comment threadpackages/two_dimensional_scrollables/README.md Outdated
Comment threadpackages/two_dimensional_scrollables/example/pubspec.yaml Outdated
Comment threadpackages/two_dimensional_scrollables/example/test/widget_test.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/table_view.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/src/table_view/table.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/src/table_view/table.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/src/table_view/table.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/src/table_view/table.dart Outdated
Comment threadpackages/two_dimensional_scrollables/lib/src/table_view/table.dart Outdated
Comment threadpackages/two_dimensional_scrollables/example/lib/main.dart Outdated
auto-submitBot pushed a commit to flutter/flutter that referenced this pull request Jul 26, 2023
These tweaks came from flutter/packages#4536
- The TwoDimensionalChildBuilderDelegate asserts that maxXIndex and maxYIndex are null or >= 0
- The TwoDimensionalChildDelegate setter in RenderTwoDimensionalViewport has a covariant to allow type safety for subclasses of RenderTwoDimensionalViewport implementing with other subclasses of TwoDimensionalChildDelegate
I'd like to cherry pick this so flutter/packages#4536 will not have to wait for it to reach stable.
@Piinks
Piinks requested a review from goderbauerJuly 27, 2023 19:33
Piinks added a commit to Piinks/flutter that referenced this pull request Jul 27, 2023
These tweaks came from flutter/packages#4536
- The TwoDimensionalChildBuilderDelegate asserts that maxXIndex and maxYIndex are null or >= 0
- The TwoDimensionalChildDelegate setter in RenderTwoDimensionalViewport has a covariant to allow type safety for subclasses of RenderTwoDimensionalViewport implementing with other subclasses of TwoDimensionalChildDelegate
I'd like to cherry pick this so flutter/packages#4536 will not have to wait for it to reach stable.
LouiseHsu pushed a commit to LouiseHsu/flutter that referenced this pull request Jul 31, 2023
These tweaks came from flutter/packages#4536
- The TwoDimensionalChildBuilderDelegate asserts that maxXIndex and maxYIndex are null or >= 0
- The TwoDimensionalChildDelegate setter in RenderTwoDimensionalViewport has a covariant to allow type safety for subclasses of RenderTwoDimensionalViewport implementing with other subclasses of TwoDimensionalChildDelegate
I'd like to cherry pick this so flutter/packages#4536 will not have to wait for it to reach stable.
auto-submitBot pushed a commit to flutter/flutter that referenced this pull request Aug 1, 2023
These tweaks came from flutter/packages#4536
- The TwoDimensionalChildBuilderDelegate asserts that maxXIndex and maxYIndex are null or >= 0
- The TwoDimensionalChildDelegate setter in RenderTwoDimensionalViewport has a covariant to allow type safety for subclasses of RenderTwoDimensionalViewport implementing with other subclasses of TwoDimensionalChildDelegate
I'd like to cherry pick this so flutter/packages#4536 will not have to wait for it to reach stable.
vashworth pushed a commit to vashworth/flutter that referenced this pull request Aug 2, 2023
These tweaks came from flutter/packages#4536
- The TwoDimensionalChildBuilderDelegate asserts that maxXIndex and maxYIndex are null or >= 0
- The TwoDimensionalChildDelegate setter in RenderTwoDimensionalViewport has a covariant to allow type safety for subclasses of RenderTwoDimensionalViewport implementing with other subclasses of TwoDimensionalChildDelegate
I'd like to cherry pick this so flutter/packages#4536 will not have to wait for it to reach stable.
@PiinksPiinks added the autosubmit Merge PR when tree becomes green via auto submit App label Aug 17, 2023
@auto-submit
auto-submitBot merged commit 4c16f3e into flutter:mainAug 17, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Aug 18, 2023
auto-submitBot pushed a commit to flutter/flutter that referenced this pull request Aug 18, 2023
flutter/packages@3b602e7...4c16f3e
2023-08-17 katelovett@google.com [two_dimensional_scrollables] TableView (flutter/packages#4536)
2023-08-17 stuartmorgan@google.com [ci] Update minimums for 3.13 stable (flutter/packages#4731)
2023-08-17 10687576+bparrishMines@users.noreply.github.com Update stable version to efbf63d (flutter/packages#4730)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
auto-submitBot pushed a commit to flutter/flutter that referenced this pull request Aug 24, 2023
…ate (#132764)
Found in flutter/packages#4536
The max x and max y index should allow for a case where there are no children in the viewport. This should be CP'd into stable once it lands.
creatorpiyush pushed a commit to creatorpiyush/packages that referenced this pull request Jun 10, 2026
Design doc: [flutter.dev/go/table-view](https://docs.google.com/document/d/15ecTZE1g3WeswLGFWrnEgMP6SyL6jDRdxOgPsczOcV0/edit?usp=sharing&resourcekey=0-yNd_qFhiPjz6z2TgezWc0A)
Fixesflutter/flutter#87370Fixesflutter/flutter#30770
This adds a new package: `two_dimensional_scrollables` - a package for widgets that scroll in two dimensions.
The first widget in the collection here is TableView. https://github.com/flutter/packages/assets/16964204/8103001a-77dc-489f-9e75-278972f66f30
TableView is built on top of the 2D scrolling foundation that lives in the Flutter framework.
Other widgets that will be included in this package in the future are TreeView and TreeTableView.
bisor0627 pushed a commit to bisor0627/packages that referenced this pull request Jun 19, 2026
Design doc: [flutter.dev/go/table-view](https://docs.google.com/document/d/15ecTZE1g3WeswLGFWrnEgMP6SyL6jDRdxOgPsczOcV0/edit?usp=sharing&resourcekey=0-yNd_qFhiPjz6z2TgezWc0A)
Fixesflutter/flutter#87370Fixesflutter/flutter#30770
This adds a new package: `two_dimensional_scrollables` - a package for widgets that scroll in two dimensions.
The first widget in the collection here is TableView. https://github.com/flutter/packages/assets/16964204/8103001a-77dc-489f-9e75-278972f66f30
TableView is built on top of the 2D scrolling foundation that lives in the Flutter framework.
Other widgets that will be included in this package in the future are TreeView and TreeTableView.
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmitMerge PR when tree becomes green via auto submit Appp: two_dimensional_scrollablesIssues pertaining to the two_dimensional_scrollables packageplatform-androidplatform-iosplatform-linuxplatform-macosplatform-webplatform-windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Lazy Table DataTable - make scrollable, set background colour and fix/freeze header row and first column

3 participants

@Piinks@goderbauer@Schwusch