* Revert "manual rollback of of 18530 (#18531)"
This reverts commit 3f79f8cba5425e964f05fc79331dc5ff4b82c22f.
* Fix the offset calculation
* Add a unit test
Move the notch computation from the FAB to the BAB.
The notch in the BAB (bottom action bar) for the FAB (floating action button) was previously kept as part of the FAB's implementation. This was done to keep the shape of the FAB and the shape of the notch coupled.
That approach resulted in a somewhat complex and 'non Fluttery' mechanism for propagating the notch computation from the FAB to the BAB.
This CL uncouples the FAB and the notch computation.
With the new API the BAB computes its overall shape including the notch using a NotchedShape delegate.
This includes multiple breaking changes:
* Scaffold.setFloatingActionButtonNotchFor is deleted.
* The ComputeNotch type is deleted.
* The hasNotch property of BottomAppBar is deleted.
* The notchMargin property of FloatingActionButton is deleted.
Quick migration guide from the previous API:
| Previous API | New API |
| ------------------|-------------|
| BottomAppBar(hasNotch: false) | BottomAppBar() |
| Using a FloatingActionButton with: BottomAppBar() / BottomAppBar(hasNotch: true) | BottomAppBar(shape: CircularNotchedRectangle()) |
| Scaffold.setFloatingActionButtonNotchFor(..) | No longer supported |
* Use RenderAnimatedOpacity within AnimatedOpacity widget (#15466)
* Fixed minor bug in RenderAnimatedOpacity
* Updated protected API for ImplicitlyAnimatedWidget
* update tests for TextStyle changes in engine
* roll engine, support Foreground on TextStyle
* roll to TextStyle.foreground
* add tests, update docs, fixes from tests
* add golden tests
* stroke + gradient
* update goldens hash
* Use centered widget
* fix typo
* Disable golden tests until Linux generated files are available
* update goldens
This adds an HSLColor class which uses a perceptual color space based upon human perception of colored light (as opposed to HSV, which is based on pigment colors).
You can see the difference in the color spaces here: https://en.wikipedia.org/wiki/HSL_and_HSV
I also added a "within" matcher for both HSLColor and HSVColor that will check if the (floating point) color components are within a certain error.
And tests.
Seems like VS Code may have started using lowercase extension folders recently (our identifier is `Dart-Code.flutter` but now the folder is named `dart-code.flutter`), so this makes the check not sensitive to casing.
Also reuse extension identifier for download link
We have many hidden children because of iOS accessibility (see also #18410).
For example, in the tile screen of complex_layout app, there could be up to 20 children being painted without this PR. With this PR, only 12 get painted.
This should improve the performance of FL-53 by 40%.