8840 Commits

Author SHA1 Message Date
Amir Hardon
707eaf5edf
Make AndroidView take gesture recognizer factories. (#21657)
Before this PR AndroidView's gestureRecognizers field was a list of
gesture recognizers. This was problematic as when the widget was rebuilt
with the same gesture recognizer instances we would try to re-join the
recognizers to a gesture arena team and crash (as a OneSeqeunceGestureRecognizer
team can only be set once).

With this change, we instead take a set of factories.
This allows AndroidView to create the gesture recognizers just before
adding them to the team, and thus be sure that they are only added once to a
team.

The factories are identified by the type of the object they create, this
allows AndroidView to know when it is given an equivalent set of gesture
recognizer factories, and do nothing in that case.
2018-10-15 21:30:40 -07:00
Mehmet Fidanboylu
16f7d4016e
Remove unneeded flutter-assets-dir flag for the tester (#23125) 2018-10-15 20:12:14 -07:00
Jacob Richman
c6a222fa28
Revert "Run flutter tests with --track-widget-creation as part of the build. (#22596)" (#23129)
This reverts commit bf92d7f28688c9c94f7b93154cbe69b72dd8bf1b.
2018-10-15 17:13:44 -07:00
Gary Qian
bdc3dda5f2
Add support for text shadows and roll engine (26 commits) (#22449)
* Add support for shadows in text.

* Use dart:ui Shadow as base class for Shadows

* Update lerp definition

* Roll engine 3ffa3629523..84fe4a9f7e24e4 - Text Shadows and update goldens for skia roll.

git log 50c2e69daff4e207c54e463d2304139985c7511c..32f417db0d566d354605305cb29c251276fa65ee --oneline --no-merges
32f417db0 Roll tonic to 077be256142ede39a271385907faadf4fcc62a4d. (#6541)
4ee77256c Revert "Roll Dart to 1f4dfce179c8f05c9e48759300a15e671b88cc10 (#6515)" (#6537)
964acafeb Roll src/third_party/skia 646d917d3c71..c6a17104ad68 (1 commits) (#6536)
d4bae4ca4 Roll src/third_party/skia 2b2c00f6ec36..646d917d3c71 (1 commits) (#6535)
ff93ccf47 Roll src/third_party/skia 681692726fc0..2b2c00f6ec36 (1 commits) (#6534)
a4161c895 Roll src/third_party/skia 23775a2e9736..681692726fc0 (1 commits) (#6532)
116072e46 Roll src/third_party/skia 7435f2553f53..23775a2e9736 (1 commits) (#6531)
ef0b0f6e9 Roll src/third_party/skia bc7a51e79c5b..7435f2553f53 (1 commits) (#6530)
f46b7b971 Roll src/third_party/skia b28db529c866..bc7a51e79c5b (1 commits) (#6529)
9033c3902 Roll src/third_party/skia 7e67041a1428..b28db529c866 (1 commits) (#6528)
e6887a412 Add missing imports for unicode/utf16.h (#6524)
1242f6dfe Roll src/third_party/skia d38382d060ca..7e67041a1428 (2 commits) (#6527)
a1bbea77c Add a no-op platform view layer. (#6505)
2bb3afad8 Roll src/third_party/skia 21bd60daa3f3..d38382d060ca (10 commits) (#6526)
75e875240 Fix the Mac embedder build (#6525)
436f9707b Add version check for dismissable (#6522)
7767c785b Provide a default GL function resolver in the embedder (#6523)
32841dd89 Case-insensitive matching of family names for custom fonts (#6519)
a9076c7e6 Roll src/third_party/skia 419709dbb167..21bd60daa3f3 (11 commits) (#6520)
f2e7441b5 An API for loading fonts from a buffer provided by the application (#6508)
05aac0f27 fix ResourceExtractor npe. (#6461)
cf5a2a145 Roll src/third_party/skia b27a9cf2f4a8..419709dbb167 (16 commits) (#6517)
84fe4a9f7 Re-revert invalid line height tests (#6516)
5f529566c Add support for text shadows (#6385)
e44c10c96 Reland "Share engine layers with the framework" (#6412) (#6468)
ba0449971 Roll Dart to 1f4dfce179c8f05c9e48759300a15e671b88cc10 (#6515)
2018-10-15 15:03:02 -07:00
Jacob Richman
bf92d7f286
Run flutter tests with --track-widget-creation as part of the build. (#22596) 2018-10-15 13:46:25 -07:00
Hans Muller
4f4005ee65
TextTheme.apply() corrections (#23108)
TextTheme.apply was incorrectly applying displayColor to the TextTheme's headline, title, subhead, body1, and body2 TextStyle colors. In all cases it should have been bodyColor.
2018-10-15 12:18:13 -07:00
Michael Klimushyn
6fef292f44
Wire decodedCacheRatioCap from PaintingBinding to Codec (#22452)
Users can set `PaintingBinding.decodedCacheRatioCap` to control the max
amount of memory used per image to avoid decoding frames each animation
loop.

This depends on flutter/engine#6310.

Fixes #20998, and fixes #14344
2018-10-15 11:22:27 -07:00
Mouad Debbar
43001a3ab6 Correctly throw when MaterialPageRoute's builder returns null (#22885) 2018-10-15 09:49:16 +02:00
Michael Goderbauer
8e2ca93f52
Remove all service extensions from release mode (#23038)
Service extensions can only be activated in debug or profile mode, their code should never be included in release mode. This PR adds guards around all service extension registration calls that enable Dart's tree shaker to remove the extension's code in release mode, which reduces our binary size:

Android Snapshot (uncompressed): minus 127,384 Bytes (-124.40KB)
APK (compressed): minus 38,136 Bytes (-37.24KB)
iOS Snapshot (App.framework, uncompressed): 264,304 Bytes(-258.10KB)

For details: https://docs.google.com/document/d/13JlgvliCn5sWwT2K2SfDwD1NhEfxpJH9DCf22gZZru8/edit

**Benchmark Regressions:** This PR may cause benchmarks to regress because it may change the timing of GC. If you notice a benchmark regression **please note down the exact set of benchmarks that regressed on this PR** and then feel free to revert. I will follow-up with a PR that forces a GC before the effected benchmarks run to get a clean baseline before re-applying this PR.
2018-10-12 21:07:55 -07:00
matthew-carroll
04a26778c5
Revert "Reversion for roll (#22984)" (#23029)
This reverts commit 80f80ab08c0dad8551c91087cd1017aba094d22c.
2018-10-12 16:31:34 -07:00
liyuqian
53de41cac6
Roll engine to 50c2e69da with goldens fix (#23016)
Goldens updated due to Skia AA changes. We previously also made a mistake by having a golden test run on MacOS.

git log 3ffa36295234..50c2e69da --no-merges --oneline
50c2e69da Roll src/third_party/skia 1b62fad4b188..b27a9cf2f4a8 (1 commits) (flutter/engine#6514)
8757bf2a1 Roll src/third_party/skia 05caa69a3f5a..1b62fad4b188 (2 commits) (flutter/engine#6513)
c2fd10ad1 Roll src/third_party/skia 2a138544646d..05caa69a3f5a (1 commits) (flutter/engine#6512)
2018-10-12 13:15:25 -07:00
Artur Rymarz
a3670a2f85 Add parameters to allow hiding icons and border of the Cupertino TabBar (#22804) 2018-10-12 09:08:57 -07:00
matthew-carroll
80f80ab08c
Reversion for roll (#22984)
For G3 Roll:

* Revert "MaterialButton must honor its minWidth and height parameters (#22919)"

This reverts commit a02332335a0849e92daa7fb272e2ee1ccc7d4248.

* Revert "Update uses of ButtonTheme.bar: pass along the current Theme's colorScheme (#22827)"

This reverts commit 655bf6a290714248733c7af46c637fce34b56206.

* Revert "ButtonTheme.of().colorScheme defers to Theme (#22880)"

This reverts commit a590940e458ae02d89f63062e45a406cb3a73f4e.

* Revert "Bring TextTheme into alignment with the current Material spec (#22330)"

This reverts commit 8bfb4b3ee5e908165135aaa57dc6bce5d561a693.

* Revert "Added ColorScheme, updated ThemeData, ButtonTheme, material buttons (#22013)"

This reverts commit eea3465ae75ac5445c54490c542047032f8f8314.

* Manual adjustments to fix reversion issues.
2018-10-11 18:17:46 -07:00
jslavitz
673d56d1b7
Fix test template (#22982)
* added test
2018-10-11 16:25:34 -07:00
Jonah Williams
313059cdb6
Add labeled tappable target guideline and gallery tests (#22824) 2018-10-11 15:05:10 -07:00
Alexandre Ardhuin
0e76cb4c10
prefer_void_to_null in flutter_test (#22847)
* prefer_void_to_null in flutter_test

* fix CI
2018-10-11 18:00:46 +02:00
Alexander Aprelev
e274ed866a [dart] Roll engine to dart roll 2018-10-10 20:45:22 -07:00
Hans Muller
a02332335a MaterialButton must honor its minWidth and height parameters (#22919) 2018-10-10 20:22:07 -07:00
Greg Spencer
081d2a7a86
Re-land text wrapping/color PR (#22831)
This attempts to re-land #22656.

There are two changes from the original:

I turned off wrapping completely when not sending output to a terminal. Previously I had defaulted to wrapping at and arbitrary 100 chars in that case, just to keep long messages from being too long, but that turns out the be a bad idea because there are tests that are relying on the specific form of the output. It's also pretty arbitrary, and mostly people sending output to a non-terminal will want unwrapped text.

I found a better way to terminate ANSI color/bold sequences, so that they can be embedded within each other without needed quite as complex a dance with removing redundant sequences.

As part of these changes, I removed the Logger.supportsColor setter so that the one source of truth for color support is in AnsiTerminal.supportsColor.

*     Turn on line wrapping again in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)

    This turns on text wrapping for usage messages and status messages. When on a terminal, wraps to the width of the terminal. When writing to a non-terminal, wrap lines at a default column width (currently defined to be 100 chars). If --no-wrap is specified, then no wrapping occurs. If --wrap-column is specified, wraps to that column (if --wrap is on).

    Adds ANSI color to the doctor and analysis output on terminals. This is in this PR with the wrapping, since wrapping needs to know how to count visible characters in the presence of ANSI sequences. (This is just one more step towards re-implementing all of Curses for Flutter. :-)) Will not print ANSI sequences when sent to a non-terminal, or of --no-color is specified.

    Fixes ANSI color and bold sequences so that they can be combined (bold, colored text), and a small bug in indentation calculation for wrapping.

    Since wrapping is now turned on, also removed many redundant '\n's in the code.
2018-10-10 18:17:56 -07:00
Andrew Davies
1531ef60ec
[frdp] Add configurable timeouts for VM. (#22893)
This adds configurable timeouts for the Dart VM. Due to some testing
machines running things quite slowly, this is becoming more necessary.
2018-10-10 16:11:01 -07:00
Hans Muller
a590940e45
ButtonTheme.of().colorScheme defers to Theme (#22880)
ButtonThemeData no longer requires a colorScheme. If colorScheme is null, ButtonTheme.of() will initialize it from the current Theme.
2018-10-10 11:40:30 -07:00
Greg Spencer
0ff9e8a928
Rename 'application' back to 'module', and make 'app' the default again for templates. (#22888)
We decided that redefining the default for templates was premature. We're going to go back to having "module" in experimental land again, and we'll try again when we have the feature set fully baked.

This keeps the writing of the .metadata files, and writing the template type to them, because that was a good improvement, and there are still a bunch of added tests that improve our coverage.
2018-10-10 11:01:40 -07:00
creativecreatorormaybenot
e58e473251 Added person related icons (#22490)
Adds person related icons: `group` & `group_solid`, `person` & `person_solid` and `person_add` & `person_add_solid`.
2018-10-10 10:27:29 -07:00
Philip
0c6c61988d Remove new keyword from default template app (#22454)
* Remove new keyword from default template app
2018-10-10 09:59:53 -07:00
Jason Simmons
52e5a9a70a
Add a profile build type to the Android app template (with plugin support) (#22884)
This is required in order to support "flutter run --profile"
2018-10-10 09:54:57 -07:00
Danny Tuppeny
a02f9d501b
Allow passing a restart reason through to analytics (#21983)
* Allow passing a restart reason through to analytics

* Update to avoid overlaps with other code

* Remove TODO as this is the real live value

* Improve formatting + constant name
2018-10-10 10:23:32 +01:00
Alexandre Ardhuin
bfedbd09b8
prefer_void_to_null in flutter_localizations (#22826) 2018-10-10 06:04:31 +02:00
Jorge Coca
422e56c29c Added support for Gradle productFlavors that are not only lowercase (#22767)
Fixes https://github.com/flutter/flutter/issues/19507
2018-10-09 20:04:29 -07:00
Hans Muller
8bfb4b3ee5
Bring TextTheme into alignment with the current Material spec (#22330) 2018-10-09 17:00:15 -07:00
Greg Spencer
485ed2f655
Fix DevFS to understand missing files in _stat() (#22844)
Fixes #22451
2018-10-09 14:33:47 -07:00
Jonah Williams
fb7a5937ba
Basic scroll semantics support (#21764) 2018-10-09 14:16:28 -07:00
Jonah Williams
9e51cc3e83
Add assert for null duration on snackbar (#22746) 2018-10-09 13:45:56 -07:00
jslavitz
8d545e9301
Add disabledThumbColor and other properties from Switch to SwitchListTile final (#22823)
* added missing properties
2018-10-09 13:43:15 -07:00
Stanislav Baranov
570ae840f2
Remove unused deps and flags from flutter tool. (#22571) 2018-10-09 13:04:06 -07:00
liyuqian
a5c161c13a
Revert "Add a profile build type to the app template" (#22872)
Reverts flutter/flutter#22837

Try to fix application_test

* Revert "Add a profile build type to the app template (#22837)"

This reverts commit 3b248fdc111d1b25014ed723ac4a0bc4225f6461.
2018-10-09 11:43:31 -07:00
Stanislav Baranov
9a22f5a117
Ensure that VM snapshot is copied from artifacts before gradle merges assets. (#22707)
Gradle plugin support for adding flutter as subproject to another Android app
2018-10-09 10:40:03 -07:00
Jason Simmons
3b248fdc11
Add a profile build type to the app template (#22837)
This is required in order to support "flutter run --profile"
2018-10-09 09:45:46 -07:00
Greg Spencer
c81f4c71a2
Have runAsyncChecked throw a ProcessException instead of a String. (#22710) 2018-10-08 19:11:31 -07:00
matthew-carroll
4f298e6776
Publish make-host-app-editable command with CLI docs. (#22635)
Publish make-host-app-editable command with CLI docs.
2018-10-08 16:02:13 -07:00
Hans Muller
655bf6a290 Update uses of ButtonTheme.bar: pass along the current Theme's colorScheme (#22827)
* Update uses of ButtonTheme.bar

* updated gallery themes

* Remove unnecessary const

Fixes #22789
2018-10-08 15:53:35 -07:00
Ian Hickson
874df1ec21
Fix bug in AnimatedSwitcher (#22183)
* Refactor AnimatedSwitcher

This is mostly just a little bit of cleanup with hopefully no semantic
changes, done to teach me how the code works so that I could fix a bug.

* Add debugging information to AnimatedSwitcher

* Fix AnimatedSwitcher to handle the case of back-to-back changes

Previously, if a child was replaced the very next frame after it was
added, we'd get confused because we tried to reverse the controller,
which causes us to remove the child from the going-away list, before
we had added the child to the list in the first place.

The fix is just to move the reverse to after the add.
2018-10-08 14:06:18 -07:00
liyuqian
c689c97d05
Remove mixin so we can roll Google3 (#22819)
We'll roll this back as soon as the Dart analyzer gets upgraded in
Google3.
2018-10-08 11:52:04 -07:00
MH Johnson
0e7b1adda2
[Typo] it it -> if it (#22743)
* [Typo] it it -> if it
2018-10-08 14:46:55 -04:00
Anthony Bullard
7038c3633b Fix typo in in raw_keyboard.dart (#22757)
Obviously a small change, looks like a little copy-paste accident.
2018-10-08 11:09:18 -07:00
Andrew Davies
9ceb9ab305
[flutter_driver] Adds fuchsia compat for connect() (#22633)
Adds a Fuchsia compatibility function that allows for connecting to a
specific Isolate by name when running Flutter Driver on a Fuchsia
device.  This will check over multiple Dart VM's in an attempt to find
an Isolate by its name.
2018-10-08 11:09:07 -07:00
Hans Muller
bbb080b3a3
Material Switch optionally adapts per platform: Switch.adaptive() (#22688) 2018-10-08 10:39:59 -07:00
jslavitz
d422e85f5b
Large Dropdown Menu Fix (#22594)
* Adds comments clarifying the procedure used to render the menu as well as tests verifying various dropdown menu button positioning and initial scroll states.
2018-10-08 10:39:39 -07:00
Greg Spencer
e0b182e61a
Fix gradle error in devicelab tests (#22814)
Fixes a gradle error where it was failing to find a plugin because of an absolute path in the .flutter-plugins file instead of a relative path.

I had originally removed this variable because I thought it was redundant with the projectDir, but apparently I was wrong about that (one resolves to a relative path, and one resolves to an absolute path).

This PR reverts that part of the change and reintroduces the (not really) redundant variable.
2018-10-08 09:38:37 -07:00
Greg Spencer
2d81adf74c
Revert "Turn on line wrapping in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)" (#22759)
This reverts commit e438632165818fb06b7c58ea846fe781d9d17642
because it breaks 160 benchmarks, and several devicelab tests,
due to changing the format of the output.
2018-10-05 22:29:37 -07:00
Greg Spencer
e438632165
Turn on line wrapping in usage and status messages, adds ANSI color to doctor and analysis messages. (#22656)
This turns on text wrapping for usage messages and status messages. When on a terminal, wraps to the width of the terminal. When writing to a non-terminal, wrap lines at a default column width (currently defined to be 100 chars). If --no-wrap is specified, then no wrapping occurs. If --wrap-column is specified, wraps to that column (if --wrap is on).

Adds ANSI color to the doctor and analysis output on terminals. This is in this PR with the wrapping, since wrapping needs to know how to count visible characters in the presence of ANSI sequences. (This is just one more step towards re-implementing all of Curses for Flutter. :-)) Will not print ANSI sequences when sent to a non-terminal, or of --no-color is specified.

Fixes ANSI color and bold sequences so that they can be combined (bold, colored text), and a small bug in indentation calculation for wrapping.

Since wrapping is now turned on, also removed many redundant '\n's in the code.
2018-10-05 20:00:11 -07:00