* fire service protocol extension events for frames
* start time in micros
* introduce a profile() function; only send frame events when in profile (or debug) modes
* moved the profile() function to foundation/profile.dart
* refactor to make the change more testable; test the change
* fire service protocol events by listening to onFrameInfo
* remove the frame event stream; add a devicelab test
* remove a todo
* final
The output location of gen_snapshot differs based on the engine's target
platform, and we don't know the target platform when building a
platform-independent FLX in JIT mode.
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.
Mainly, this adds documentation to members that were previously
lacking documentation.
It also adds a big block of documentation about improving performance
of widgets.
This also removes some references to package:collection and adds
global setEquals and listEquals methods in foundation that we can use.
(setEquals in particular should be much faster than the
package:collection equivalent, though both should be faster as they
avoid allocating new objects.) All remaining references now qualify
the import so we know what our remaining dependencies are.
Also lots of code reordering in Flutter driver to make the code
consistent and apply the style guide more thoroughly.
* Optimise AnimatedSize for the tight case.
* Remove `default` from a switch statement over enum (so that analyzer will complain if we add enum values).
* Adopt the Size since we use it after the child may have changed (which would throw normally).
* AnimatedCrossFade.layoutBuilder
* 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.
This reverts commit e13e7806e37a28cfef766b72a6987593063b8d34.
Turns out that with this patch, we aren't actually catching all
errors. For example, `flutter analyze --flutter-repo --watch` didn't
report errors in `dev/devicelab/test/adb_test.dart`.
* a11y: implement new SemanticsAction "showOnScreen" (v2)
This action is triggered when the user swipes (in accessibility mode) to the last visible item of a scrollable list to bring that item fully on screen.
This requires engine rolled to flutter/engine#3856.
I am in the process of adding tests, but I'd like to get early feedback to see if this approach is OK.
* fix null check
* review comments
* review comments
* Add test
* fix analyzer warning
* flutter analyze --watch auto detect if in flutter repo
* move isFlutterLibrary from AnalyzeOnce into AnalyzeBase for use by AnalyzeContinuously
* pass --flutter-repo to analysis server when analyzing the flutter repository
* enhance flutter analyze --watch to summarize public members lacking documentation
On Fuchsia, the system compositor is responsible for drawing shadows
for physical model layers with non-zero elevation.
Also fixed a bug where _needsCompositing was not being cleared prior
to updating it.