The ShaderMask widget enables rendering its child with an alpha channel defined by a Shader. For example if the Shader was a linear gradient in alpha then the component behind the ShaderMask's child would appear wherever the gradient's alpha value was not fully opaque.
The card_collection.dart example demonstrates this. Select the "Let the sun shine" checkbox in the app's drawer.
I'm not sure this specific incarnation of the test ever crashed, since
the original test depended on user interaction and now works fine, but
just in case, here's a regression test for it so I can close that issue.
This also slightly changes the Widget.toString() output to include the
key since that will make debugging easier.
Identify specific parts of a Stock row with a Global Key that can be
regenerated later, and pass that key back to event handlers so they can
use them to do the transition.
You can now set an offset that will be used for the hit testing for
drops. (It doesn't move the feedback by default; use a Transform for
that.) I also made the default feedback not be Opacity 0.5 always.
- Rename EdgeDims constructor to EdgeDims.TRBL().
- Add operator== to Size and Offset so that you can compare Size to
DebugSize in checked mode.
- Add Size.lerp().
- Add various operators to EdgeDims. (*, /, ~/, %)
- Add EdgeDims.lerp().
- Update style guide. I went there to fix an EdgeDims constructor
example, and stayed because some recent things came up and I wanted to
add them before I forgot.
This is step 1 in making it possible to have hero transitions between
routes. To make it possible for a route to have an "exit" animation when
a new route has been pushed on top of it, we provide the next route's
AnimationPerformance to the build function. It's null if there is no
next route or if the next route has no performance.
...for consistency with the other Route subclasses:
```
dialog.dart: class DialogRoute extends Route
drag_target.dart: class DragRoute extends Route
navigator.dart: class PageRoute extends Route
navigator.dart: class StateRoute extends Route
popup_menu.dart: class MenuRoute extends Route
```