It was 8.0. It's now arbitrarily 18.0.
Changing this required adjusting some tests. Adjusting the tests
required debugging the tests. Debugging the tests required some tools
to help debugging gesture recognizers and gesture arenas, so I added
some. It also required updating some toString() methods which resulted
in some changes to the tree diagnostics logic.
Also I cleaned up some docs while I was at it.
* Prefix and Suffix support for TextFields
* Adding Tests
* Removing spurious newline.
* Fixing a small problem with the test
* Code review changes
* Code Review Changes
* Review Changes
* Export the new StrokeJoin enum
* Added example for line styles, and enabled line join styles.
* Reverting inadvertent change to main.dart.
* Updated due to code review of engine code
* Removed example.
* Added arguments to named routes, with test.
* Fixing some formatting
* Fixing Navigator.pop for named routes.
* Fixing comment.
* Simplifying test.
* Fixing new -> const for Text object.
* Tiny text change (also to kick a new Travis build)
* Added a more realistic test case.
* Reverting unintentional iml changes.
* Fixing trailing newline
* Removing some changes that snuck in.
* AutomaticKeepAlive
A Widget that listens for notifications from widgets that don't want to die.
* Automatically wrap SliverList and SliverGrid children in AutomaticKeepAlive widgets
* Fixes for review comments
The main purpose of this PR is to make it so that when you set the
initial route and it's a hierarchical route (e.g. `/a/b/c`), it
implies multiple pushes, one for each step of the route (so in that
case, `/`, `/a`, `/a/b`, and `/a/b/c`, in that order). If any of those
routes don't exist, it falls back to '/'.
As part of doing that, I:
* Changed the default for MaterialApp.initialRoute to honor the
actual initial route.
* Added a MaterialApp.onUnknownRoute for handling bad routes.
* Added a feature to flutter_driver that allows the host test script
and the device test app to communicate.
* Added a test to make sure `flutter drive --route` works.
(Hopefully that will also prove `flutter run --route` works, though
this isn't testing the `flutter` tool's side of that. My main
concern is over whether the engine side works.)
* Fixed `flutter drive` to output the right target file name.
* Changed how the stocks app represents its data, so that we can
show a page for a stock before we know if it exists.
* Made it possible to show a stock page that doesn't exist. It shows
a progress indicator if we're loading the data, or else shows a
message saying it doesn't exist.
* Changed the pathing structure of routes in stocks to work more
sanely.
* Made search in the stocks app actually work (before it only worked
if we happened to accidentally trigger a rebuild). Added a test.
* Replaced some custom code in the stocks app with a BackButton.
* Added a "color" feature to BackButton to support the stocks use case.
* Spaced out the ErrorWidget text a bit more.
* Added `RouteSettings.copyWith`, which I ended up not using.
* Improved the error messages around routing.
While I was in some files I made a few formatting fixes, fixed some
code health issues, and also removed `flaky: true` from some devicelab
tests that have been stable for a while. Also added some documentation
here and there.
Introduce CompositedTransformTarget and CompositedTransformFollower
widgets, corresponding render objects, and corresponding layers.
Adjust the way text fields work to use this.
Various changes I needed to debug the issues that came up.
* started copying stuff into cupertino page route
* extracted from material page route. Ready for testing
* works with button and gesture
* tests and docs
* review notes
* review notes
* Add SemanticsNode.isSelected flag
* Adds example usage to TabBar
See also https://github.com/flutter/engine/pull/3764
* Review comments
* whitespace fixes
* Fix doc ref and update engine roll
* Make dividers one device pixel thick as defined in Material design spec
* Updated divider test to check stroke width
* Clarified dividers with 0 height in the docs
* Updated Divider.height docs according to PR feedback
* Check for initialRoute before Navigator.defaultRouteName
* Default initialRoute to Navigator.defaultRouteName
* Take suggestions from code review
* Add test for old and new routes behavior
* Revert "Add test for old and new routes behavior"
This reverts commit 282fb64b165ed532583e9a5d2e4debe29469fba4.
* Retry: without dartfmt, with dartanalyzer
* Rename tests, check the routes are taken
* Fix flutter analyze --flutter-repo warnings
* Add test for initial vs default route
* Update test and fix analyzer warnings
* Add test for initial route only being used initially
* Let Theme insert an IconTheme into the widget tree
* flip the order, no real reason
* Let icon theme use its own fallback
* review notes
* more review notes
Previously we used logical pixels. This made the accessibility metrics
tiny on modern devices, since the OS works in physical units.
Also add a bit more debugging info and some docs.
If the caller doesn't explicitly give the brightness of the primary
color, we now estimate it using an algorithm from the Web Content
Accessibility Guidelines.
Also, this patch contains a function that converts RGB colors to
HSVColors. I was originally going to use that, but the WCAG algorithm
ended up seeming like a better choice. The patch still includes this
function because it's generally useful.
Fixes#5718