Commit graph

10064 commits

Author SHA1 Message Date
Vyacheslav Egorov f5bbc5bb76
Upgrade packages (#14588)
We need to pull in Dart 2 compliant mockito

Fixes #14532
2018-02-09 11:16:58 +01:00
Vyacheslav Egorov d20125c3da
Change GlobalObjectKey.toString to strip away State<StatefulWidget>. (#14558)
This allows const GlobalObjectKey(0) to be concisely formatted as
[GlobalObjectKey int#0000] in both Dart 2 and Dart 1 modes.

Without this change it would be formatted as
[GlobalObjectKey<State<StatefulWidget>> int#0000] because in Dart 2
types are instantiated to bounds.

In addition to retaining general readability this also fixes few
tests that rely on this short string representation (see
test/widgets/global_keys_duplicated_test.dart).
2018-02-09 09:51:58 +01:00
Jason Simmons fa122f5a6b
Disable selection of the Android ARM64 target platform based on the attached device (#14581)
The current ARM64 back end generates code that crashes on some devices,
including Pixel phones.  With this change, the android-arm64 target will
not be used by "flutter run" unless explicitly requested.
This is intended as a workaround until we can roll out an engine with the
required Dart VM fix.

See https://github.com/flutter/flutter/issues/14454
2018-02-08 17:51:20 -08:00
Jason Simmons 3c9ad811f7
Add a flutter run option that can override the default target platform (#14537)
By default flutter run will build a 64-bit APK if the attached Android device
is 64-bit.  Specifying --target-platform=android-arm will deploy a 32-bit APK
to a 64-bit device.

Fixes https://github.com/flutter/flutter/issues/14526
2018-02-08 14:56:01 -08:00
Vyacheslav Egorov 7db0564ab6
Fix message channel usage in few tests. (#14557)
Channels don't preserve Map and List type arguments: Map<String, Object>
arrives as Map<dynamic, dynamic> to the receiver.

In Dart 2 type system dynamic no longer serves as bottom type so
Map<dynamic, dynamic> can't be assign to a variable of type
Map<String, dynamic>.

Issue #14556
2018-02-08 22:25:25 +01:00
Mikkel Nygaard Ravn 9bc048cb66
Update documentation on how to test flutter_tools (#14567) 2018-02-08 22:15:08 +01:00
Vyacheslav Egorov 90ddb2370b
Fix text_style_text.dart to be Dart 2 compliant. (#14559)
In Dart 2 mode we throw different exception: compiler generates
throw of a compilation error instead of runtime throwing
noSuchMethod.
2018-02-08 22:10:31 +01:00
jcollins-g 7982694a0c
Hide the NDK warning that should never happen with a regexp (#14503) 2018-02-08 12:16:04 -08:00
asiva 225b52bc0e Fix iOS build which broke after the change to fuse --strong option into
--preview-dart-2.
2018-02-08 11:38:12 -08:00
Danny Tuppeny 0885866265
Mark run_machine_concurrent_hot_reload as flaky (#14563)
Sometimes fails writing to stdout as flutter terminates. Marking as
flaky until resolved.
2018-02-08 19:03:13 +00:00
asiva 83e0ca24fd Fuse --strong into --preview-dart-2 option. 2018-02-08 09:18:52 -08:00
Vyacheslav Egorov 4814303bf7
Partially fix Dart 2 issues in animated_icons.test. (#14531)
Use mockito in the Dart 2 compliant way:

* use typed(...) in appropriate places to wrap matchers like any;
* don't pass matcher directly into the calls - use `argThat(matcher)`.

Also rename paintColorMatcher to hasColor to match how other similar
functions are named and how the code reads.
2018-02-08 17:00:18 +01:00
Vyacheslav Egorov 0556e14f18
Strong mode fixes in tests (#14520)
* Use explicit types for onClick handler in diagnostics_test.

This test formats it to string and expects exact match.

Before this change onClick had type () => dynamic in Dart 1 and () => Null in
Dart 2.

* Fix strong mode issues in packages/flutter/test/material/dropdown_test.dart

Pass explicit type argument to renderObjectList(...) in expressions like

     List<RenderBox> l = tester.renderObjectList(...).toList();

Dart 2 mode inference is not strong enough to infer RenderBox as a type argument
fto renderObjectList and passes RenderObject instead, which later leads to
runtime check failures (because List<RenderObject> is not List<RenderBox>).

* Fix strong mode issues in packages/flutter/test/material/theme_test.dart.

Pass type argument explicity to widgetList. Dart 2 type inference can't infer
it by itself.

* Fix strong mode issue packages/flutter/test/widgets/unique_widget_test.dart

Pass correct type argument to GlobalKey.

* Fix type annotation in packages/flutter/test/material/app_test.dart.

pushNamed returns Future<Object> not Future<String>.
2018-02-08 09:31:34 +01:00
asiva 8acb68888c Fix typo. 2018-02-07 21:28:18 -08:00
asiva bdc6f10293 Fix issues. 2018-02-07 21:28:18 -08:00
asiva e122d5d1d5 Revert "Fixes in flutter framework code to address the mixin issue raised"
This reverts commit 1c236d5245.
2018-02-07 21:28:18 -08:00
asiva fb9743d7ac Roll dart sdk to 2.0.0-dev.20.0 2018-02-07 19:01:07 -08:00
amirh 4ae1b5f415
Paint the shape border in the Material widget (#14383) 2018-02-07 15:18:04 -08:00
Jason Simmons 3e1ef19fcb
Fix a type error in Scrollable.ensureVisible (#14525)
Fixes https://github.com/flutter/flutter/issues/14492
2018-02-07 14:17:08 -08:00
Greg Spencer 88e0d33c27
Fix the build by removing offending test. (#14530)
I wanted to run a "real command" as part of the test, but in the interest of fixing the build, I'm just removing the test.
2018-02-07 13:47:34 -08:00
Greg Spencer df791279ab
Fix process running during package creation (#14508)
There were some problems I introduced with the last PR for this. It passed the test, but failed in practice.

This adds tests for those failure cases, adds a "--help" and fixes the test so that it doesn't try and actually download MinGit as part of the Windows test.

I added package:platform as a dependency, so I did a force upgrade on the packages.

Also, re-enabling 'create package' in the cache warming code, now that #14448 is fixed.
2018-02-07 12:21:14 -08:00
Danny Tuppeny 8ccc9a45c9 Add flutter doctor support for VS Code (#14463)
Looks in default install locations on Mac, Linux and Windows for VS Code. If found, looks in default extension location to see if Dart Code is installed.

If VS Code is not installed, nothing is reported. If VS Code is installed without Dart Code, a warning is shown.
2018-02-07 10:49:54 -08:00
Hans Muller 788f01f90d
Revert kRadialReactionRadius was 20 is now 24 again (#14522) 2018-02-07 10:26:55 -08:00
Ian Hickson a441a4030f
Fix the channel-switching logic (#14507) 2018-02-07 09:56:45 -08:00
Chris Bracken 66ecfb02c2
Apply media padding to persistent footer buttons (#14512)
Applies left, right, and bottom media padding (e.g. iOS safe area
insets) around ButtonBar in the material scaffold
persistentFooterButtons.
2018-02-07 09:34:46 -08:00
Danny Tuppeny efb88a0380 Reject requests for hot reload if a hot reload is already in progress. (#14494)
* Reject requests for hot reload if a hot reload is already in progress.

Fixes #14184

* Implement TODO, verifying further hot reloads complete sucessfully.

* Fix year on new file.

* Add missing type annotations to fix lints

* Add run_machine_concurrent_hot_reload to manifest for CI

* Reformat document

... but undo things that cause lints (like single-line ifs)

* Extract std stream transformations

* Make inProgressHotReload private

* Disallow all types of reload while hot reload in progress

* Simplify code handling in-progress hot reloads
2018-02-07 08:58:23 -08:00
Amir Hardon d0a72752ac update buttons_test to expect clipPath instead of clipRRect 2018-02-06 18:44:42 -08:00
Amir Hardon c90983dde9 add a pushClipRRect override to TestRecordingPaintingContext 2018-02-06 18:44:42 -08:00
Amir Hardon cc060ff2f2 Use PhysicalModel for the default canvas Material.
This is done to keep in place the workaround we have for rectangular material
where PhysicalModel skips the saveLayer call.
2018-02-06 18:44:42 -08:00
Amir Hardon b40c112e22 Update MaterialType.canvas documentation.
While the documentation for MaterialType.canvas described it as
an infinite shape. The implementation has been clipping it to the
bounding rectangle for a while. And it is already used in the wild as a
rectangular piece. So we just update the documentation to match that.
2018-02-06 18:44:42 -08:00
Amir Hardon b79f4e319d Revert "Use RRects instead of Paths when possible in Material. (#14404)"
This reverts commit d9ef7df978.
2018-02-06 18:44:42 -08:00
Chris Bracken 6494dde364
Apply media padding in Gallery Shrine demo (#14506)
Applies horizontal and bottom safe area insets to the Shrine demo in the
Gallery. Top insets are not applied due to the presence of the
omnipresent sliver app bar. Specifically, this ensures that the grid
cards are inset inside the iPhone X notch in horizontal mode, and that
the bottom of the grid is positioned above the iOS home indicator.
2018-02-06 15:54:10 -08:00
Greg Spencer 8a2df39662
Create packages only for release builds, and publish when created. (#14476)
This changes the publishing of archives so that it happens on the chrome_infra bots when they build a packaged branch instead of as part of the dev_roll process.

It uses the tagged version in the branch, and leaves the git repo that it clones checked out on the branch and hash used to build the package.

It updates metadata located at gs://flutter_infra/releases/releases_.json (where is one of macos, linux, or windows) once published, since it would be complex to do the proper locking to keep them all in one shared .json file safely.

A separate [change to the chrome_infra bots](https://chromium-review.googlesource.com/c/chromium/tools/build/+/902823) was made to instruct them to build packaged for the dev, beta, and release branches (but not master anymore).
2018-02-06 15:32:19 -08:00
Chris Bracken 4b878dc687
Add minimum insets to SafeArea (#14505)
As a convenience, this adds a set of minimum padding to apply. The
greater of the minimum padding and the media padding is applied to each
edge.
2018-02-06 15:27:39 -08:00
Chris Bracken 35c2267ffe
Add SliverSafeArea widget (#14499)
A SafeArea-like widget that applies a SliverPadding instead of a
Padding.
2018-02-06 14:28:58 -08:00
Greg Spencer 66febf2663
Add semantics traversal order example (#14174) 2018-02-06 14:13:08 -08:00
Greg Spencer 14309b9311
Adds the semantic node traversal API. (#14060)
This adds an API for defining the semantic node traversal order.

It adds a sortOrder argument to the Semantics widget, which is a class that can define a list of sort keys to sort on. The keys are sorted globally so that an order that doesn't have to do with the current widget hierarchy may be defined.

It also adds a shortcut sortKey argument to the Semantics widget that simply sets the sortOrder to just contain that key.

The platform side (flutter/engine#4540) gets an additional member in the SemanticsData object that is an integer describing where in the overall order each semantics node belongs. There is an associated engine-side change that takes this integer and uses it to order widgets for the platform's accessibility services.
2018-02-06 13:24:16 -08:00
xster 0f7d442892
Keep the intermediate APK signed the same way before going to the play store (#14484)
* Keep the intermediate APK signed the same way before going to the play store

* Don't run on PRs
2018-02-06 11:32:35 -08:00
Michael Goderbauer be0c4888b0
Make various images in gallery accessible (#14467)
Discovered during an a11y review of the gallery.
2018-02-06 09:42:18 -08:00
amirh 0da6bad656
add a matcher for area covered by paths (#14469) 2018-02-06 09:13:51 -08:00
Hans Muller 28c8fd10cf
Radial splash and radio button update (#14483) 2018-02-06 08:20:51 -08:00
xster 1c5ed9613b
Don't install google could sdk on Travis when not needed (#14481) 2018-02-06 01:08:48 -08:00
Alexandre Ardhuin 2e80bf1db7
unnessary parenthesis (#14475) 2018-02-06 09:00:11 +01:00
Alexander Aprelev ede01a773f Roll engine to dart ea91bc9888184d5a2fc309c36656fdd325ef503c 2018-02-05 18:23:52 -08:00
Alexander Aprelev e0685aff2c Roll engine to pre-dart 2018-02-05 18:23:52 -08:00
Chris Bracken cad61b1817
Mark iOS App ID param as required (#14480)
Previously, the iOS ApplicationPackage subclasses did not mark the
bundleID constructor parameter as @required. This is passed up to the
ApplicationPackage constructor as the id parameter which is already
marked @required and is asserted to be non-null.
2018-02-05 18:11:33 -08:00
Chris Bracken 024cebf8f3
Fix mismatched bracket in Xcode failure diagnostic (#14478)
When diagnosing a failed Xcode build, if neither the development team
(for automatic provisioning) nor the provisioning profile (for manual
provisioning) is set, display the appropriate error message. Previously,
this method would not output the appropriate error message if a
only a development team was set.
2018-02-05 18:11:07 -08:00
Hans Muller 23ee4a4af5
Updated InkWell, InkResponse troubleshooting doc (#14473) 2018-02-05 17:06:05 -08:00
xster 0b5c1dacc2
Bundle install before running fastlane on Travis (#14470) 2018-02-05 15:00:30 -08:00
Volodymyr Lykhonis b88ba79c04 Customized Cupertino navigation bar. (#14307)
- Add override of border color of CupertinoNavigationBar
- Add background color to CupertinoPageScaffold
2018-02-05 14:01:55 -08:00