Commit graph

8094 commits

Author SHA1 Message Date
Michael Goderbauer 7471ff8c89
showOnScreen doesn't trigger scroll if item is already fully on screen (#17729) 2018-05-21 16:33:47 -07:00
ng1905 eda3167ac6 Fix ScrollOffset calculation when childCount is null (#17722) 2018-05-21 15:39:09 -07:00
Hans Muller 12bab13429
Handle the case where InputDecorator is constrained to 0x0 (#17777) 2018-05-21 13:11:02 -07:00
Konstantin Scheglov eba194f776
Mark testWidgets() and testUsingContext() with @isTest. (#17772) 2018-05-21 11:11:23 -07:00
Simon Lightfoot be6501a91c Patch to fix builds with custom targets on iOS simulator. (#17734)
* Patch to fix builds with custom targets on iOS simulator. #16787

* Fix for unused import.

* Code review changes applied.
2018-05-21 03:54:38 -07:00
Devon Carew bb2f63f2cd
remove an unused flutter run flag (#17667) 2018-05-20 20:59:10 -07:00
fmatosqg 197d4315a9 Scan assets from disk (#16413)
Scan folders when asset specified finishes with `/`
2018-05-20 17:52:33 -07:00
Victor Choueiri 8717a5e6f7 Fix Scaffold.endDrawer dartDoc to mention openEndDrawer (#17719) 2018-05-18 17:19:35 -07:00
Greg Spencer 1f5fcb7432
Speed up AnimatedSwitcher. (#17265)
This optimizes the AnimatedSwitcher so that it tags the right widget with its keyed subtree, and avoids rebuilding the transition unnecessarily.

This significantly improves the performance of Chips (which uses AnimatedSwitcher to swap out it's avatar and delete icon children).
2018-05-18 16:27:19 -07:00
Christopher Araüjo 8a4db32bb8 Added onChangeStart and onChangeEnd to CupertinoSlider (#17535)
This is a follow up on issue #17169 and the pull request #17298

This pull request adds the onChangeStart and onChangeEnd callbacks for CupertinoSlider. These are called when a user starts and ends a change respectively.

Pushing for @dcaraujo0872, the PR author.
2018-05-18 14:52:46 -07:00
xster ef25052c51
Let scrollOffsetCorrection on small lists not leave the list stuck in overscroll (#17599) 2018-05-18 14:40:39 -07:00
Todd Volkert 1808ac338c
Add support for custom test error reporters (#17727)
This allows test environments other than `flutter test` to have a hook
into the test exception reporting. Some test environments, for example,
don't just dump error details to the console, but rather require them
to be reported to a separate server.
2018-05-18 13:58:08 -07:00
Todd Volkert 5a24840cf0
Make some matchers in flutter_test final (#17725)
There's no reason for them to read/write.
2018-05-18 12:00:52 -07:00
Andrew Davies 2f397e5dc3
[frdb] Add BUILD.gn file. (#17673)
Adds fuchsia_remote_debug_protocol gn file.
2018-05-18 11:05:16 -07:00
Greg Spencer 3c5a7a3005
Make non-global constants have consistent naming (with just _ instead of _k) (#17584)
Our style guide says the k's are not necessary, and it seems like a good idea to make all the code be consistent on this.

Only naming changes to private vars: no logic changes.
2018-05-17 23:04:41 -07:00
Greg Spencer e4b574d3d3
Cupertino Dialog Changes (#17676)
This replaces abandoned PR #14824 by @ekbiker, and gives it some love.
2018-05-17 22:36:16 -07:00
Alexander Aprelev 89d99f6d01
Add --no-preview-dart-2 when in dart1 mode. (#17708)
This is follow-up to https://github.com/flutter/flutter/pull/17682 to fix dart1 tests.
2018-05-17 21:13:01 -07:00
Noam Drong fd55c4ec5b Add glyph references for Cupertino-style icons (#16605) 2018-05-17 12:42:49 -07:00
Alexander Aprelev 89cb5d268d
Provide isolate id for rpc request to ensure they are run on correct (UI) thread. (#17616) 2018-05-17 11:37:36 -07:00
Ryan Macnak 2e24351fb1
Roll engine to 4374ccc1be46f0f5e0d86b44a76cc3e1f1af8bb0. (#17669) 2018-05-17 10:53:00 -07:00
Greg Spencer ac67efbc83
Moving API doc asset URLs to point to the new location. (#17697)
I'm moving the assets in the assets-for-api-docs repo to a slightly different location to help with organization in that repo, so this PR points the doc URLs to the new location. The old assets won't be removed until this PR makes its way to the API docs website.

No documentation or code changes here, other than changing doc image URLs.
2018-05-17 09:53:06 -07:00
Dan Field 85cb38e71a
Fix consolidate HTTP response and add test (#17082)
* Fix consolidate response and add test

* Update AUTHORS

* ignore content-length

* fix formatting/update comment

* more commas

* Fix consolidate response and add test

* Update AUTHORS

* ignore content-length

* fix formatting/update comment

* more commas

* remove extra newline
2018-05-17 07:04:05 -04:00
Mikkel Nygaard Ravn 78e205c8f2
Make Dart2 the default in Gradle script (#17682) 2018-05-17 09:56:21 +02:00
Michael Goderbauer 6c9a7c5803
fixes (#17624) 2018-05-16 14:20:16 -07:00
Hans Muller 60272ee5bd
Restore the ListTile layout updates (#17661)
restored https://github.com/flutter/flutter/pull/17496
restored https://github.com/flutter/flutter/pull/17580
2018-05-16 12:33:07 -07:00
Sam Rawlins 1f76f7f9d2 Migrate to Mockito 3's anyNamed (#17632) 2018-05-16 10:19:05 -07:00
Jason Simmons bb35bc3627
Add a background paint property to TextStyle (#17586)
See https://github.com/flutter/flutter/issues/11961
2018-05-16 09:19:28 -07:00
Greg Spencer f38743593d
Add Spacer Widget (#16642)
This adds a simple spacer widget first suggested by Scott Stoll (@ScottS2017) in the abandoned PR #15802

This PR replaces that one, cleans it up, and adds a test.
2018-05-15 19:37:21 -07:00
Jonah Williams ebd9a9621d
Increase contrast of Checkbox, Radio, And Switch widgets (#17637) 2018-05-15 17:55:45 -07:00
Hans Muller 6dcb0d62c3
Change kRadialReactionRadius from 24 to 20 (#17620) 2018-05-15 15:06:03 -07:00
liyuqian ae8586cfa1
Show help info instead of crashing if Android SDK is not found (#17610)
Fixes #16832
2018-05-15 14:42:12 -07:00
Chris Bracken c36ec76002
Reduce odds of race in scrollUntilVisible (#17594)
In FlutterDriver.scrollUntilVisible, pause momentarily after we kick off
the waitFor() call, in order to give that call a chance to complete
before we start scrolling if the element is on-screen.
2018-05-15 14:23:44 -07:00
Hans Muller b7fc015f0a
Revert "Updated ListTile layout" (#17612)
This reverts commit ee019c0bca.
2018-05-15 14:08:13 -07:00
Hans Muller c169136eff
Revert "Fixing list tile size in the presence of a large subtitle" (#17611) 2018-05-15 11:52:34 -07:00
David Shuckerow 5159ab3513
Add the ability to limit Draggables to a single axis (#17587)
* Add a draggable axis restrictor and tests
2018-05-15 10:09:25 -07:00
Todd Volkert c4cb0ecff3
Updates to debugDisableShadows (#17577)
1. Make CupertinoSwitch use BoxShadow.toPaint() so that it respects
   the `debugDisableShadows` flag.
2. Increase blue radius on debug banner
3. Only stroke "synthetic shadow" borders if elevation is positive.
2018-05-15 08:55:42 -07:00
Ian Hickson 8be2682ee4
Trivial cleanup of layer debugging flags (#17411)
In theory, this should aid with tree shaking and minutely optimize the code in release builds.
2018-05-14 23:23:55 -07:00
Greg Spencer a25bbc7bfc
Fixing list tile size in the presence of a large subtitle (#17580)
Take into account the subtitle height when adjusting the height of the widget. Added a test.
2018-05-14 15:51:12 -07:00
Alexander Markov 4fb7c91ee3
Plumb --extra-front-end-options in flutter build bundle (#17404) 2018-05-14 09:41:58 -07:00
Hans Muller ee019c0bca
Updated ListTile layout (#17496) 2018-05-14 08:18:17 -07:00
Vyacheslav Egorov 4931b46772
Make --build-shared-library more robust. (#17420)
* Search for a suitable ARM sysroot instead of hardcoding it;
* Add facility to explain why NDK was not found;
2018-05-14 16:36:54 +02:00
Sam Rawlins 5fafface34 Bump mockito to 3.0.0-alpha+5 (#17487) 2018-05-11 15:27:15 -07:00
Jason Simmons 2f122f7d2a
Add a golden image test for centered text (#17517) 2018-05-11 12:17:18 -07:00
Hans Muller 674e44f361
Correct a typo in InputDecorator, affects computeMinIntrinsicHeight() (#17512) 2018-05-11 10:14:32 -07:00
Konstantin Scheglov 9b65fc6529
Rebase after package:isolate fixes. (#17289) 2018-05-10 18:52:33 -07:00
Chris Bracken 1605fbb31a
Add more unit tests for AOT snapshotting (#17493)
Adds unit tests for the following AOT build configurations:
* iOS armv7 profile
* iOS armv7 release
* Android armv7 profile (AOT blob)
* Android arm64 profile (AOT blob)
* Android armv7 release (AOT blob)
* Android arm64 release (AOT blob)
2018-05-10 17:45:51 -07:00
Chris Bracken f685568d90
Update a TODO with issue number (#17494)
Further digging revealed that the reason --no-sim-use-hardfp was
required to be specified explicitly was that Android engine gen_snapshot
binaries are built on Windows with target_os=win.
2018-05-10 17:45:35 -07:00
xster e42c50cf20
Post libtxt/post iOS 11 fidelity fine tuning (#17366) 2018-05-10 17:35:18 -07:00
Greg Spencer c2c64a5a4c
Add onChangeStart and onChangeEnd to slider. (#17298)
This fixes #17169 by adding onChangeStart and onChangeEnd to the slider. These will be called when the user starts a change, and when they end a change, regardless of whether that change is a tap or a drag.

These differ from onChanged, in that they only report when the user starts and ends an interaction, not at every slight change.
2018-05-10 17:29:43 -07:00
Todd Volkert 106231c0de
Use deprecated I/O constants (#17491)
The non-deprecated variants aren't widely available yet
2018-05-10 16:27:57 -07:00
Todd Volkert aab47f0794
Augment flutter screenshot with all supported screenshot types (#17478)
Previously, the only hook into the rasterizer schreenshot code path
was via FlutterDriver.screenshot.  This adds the ability for the
Flutter tool to hook into all three types of screenshots:

1. device (e.g. `adb shell screencap`)
2. Skia (capture spk)
3. Rasterizer (capture PNG via the engine)
2018-05-10 16:09:38 -07:00
Greg Spencer a365c41cb5
Fix handling of null body2 text style for chip and slider (#17311)
Before this change, if you specified a non-null textTheme, but the theme you specified didn't have a body2 defined, then creating a ChipTheme would assert (which means creating a ThemeData would fail).

This adds handling for this corner case to default to reasonable values in that case. The slider had the same problem, but for accentTextTheme, so I fixed that too.

While I had the patient open, Hans and I noticed that TextTheme.merge wasn't doing the right thing in the case where some members were null either, so I fixed that, and added some examples, since merge/copyWith are common operations that are not always well understood.

Fixes #17251
2018-05-10 14:37:14 -07:00
Zachary Anderson bb4afb0472 Roll engine to 37e20af6a324cd4cfa1324b8c644712ef8224359 (#17481) 2018-05-10 14:36:54 -07:00
Devon Carew d427d26d1b
Unpin analyzer - no longer use the version from the sdk (#17479)
* no longer use the analyzer version shipped in the sdk

* update all package versions to the latest
2018-05-10 13:31:54 -07:00
Chris Bracken 28e644e87a
Explicitly specify softfp ABI for armv7 builds (#17453)
This reverts #17147, which was safe under the assumption that
getArtifactPath() returns a platform-specific gen_snapshot instance
(which have the correct default set for this flag) -- it turns out that
though we pass the platform to getArtifactPath(), we always return the
host gen_snapshot for Android.

A followup patch will update getArtifactPath and revert this patch.
2018-05-10 12:45:15 -07:00
Devon Carew 8e4b349c4f
increase test timeouts (#17477) 2018-05-10 11:33:01 -07:00
Devon Carew 09dec7f508
re-write flutter analyze to use the analysis server (#16979)
re-write flutter analyze (the single-shot and --flutter-repo) to use the analysis server
2018-05-10 09:48:40 -07:00
Ian Hickson ca94bfdfc6 Factor our common Paint-building code used with BoxShadow (#17363) 2018-05-09 22:42:38 -07:00
Jonah Williams 5732219500
Extend SystemUiOverlayStyle with additonal values for each platform (#17171) 2018-05-09 19:30:17 -07:00
Devon Carew f48dec570c
rename 'full restart' to 'hot restart' (#17408) 2018-05-09 17:43:13 -07:00
Hans Muller a02568b3ca
Added MediaQuery.textScaleFactorOf() (#17450) 2018-05-09 17:08:22 -07:00
Michael Goderbauer 7809651c74
Put cursor at end of field if textfield is focused (#17367) 2018-05-09 16:05:47 -07:00
Michael Goderbauer dcb47f62ec
A11y fixes and tests for PopUpMenu (#17446) 2018-05-09 16:05:20 -07:00
Chris Bracken 5d8d14b781
Add caching for kernel compiles during AOT builds (#17439)
We've always cached kernel compiles during bundle builds. This adds
caching for kernel compiles during AOT builds by moving caching into the
KernelCompiler.compile() method rather than around each invocation of it.

This also filters buildbot paths included by the kernel compile that are
not present on the local machine at paths /b/build/slave/Linux_Engine/...
The kernel compiler should probably include an option to not emit these
paths in the depfile, since these are used both by Gradle and the
Fingerprinter class.
2018-05-09 13:34:58 -07:00
Chris Bracken a751678563
Allow 32-bit iOS device simulators (#17443)
Previously, Flutter did not support iOS devices with armv7 or armv7s
CPUs. We now support these devices. This eliminates the previous
hardcoded checks that prevented running on simulators of older devices.

We maintain the existing restriction on running on watchOS or tvOS
simulators.
2018-05-09 13:34:39 -07:00
Chris Bracken 1c27a458a8
Correct profile-mode AOT snapshot flags (#17435)
Previously, in non-release (i.e. profile) AOT builds, we were setting
--no-checked and --conditional_directives flags. --no-checked is the
default, and we don't make use of conditional directives in Flutter.
2018-05-09 12:31:36 -07:00
Chris Bracken e4f553324a
Add pathFilter to Fingerprinter (#17412)
Allows users of Fingerprinter to filter the set of paths collected from
the explicitly-specified paths and those collected from depfiles.

In some cases, depfiles are emitted with files that are not present on
the local disk (e.g. the frontend compiler currently emits buildbot
paths for the dart core libraries and dart:ui). These files will not
materially affect whether we need to re-run a build action for which
they are inputs, since they're not present in the filesystem and
therefore cannot change.
2018-05-09 10:55:23 -07:00
Jason Simmons 4b6e574466
Use unselected styles for the tabs adjacent to the selected tab (#17397)
Fixes https://github.com/flutter/flutter/issues/16169
2018-05-09 09:56:35 -07:00
Danny Tuppeny 768fca8be9 Trim all space/dots from end
Depending on whether can read the AVD (or it even has all fields populated) we might get extra "empty" columns, so this trims all blank cells from the end.
2018-05-09 16:03:59 +01:00
Danny Tuppeny 6cd22d01aa Use correct path for Simulator 2018-05-09 16:03:59 +01:00
Danny Tuppeny 9eb3bf5ed5 Don't show last bullet if there's no label 2018-05-09 16:03:59 +01:00
Danny Tuppeny e9281c4ac0 Fix formatting 2018-05-09 16:03:59 +01:00
Danny Tuppeny 72d0e0b41a Add text explaining how to run an emulator 2018-05-09 16:03:59 +01:00
Danny Tuppeny 20a2a202ee Add 'emulator' as an alias for 'emulators'
It feels more nautral to type when doing `--launch x` or `--create x`.
2018-05-09 16:03:59 +01:00
Danny Tuppeny e8f454c96f Fix signature of mock launch 2018-05-09 16:03:59 +01:00
Danny Tuppeny 7a810261fa Only wait up to 3 seconds for emulator
Emaultor keeps running on a seuccessful launch, so this automatically returns after 3 seconds if the process hasn't quit (we have to wait for some period to get stderr in the case of a failure).
2018-05-09 16:03:59 +01:00
Danny Tuppeny 11076bfb43 Add missing awaits 2018-05-09 16:03:59 +01:00
Danny Tuppeny f850d04ef4 Add missing await 2018-05-09 16:03:59 +01:00
Danny Tuppeny 3cb539fdb5 Switch streams to Future<Lists> 2018-05-09 16:03:59 +01:00
Danny Tuppeny e456330a91 Remove superflous whitespace 2018-05-09 16:03:59 +01:00
Danny Tuppeny 3bb6b5e660 Remove TODO
I can't come up with a better name; anything with Simulator or Device in it will be confused with the existing IOSSimulator/Device classes (which represent the running devices).
2018-05-09 16:03:59 +01:00
Danny Tuppeny a43dfe2000 Change start->launch when refering to emulators 2018-05-09 16:03:59 +01:00
Danny Tuppeny 16dc94ef93 Update "no devices" text to suggest "flutter emulators" 2018-05-09 16:03:59 +01:00
Danny Tuppeny b4c967abee Re-order columns 2018-05-09 16:03:59 +01:00
Danny Tuppeny ed3807d0e3 Use null instead of empty 2018-05-09 16:03:59 +01:00
Danny Tuppeny 76815faeac Flatten descriptions from Stream to List 2018-05-09 16:03:59 +01:00
Danny Tuppeny b5a3d26f75 Fix typo 2018-05-09 16:03:59 +01:00
Danny Tuppeny 445273f7d5 Fix filtering of emulator list
`flutter emulators nexus` will now return only those that'd match (eg. same things that `flutter emulators --start nexus` would match).
2018-05-09 16:03:59 +01:00
Danny Tuppeny 3626556d21 Remove unused code 2018-05-09 16:03:59 +01:00
Danny Tuppeny b7497d558f Remove unused emulator diagnostics 2018-05-09 16:03:59 +01:00
Danny Tuppeny e2b8c86b96 Add dantup to TODO comments 2018-05-09 16:03:59 +01:00
Danny Tuppeny 259dd571a2 Remove newline 2018-05-09 16:03:59 +01:00
Danny Tuppeny 2144c7a6d3 Tweak text because we check IDs and names
And it's not obvious to the use what the ID is.
2018-05-09 16:03:59 +01:00
Danny Tuppeny 1c7dce3406 Improve text 2018-05-09 16:03:59 +01:00
Danny Tuppeny 90bdcef9f9 Remove redundant lines from errors 2018-05-09 16:03:59 +01:00
Danny Tuppeny da5a64ec7f More Windows fixes
Added an exists check to ensure we don't try to run if emulator is missing, but that requires the file extension for Windows.
2018-05-09 16:03:59 +01:00
Danny Tuppeny 03b5fe3d94 Handle nulls caused by missing information 2018-05-09 16:03:59 +01:00
Danny Tuppeny 1037586dd7 Don't try to build emulators from empty output 2018-05-09 16:03:59 +01:00
Danny Tuppeny fe762666a2 Improve error message when no AVD path 2018-05-09 16:03:59 +01:00
Danny Tuppeny 7a33888693 Tidy up 2018-05-09 16:03:59 +01:00
Danny Tuppeny 5793a3c372 Fix crash on Windows caused by no HOME var
Windows sets HOMEDRIVE/HOMEPATH.
2018-05-09 16:03:59 +01:00
Danny Tuppeny b096c57bbd Remove launch status
It's too fast and leaves weird output on the screen
2018-05-09 16:03:59 +01:00
Danny Tuppeny cec37ab46a Fix typo 2018-05-09 16:03:59 +01:00
Danny Tuppeny 6ff84d084b Improve formatting 2018-05-09 16:03:59 +01:00
Danny Tuppeny c0b2e78391 Add support for iOS Simulator in flutter emulators 2018-05-09 16:03:59 +01:00
Danny Tuppeny 799678f0a7 Add some tests around device+ini parsing 2018-05-09 16:03:59 +01:00
Danny Tuppeny 4c67885b8e Add support for launching emulators 2018-05-09 16:03:59 +01:00
Danny Tuppeny 4d7c3c775f Read information about AVDs from config.ini 2018-05-09 16:03:59 +01:00
Danny Tuppeny 486e9534bf Add some emulator tests 2018-05-09 16:03:59 +01:00
Danny Tuppeny 2bdb3bbe0e Fix references to Devices and remove unused properties 2018-05-09 16:03:59 +01:00
Danny Tuppeny 53840fb0ce Add basic support for listing Android AVDs
Very basic support for "flutter emulators" which just lists the available Android AVDs.

Relates to:

https://github.com/flutter/flutter/issues/14822
https://github.com/Dart-Code/Dart-Code/issues/490
https://github.com/flutter/flutter/issues/13379
2018-05-09 16:03:59 +01:00
Todd Volkert 21c2e47f29
Add test of expectAsync.skip (#17415) 2018-05-08 23:23:34 -07:00
Anatoly Pulyaevskiy 50a1d91ff3 Allow customization of TextSpan in EditableText (#16909)
* Allow customization of TextSpan in EditableText

* Addressed PR comments

* Added test with custom-styled EditableText subclass

* More code style fixes
2018-05-08 17:40:54 -07:00
Chris Bracken 8b8d368d2b
Replace --prefer-shared-library with --build-shared-library (#17394)
This replaces the --prefer-shared-library flag, which falls back to
regular (non-shared-lib) compile if the NDK is not found, with the
--build-shared-library flag, which exits with an error message if the
NDK is not found.

This simplifies the set of allowed code paths through AOT compile,
resulting in better testability and easier-to-follow logic. It also
results in more predictable behaviour for continuous integration and
other scenarios.
2018-05-08 17:28:53 -07:00
Chris Bracken 231b9425d6
Block debug AOT snapshot builds (#17393)
We previously blocked iOS AOT builds, but Android debug builds are
always JIT builds.
2018-05-08 11:06:58 -07:00
Chris Bracken 671489ff44
Update kernel compile log message (#17390)
Updates the message emitted when a kernel compile is skipped in the
build bundle action. Since we now use fingerprinting to enable
performance of script snapshots, AOT snapshots, and kernel compiles,
this helps a bit with debugging.

Also switches to trace level logging.
2018-05-08 11:06:40 -07:00
Peter Etelej e54887fb12 Fix minor dartdoc typo (#17381)
Minor typo fix for BottomAppBar doc
2018-05-08 08:17:44 -07:00
Danny Tuppeny 19ad6528e8 Don't write flutter stderr to output
Add to the extension thrown if it fails instead.
2018-05-08 10:23:40 +01:00
Danny Tuppeny 83296e74a1 Pass --run-forever to flutter-tester to ensure it doesn't prematurely quit
Without this, flutter-tester quits immediately after executing main().
2018-05-08 10:23:40 +01:00
Mikkel Nygaard Ravn 61c7171872
Recommend using Cocoapods 1.5.0 (#17308) 2018-05-08 08:02:39 +02:00
xster 372ac6d5d4
Let goldens push via ssh by default (#17369) 2018-05-07 21:52:50 -07:00
Todd Volkert 30abc54bdd
Enable deterministic rendering on flutter_tester tests (#17373) 2018-05-07 19:53:34 -07:00
Todd Volkert 2ba0deb77a
Make runAsync() run in child zone, not root zone (#17359)
Some APIs (such as the ones in package:test) assume you're running
in a child zone of the test zone by attempting to extract information
from the zone values. When we run runAsync() in the root zone, those
zone values are lost, and such API methods don't work.

The solution is to run in a child zone, but with a specification that
says to use the Root zone for task scheduling (both timers and
microtakss).
2018-05-07 18:33:44 -07:00
Jonah Williams cb7afc4a63
Roll engine to 57f53b98a482c6f7f921f06f974c4d199097bfa1 (#17362) 2018-05-07 18:24:29 -07:00
Chris Bracken de332ec782
Enable universal iOS binaries in templates (#17358)
Eliminates the restrictions to build in arm64 mode only in iOS project
templates created by flutter create.
2018-05-07 14:13:53 -07:00
Todd Volkert 52e4605677
Golden file fixes (#17299)
1. Make goldenFileComparator getter return `null` if it's set to the
   uninitialized comparator, which matches the behavior of the setter
   (it sets it to the uninitialized comparator if the caller specifies
   `null`).
2. Make the uninitialized comparator return trivial success (and print
   a message) when asked to compare as opposed to throwing. This ensures
   that the comparator will play nicely with live widget bindings
3. Augment documentation
4. Add assert that test doesn't modify the value of `autoUpdateGoldenFiles`
2018-05-07 11:33:41 -07:00
Chris Bracken 849676fc7f
Support multi-arch iOS binaries (#17312)
This change adds support for armv7, arm64, and universal iOS apps.

This change eliminates iOS target architecture hardcoding (previously
arm64 only) and uses the target architecture(s) specified in Xcode's
ARCHS setting ('Architectures' in Xcode Build Settings).

For universal binaries, set ARCHS to its default value, $(ARCHS_STANDARD).

Note that after changing the architecture in Xcode, developers should
run 'pod install' from the ios subdirectory of their project. A separate
change (that will land before this one) will add support for
automatically detecting project file and Podfile changes and re-running
pod install if necessary.

This change also adds an --ios-arch option to flutter build aot. In iOS
AOT builds (in profile and release mode), this dictates which
architectures are built into App.framework. This flag should generally
be unnecessary to set manually since flutter build aot is typically only
invoked internally by flutter itself.
2018-05-06 18:43:07 -07:00
Chris Bracken 5834f41770
Build App.framework for all requested architectures (#17296) (#17317)
In debug mode iOS builds, we build a stub App.framework with no
functionality, since the engine itself loads the code from the included
bundle and subsequently via hot reload. This is simply done for
consistency with profile/release AOT app structure.

To satisfy the linker, ensure that we're building this code for all
build architectures, not just CURRENT_ARCH.

This is pre-work for supporting arbitrary iOS architectures (armv7,
arm64, universal) in Flutter.

This re-lands feb16d8, which was reverted due to a flaky test.
2018-05-06 18:42:37 -07:00
Chris Bracken b2b4665926
Revert "Build App.framework for all requested architectures" (#17316)
* Revert "Build App.framework for all requested architectures (#17296)"

This reverts commit feb16d8d01.
2018-05-04 18:17:35 -07:00
Hans Muller f8d0d877f5
Textfield InputDecorator height can grow to accomodate error text (#17292) 2018-05-04 13:26:46 -07:00
Chris Bracken feb16d8d01
Build App.framework for all requested architectures (#17296)
In debug mode iOS builds, we build a stub App.framework with no
functionality, since the engine itself loads the code from the included
bundle and subsequently via hot reload. This is simply done for
consistency with profile/release AOT app structure.

To satisfy the linker, ensure that we're building this code for all
build architectures, not just CURRENT_ARCH.

This is pre-work for supporting arbitrary iOS architectures (armv7,
arm64, universal) in Flutter.
2018-05-04 13:20:17 -07:00
Mikkel Nygaard Ravn 43c74341b2
Revert "Recommend upgrading to Cocoapods 1.5.0 (#17210)" (#17300)
This reverts commit c64ace84d5.
2018-05-04 20:50:01 +02:00
Mikkel Nygaard Ravn c64ace84d5
Recommend upgrading to Cocoapods 1.5.0 (#17210) 2018-05-04 20:31:09 +02:00
Michael Goderbauer 7984f6e043
Implicit a11y scrolling for iOS (and caching in Viewports) (#17021) 2018-05-04 10:48:06 -07:00
Todd Volkert be09a200ee
Expose generateTestBootstrap() as public API in test harness (#17290)
This will allow external tools that wrap our test harness to share the
code that generates the test bootstrap.

This change exposed an issue whereby the LocalGoldenFileComparator
was being too strict in its URI handling, so this changes relaxes
that constraint as well (and adds associated tests).
2018-05-04 10:31:53 -07:00
Todd Volkert d820e5f3b1
Use deprecated io constants (#17278)
The new values are not ready for use yet inside Google
2018-05-03 22:27:29 -07:00
Chris Bracken cdbdafa8f3
Rerun pod install on changed Xcode project, Podfile (#17274)
If the developer changes their Xcode build settings and their project
has plugins, pod install is required, (e.g. to pick up changes to the
target architecture).

Similarly, manual edits to the Podfile should trigger a pod install.
2018-05-03 19:40:16 -07:00
Yegor b2c98f9a4e
Roll engine to e976be13c51448f89107d082ec81e2b6731671fa (#17266)
* Roll engine to e976be13c51448f89107d082ec81e2b6731671fa

* move away from deprecated constants
2018-05-03 19:24:48 -07:00
Todd Volkert c8908ff0e2
Follow-on work to goldens (#17267)
* Exclude flutter_goldens package from dartdoc because it's for internal
  use only
* Document why flutter_tools doesn' tneed to be excluded from the list of
  packages to document
* Performance optimization in the flutter comparator, and associated
  test updates.
2018-05-03 17:47:50 -07:00
Chris Bracken 66c7b6a935
Add Fingerprinter class (#17255)
Adds a Fingerprinter utility class that can be used to compute unique
fingerprints for a set of input paths and build options, compare to the
output of a previous run, and skip the build action if no inputs or
options have changed. The existing Fingerprint class still does all the
heavy lifting. Fingerprinter adds common operations such as
reading/writing/comparing fingerprints and parsing depfiles.

This migrates existing uses of Fingerprint over to Fingerprinter.

This also adds better fingerprinting to AOT snapshotting, which
previously failed to include several options in its fingerprint
(--preview-dart-2, --prefer-shared-library).
2018-05-03 17:31:37 -07:00
Chris Bracken 322eb81a79
Revert longPress/Tap and Gallery changes (#17269)
Revert longPress/Tap and Gallery changes
2018-05-03 16:51:45 -07:00
Andrew Davies 284d87ddaf
[frdp] Fix authors statement. (#17263) 2018-05-03 15:16:04 -07:00
Andrew Davies 5d590afa7d
[frdp] Adds DartVM events/driver support. (#17170)
This change adds Dart VM event support (listening for when a VM starts/stops by using a periodic heartbeat).

This also adds support to connect to a specific `IsolateRef` through the flutter driver, so that when an application spawns, it can immediately be driven (as shown in included example code).
2018-05-03 14:51:52 -07:00
Jonah Williams 50bd39a913
Add longPress/Tap event to SemanticService (#16945) 2018-05-03 11:04:43 -07:00
Ian Hickson 57dd51a301
Fix documentation for UnconstrainedBox and code cleanup (#17249) 2018-05-03 10:56:35 -07:00
xster 57fa40efac
Update the auto-inserted cupertino_icons dependency version which fixes linter warnings (#17229) 2018-05-03 09:39:43 -07:00
Konstantin Scheglov 9fe53b0d2b
Export @required from src/widgets/framework.dart (#17208) 2018-05-03 08:50:40 -07:00
Todd Volkert 65079ad5f2
Add Flutter-repo-specific golden comparator (#17205)
In order to avoid checking binaries into flutter/flutter,
this comparator can be used to retrieve golden files from
a sibling flutter/goldens repository.

https://github.com/flutter/flutter/issues/16859
2018-05-03 07:39:41 -07:00
Todd Volkert 29775f74fb
Handle pubspec.yaml files with no dependencies (#17195)
Currently, `flutter update-packages --force-upgrade` will
crash if it encounters a pubspec.yaml file with no dependencies
(either regular or dev). The assumption that we'd never see
such pubspec files is no longer valid, as we have such a file
in one of our tests.
2018-05-02 21:03:37 -07:00
Chris Bracken 7f0876700a
Handle multi-arch builds in Xcode lipo phase (#17212)
Correctly split ARCHS into a Bash array in xcode_backend.sh.

Previously, when ARCHS contained multiple values (e.g., ARCHS="armv7 arm64"),
we treated that as a single architecture, and lipo invocation would
fail.
2018-05-02 18:50:35 -07:00