This command explicitly populates the flutter tool's cache of binary artifacts.
Also, teach `flutter create` to update the cache in case its the first command
that a user runs.
* Added Scrollbar, removed ScrollbarPainter
* removed a dead import
* updated per review feedback
* Only call dispatch if the widgets State is still mounted
Previously we'd snap to the size of the background widget before resizing to
zero. Now we force the background widget to match the size of the dimissable
widget at the time it was dismissed.
Fixes#3092
* document libs from sky_services
* scan directory of sky_services for libraries
* simplify error message when sky_services directory not found
* address review comments
Previously this was used by MixedViewport, but now we don't need it because
LazyBlockViewport has replaced MixedViewport.
I've also taken this opportunity to modernize RenderBlock.
Previously, we lost sync with the tab view contents when switching tabs. Now we
key the subtrees to make sure they keep their state across tab animations.
Fixes#3147
Fix some legit uses of GlobalKey to specify the type they want.
Fix some sketchy uses of GlobalKey in tests to fake it with "as
dynamic".
Remove some extraneous imports that made the build red.
Previously, the client of PopupMenuButton needed to build all the menu times
when building the PopupMenuButton. This can get expensive if, for example, each
item in a scrollable list has a popup menu associated with it.
Now the client passes a builder function to the PopupMenuButton that gets
invoked only when its time to show the menu items.
This patch adds dartdoc to LazyBlock. Also, this patch fixes the scrolling
physics of LazyBlock. Previously, we updated a running simulation only when the
change in scroll behavior changed the current scroll offset. Now we update
running simulations every time the behavior changes because the simulation
might depend on quantities other than the current scroll offset.
LazyBlock is intended as a replacement for MixedViewport. Rather than
maintaining a table of all the observed child sizes (like
MixedViewport), LazyBlock works by dead reckoning the location of the
children based on the existing viewport. This approach makes it easier
to resize children because LazyBlock doesn't cache any additional
information that would need to be invalidated.
This patch contains a first draft of LazyBlock that works in a simple
usage scenario. Subsequent patches will replace
ScrollableMixedWidgetList with LazyBlock and port the existing
ScrollableMixedWidgetList tests over to LazyBlock.
Related to #3075
- Rename unselectedColor to unselectedWidgetColor.
- Rename selectionColor to textSelectionColor.
- Add selectedRowColor.
- Remove hintOpacity since it's not tested and has no demo clients.
- Add some docs.
* add a dev/dartdoc.dart script to generate docs for the packages/ packages
* remove description
* rename readme
* change to using --include-external
* move docs to dev/docs