* Don't time out if process terminates when told to stop but response was not processed
While trying to reproduce #20822 I found a condition where the app may quit before the `app.stop` response is received but this code (which is called in integration test teardown) would sit around waiting and time out. With this change, the process exit is considered a valid response to the stop request.
* Add process exit to log for better errors in failures
This log can be turned on for debugging but is also dumped when a test fails (in certain conditions). With this in the log, it'll be clear if the timeout is because we're waiting for an event but the process quit.
This re-lands commit c594696.
The original PR was breaking the integration test as while the
gesture was active the AndroidView's parent widget got rebuilt which
disposed the _AndroidViewGestureRecognizer and dropped pointer events
from that point on.
This change adds a unit test that reproduces the failure case, and
fixes it by not rebuilding the _AndroidViewGestureRecognizer if the
list of gesture recognizers did not change.
Pointer events are dispatched to the Android view only if it won
Flutter's gesture arena for the pointer.
Specific gestures that should be dispatched to the android view can be
specified with the gestureRecognizers parameter.
* added keyboard functionatliy to android builds
* Added tests
* almost ready for review
* ready for review
* Fixes
* final comments
* final commit
* removing raw keyboard changes
* removing raw keyboard changes
* removing raw keyboard changes
* actual last commit
* fixed the imports
* a few more changes
* A few more changes
* a few changes
* Final changes
* Final changes2
* final actual commit for real
* final actual commit for real2
* final actual commit for real3
* final actual commit for real4
* final
* final 2
* f
* f2
* fin
* fin 2
* fin3
* fin4
* Start logger in startProgress to avoid assertion failure
There are lots of places that create a Status() and all but two of them call ..start() immediately. This is one of the places that doesn't, which causes an assertion failure when running with --enable-asserts and the other is in the same file (I suspect it's also incorrect, but possibly it's never used - I'll look at that separately when I can trace some code that calls it).
Fixes#20812.
* Enable asserts for tools tests
* Fix lint
* Rename enableAsserts -> enableFlutterToolAsserts
To make it clearer that it only enables asserts for flutter_tools when set.
The team captain wins the arena on behalf of the team.
When any of the team members claims victory for the arena the captain
accepts the gesture.
This is used when embeddeding platform views - we allow configuring a
set of gestures that should be forwarded to the platform view.
We add the set of gesture recognizers to a GestureArenaTeam with a
captain, and if the captain accepts the gesture we forward it to the
platform view.
This fixes#20483 by letting InkWell do its own clipping.
PathOp.intersect is not used because we have too many unit tests that rely on clipping (e.g., paints..clipXXX()..drawCircle())
The goldens are updated due to small AA changes of the additional clipPath.
This test is sometimes flaky (#20822) because the two processes try to stop the same app. This fix changes to just gracefully terminate the attach process without explicitly trying to stop and then uses the original spawning process to stop the app.
I can't repro the flake locally to be certain, but I've verified only one stop command is sent now so it *should* be good.
- remove an //ignore that is no longer needed
- fix some intrinsic methods that used the API incorrectly (shouldn't affect correctness but should make things a tiny bit more efficient)
- add some asserts to help track down bugs quicker
- update a TODO to point to the currently relevant bug
- fix some indenting
- improve the naming of some privates to improve readability
* Don't keep parsing results once we've had the event we expected
* Report errors if an app.stop event is received while waiting for another event
* Don't throw if we see app.stop event when we've just sent an app.stop request
* Improve debug print to include --start-paused if being used
* Improve wrapping
* Add ability to set collapse mode in flexible space bar
* Add tests to collapse mode in flexible space bar
* Fix minor style nit
* Fix getting collapse mode does not handle unknown values
* Change const key to final in space bar collapse mode test
* Return null collapse padding if mode is unknown
flutter_tools cannot depend on flutter_goldens (as flutter_goldens
depdends on the Flutter sdk), so this commit splits client.dart from
flutter_goldens to a pure-dart flutter_goldens_client package.
* `flutter analyze` cleanup
* Make `--dartdocs` work in all modes.
* Make `analyze-sample-code.dart` more resilient.
* Add a test for `analyze-sample-code.dart`.
* Minor cleanup in related code and files.
* Apply review comments
* Fix tests
* Fixes resulting from audit of issues links
I looked at every link to GitHub in our repo. For cases where we had a TODO that was waiting for a bug to be fixed, and the bug has now been fixed, I applied the pending change. For cases where the link was out of date, I updated the link.
* Update run_test.dart
skip this test again since it failed on linux and macos bots