899 Commits

Author SHA1 Message Date
xster
40b67bb187 Move icons stuff from material to widget (#10192)
Moved everything icons related except the material icon button and the materialicon font list to widget
2017-05-21 16:57:31 -07:00
Adam Barth
81b76c2bb8 Make CircularProgressIndicator's stroke width configurable (#9794)
Fixes #9062
2017-05-19 21:56:07 -07:00
xster
95e9e7e9e7 Theme inserts IconTheme into tree (#10179)
* Let Theme insert an IconTheme into the widget tree

* flip the order, no real reason

* Let icon theme use its own fallback

* review notes

* more review notes
2017-05-19 18:36:50 -07:00
Chris Bracken
c9d21ecd24 Add FlutterLogoDecoration tests (#10209)
Covers FlutterLogoDecoration.lerp()

Disabling const constructor lint for the test values pending resolution of
https://github.com/dart-lang/sdk/issues/26980
2017-05-19 13:40:59 -07:00
Ian Hickson
f50fe13ff1 Fix flip-flop behaviour with two competing taps (#10151) 2017-05-19 09:25:55 -07:00
Ian Hickson
cd6e3b1ac2 CheckboxListTile, RadioListTile, SwitchListTile (#10160) 2017-05-19 08:46:17 -07:00
Collin Jackson
04923d330a Merge branch 'alpha' 2017-05-18 18:11:49 -07:00
Collin Jackson
973304d5fb Fix sliver padding assertion failure that sometimes happens during startup because the app is temporarily built with zero size 2017-05-18 17:58:24 -07:00
Ian Hickson
61c56ba15f Make Slider take up whatever space it has. (#10132)
Previously it was (arbitrarily?) set to 144.0 pixels wide.
2017-05-17 14:31:55 -07:00
Ian Hickson
940473e5d6 Don't crash if Slider is given an empty range. (#10133)
Instead just disable the slider.

Fixes https://github.com/flutter/flutter/issues/10055
2017-05-16 19:35:01 -07:00
Ian Hickson
8b5ece7ca9 Report semantics geometry in physical units. (#10094)
Previously we used logical pixels. This made the accessibility metrics
tiny on modern devices, since the OS works in physical units.

Also add a bit more debugging info and some docs.
2017-05-16 16:43:22 -07:00
Adam Barth
20cc29cd62 Propagate notifications when onNotification returns null (#10081)
Previously we threw an exception to require a non-null value. Now we
just treat null as the common case of not stopping propagation.
2017-05-16 15:11:11 -07:00
Ian Hickson
63cfe1e30d Add strokeWidth to the paints matcher (#10121) 2017-05-16 14:17:41 -07:00
Hans Muller
765e5d5b5b Added SliverPrototypeExtentList et al (#10097) 2017-05-16 11:56:55 -07:00
Ian Hickson
ce2c834f70 Adjust the tests to handle a higher-DPI test harness. (#10056)
Requires https://github.com/flutter/engine/pull/3688
2017-05-15 16:47:14 -07:00
Ian Hickson
abeb164fe2 Add intrinsic dimensions to RenderEditable (#10093)
Also:

* Make TextPainter.preferredLineHeight honour root fontSize

* Remove bogus docs.

* More aggressively track dirty state for RenderEditable.

* Some tests.
2017-05-15 14:06:58 -07:00
Adam Barth
49b183c502 Estimate the brightness of the primary color (#10071)
If the caller doesn't explicitly give the brightness of the primary
color, we now estimate it using an algorithm from the Web Content
Accessibility Guidelines.

Also, this patch contains a function that converts RGB colors to
HSVColors. I was originally going to use that, but the WCAG algorithm
ended up seeming like a better choice. The patch still includes this
function because it's generally useful.

Fixes #5718
2017-05-14 10:09:52 -07:00
Adam Barth
4b7a1912ee Add NavigatorState.pushAndRemoveUntil (#10026)
Fixes #9989
2017-05-12 17:45:17 -07:00
Ian Hickson
db84df230d Some tools to dump other trees. (#9999) 2017-05-12 15:51:58 -07:00
Adam Barth
bd56c79767 Handle back during pushReplacement (#10016)
Previously, we would strand the old route in the overlay even though it had
been removed from the history.
2017-05-11 19:33:37 -07:00
Adam Barth
b9f4e5dac7 Make AnimatedCrossFade's alignment configurable (#9973)
The default is topCenter, which is sensible, but someone might want to use a
bottomCenter alignment, for example.
2017-05-11 17:47:19 -07:00
xster
81ec553fb6 More Cupertino dialog UI tweaks (#9960)
* is default

* hit target

* correct test name

* review note
2017-05-10 18:59:50 -07:00
Ian Hickson
e5e5f61c66 Improve error messages from slivers. (#9971)
Also, fix some logic in SliverPadding.
2017-05-10 17:34:17 -07:00
Hans Muller
1157812bb9 Added ExpansionTile and deprecated TwoLevelList et al (#9938) 2017-05-09 16:32:01 -07:00
Ian Hickson
f4f68dff1b Make the page-view remembering logic actually work. (#9905)
It wasn't tested, which is why it didn't work before.
2017-05-09 15:32:54 -07:00
Chris Bracken
9935b3075c Use boolean json representation for obscureText (#9927)
Corrects type from string introduced in
21712a49a76af0fab63246a9acbe61f3e1928070.
2017-05-09 13:48:11 -07:00
Sarah Zakarias
d6b1ad5456 Remove url_lancher and path_provider from services (#9916) 2017-05-09 15:13:05 +02:00
Chris Bracken
21712a49a7 Add obscureText field to TextInputConfiguration (#9908)
Provides a cue to the engine to disable auto-correct/suggest.
2017-05-08 17:38:22 -07:00
Hans Muller
a6eb0a3e38 Gallery animation demo back button update (#9853) 2017-05-08 10:13:13 -07:00
Hans Muller
3681aee5a4 Selectively enable page scrolling in the gallery animation demo (#9845) 2017-05-05 16:02:25 -07:00
Ian Hickson
c7469e005d Fix many dartdoc typos (#9822) 2017-05-04 19:54:06 -07:00
Hans Muller
4ca447b61e Refactored the iOS Scrolling Simulation (#9754) 2017-05-03 15:54:17 -07:00
Ian Hickson
cbfde9650d Appbar should update when you add a drawer. (#9755)
Also, I had a question about flutter_test matchers and our style guide
says that when I have a question I should update the docs so I did
that and then got a bit carried away.
2017-05-03 12:56:18 -07:00
Jason Simmons
b586a97ad2 Enable physical model shadows (with animation) and change elevation to a double (#9756)
Fixes https://github.com/flutter/flutter/issues/9342
2017-05-03 12:11:01 -07:00
Ian Hickson
c8ad201484 Save scroll position when scrolling. (#9740) 2017-05-03 09:59:09 -07:00
Ian Hickson
f64bfba860 Tapping a ScrollView during overscroll got it stuck. (#9721)
Fixes https://github.com/flutter/flutter/issues/8476

More detailed list of changes in this patch:

* Replaced the didTouch special logic with more generic logic that
  uses Activities instead. Now instead when you tap down the
  Scrollable calls `hold()` which begins a HoldScrollActivity which is
  a hybrid of DragStartDetails and IdleScrollActivity and can be
  canceled. When you let go, it gets canceled and that goes ballistic.

* Make DragGestureRecognizer more aggressive about grabbing pointers,
  otherwise a second pointer in a situation with competing horizontal
  and vertical recognizers always gets taken by the other one.

* Fixed the _GestureSemantics widget to call the "down" callbacks so
  that it follows the same pattern as "real" interactions.

* Added tests for the above.

* Added a hashCode to ScrollActivity.toString (and subclasses).

* Added a toString to ScrollDragController, and include it in
  DragScrollActivity's toString.

* s/coorindator/coordinator/

* Add a comment in DragStartDetails to distinguish it from the
  otherwise identical DragDownDetails, so we're not tempted to merge
  them.
2017-05-02 16:31:11 -07:00
Adam Barth
1d726bbeb5 Left align AppBar title on iOS with multiple actions (#9723)
If there is more than one action, then the AppBar should align the title to the
left according to
<https://material.io/guidelines/platforms/platform-adaptation.html#platform-adaptation-platform-recommendations>
2017-05-02 12:53:03 -07:00
Adam Barth
ea96773fd1 Use horizontal dots on iOS menu button (#9722)
As required by
<https://material.io/guidelines/platforms/platform-adaptation.html#platform-adaptation-platform-recommendations>.
2017-05-02 10:38:50 -07:00
Ian Hickson
e8c46927c4 Flush microtasks after transient callbacks are run. (#9702)
This splits the frame pipeline into two, beginFrame and drawFrame.

As part of making this change I added some debugging hooks that helped
debug the issues that came up:

 * I added debugPrintScheduleFrameStacks which prints a stack whenever
   a frame is actually scheduled, so you can see why frames are being
   scheduled.

 * I added some toString output to EditableText and RawKeyboardListener.

 * I added a scheduler_tester.dart library for scheduler library tests.

 * I changed the test framework to flush microtasks before pumping.

 * Some asserts that had the old string literal form were replaced by
   asserts with messages.

I also fixed a few subtle bugs that this uncovered:

 * setState() now calls `ensureVisualUpdate`, rather than
   `scheduleFrame`. This means that calling it from an
   AnimationController callback does not actually schedule an extra
   redundant frame as it used to.

 * I corrected some documentation.
2017-05-02 09:27:53 -07:00
Ian Hickson
89856c0e5b Adjust the defaults behaviour of scroll views. (#9679)
* Adjust the defaults behaviour of scroll views.

Now, primary scroll views scroll by default. Others only scroll if necessary.

* apply suggested changes
2017-05-02 09:14:50 -07:00
Adam Barth
a4ba761bea Document remaining non-scrolling symbols (#9667)
This patch finishes documenting all the symbols except for those related to
scrolling.
2017-04-28 16:01:14 -07:00
xster
f65fea8e2e Create a text validator/formatter mechanism (#9535)
* Add a text formatter interface used by EditingText. Provide some default implementations.

* self nits

* Handle -1 selection offsets

* review notes

* simplify regular expression

* Add whitelisting formatters. Use a custom phone number formatter in text demo.

* review notes

* not being able to addAll(null) is pretty annoying

* review notes

* partial tests

* Add tests

* didn’t end up needing mockito

* move to services
2017-04-28 15:33:38 -07:00
xster
b717963b43 Change Cupertino page transition box shadow to a simple custom gradient (#9673)
Creates another Decoration for drawing outside the decorated box with a gradient to emulate the shadow.

Lets the cupertino transition page's background be transparent.

Fixes #9321
2017-04-28 12:50:20 -07:00
Hans Muller
acf102be95 AnimatedList (#9649) 2017-04-28 11:37:36 -07:00
xster
3a0ce961ca lerp LinearGradient (#9628)
* Implement

* Don’t scale the fractional offsets since it’s easier to use

* review notes

* fix nit
2017-04-27 15:52:41 -07:00
Ian Hickson
11fa80bb78 MediaQuery.of shouldn't give a default return value (#9596) 2017-04-27 15:02:59 -07:00
Ian Hickson
36052e68dd BoxDecoration API changes: backgroundColor -> color et al (#9648)
backgroundColor -> color
backgroundImage -> image
BackgroundImage -> DecorationImage
2017-04-27 14:19:01 -07:00
Adam Barth
744c91265b Add NestedScrollView (#9640)
A NestedScrollView lets you implement patterns where you have a header, tabs,
and additional scrollers inside the tabs.

Fixes #8359
2017-04-27 12:29:40 -07:00
Mikkel Nygaard Ravn
70ff50f929 Integration test for channel communication (#9621) 2017-04-27 08:44:28 +02:00
Todd Volkert
9558ac7d55 Assert that url is non-null in NetworkImage (#9626) 2017-04-26 21:35:58 -07:00