2592 Commits

Author SHA1 Message Date
Hans Muller
63828aab23 Underflowing LazyBlock should relayout for additional children (#5956) 2016-09-20 11:15:23 -07:00
Adam Barth
17ac73890e Add MediaQuery.textScaleFactor (#5936)
This feature is the implementation of an accessibility feature that changes the
size of text by a constant factor.

Fixes #5873
2016-09-20 09:14:48 -07:00
Adam Barth
869371fc3e Add more docs to framework.dart (#5944)
There are still more to go, but this patch completes the widget section.
2016-09-19 21:41:03 -07:00
Lex Berezhny
3800118a08 fix for #5549 (#5949) 2016-09-19 21:06:52 -07:00
Adam Barth
e1a5bfb3e2 Complete dartdocs for navigator.dart (#5943)
These are late-breaking docs needed (mostly) for the iOS back gesture.
2016-09-19 18:12:04 -07:00
Ian Hickson
bfabb56773 Docs for heroes (#5923) 2016-09-19 16:50:38 -07:00
Adam Barth
e04135e983 Change the definition of MainAxisSize (#5931)
This property now applies only to the free space in the flex layout (i.e.,
minimize or maximize the amount of free space). Previously, the flexible
children were always allocated a size of zero when MainAxisSize was min. Now
they're allocated the same size that would be if the MainAxisSize was max.
2016-09-19 15:04:58 -07:00
Adam Barth
9ec3cabf99 Rename TabSelection.registerAnimationListener to addAnimationListener (#5932)
This name is more consistent with our other names.

Fixes #4714
2016-09-19 14:01:02 -07:00
Adam Barth
f64d52e6e5 Add @protected to AnimatedWidget build function (#5929)
We use `@protected` in this way in StatelessWidget to avoid developers calling
this function directly.
2016-09-19 13:27:04 -07:00
Adam Barth
b38ff60338 Make it possible to create new text themes (#5918)
Fixes #5916
2016-09-19 11:18:16 -07:00
Dragoș Tiselice
eafe1c7a4e Renamed Positioned constructor. (#5927)
Renames stretch constructor to fill for better consistency with
the rest of the framework.
2016-09-19 10:46:06 -07:00
Ian Hickson
2a81391915 Some semantics documentation. (#5922) 2016-09-16 23:22:20 -07:00
Dragoș Tiselice
51cd8b6799 Added a stretch Positioned constructor. (#5894)
Fixes #5835.
2016-09-16 15:59:01 -07:00
Dragoș Tiselice
14054646ca Added Material steppers. (#5765)
Added a widget that gives fine control over the use of steppers.
At any single moment, one step is shown with it own controls and
content.
2016-09-16 13:22:15 -07:00
Adam Barth
3ed4960b16 Add FlexFit.loose (#5908)
Previously, flexible children were always required to fill their allocated
space. After this change, they can fit loosely into that space and not fill it.
When that happens, the remaining free space is allocated according to the
maixAxisAlignment.

Fixes #5858
2016-09-16 13:12:36 -07:00
Dragoș Tiselice
b1a7720315 Fixed capitalization of toolbar. (#5895)
Fixes #4713.
2016-09-16 11:05:03 -07:00
Ian Hickson
0873f3e186 Move maxBy into the MaterialArc file (#5905)
As per our style guide, if you can't explain something, refactor it. I
studied this function for a while and still can't explain it, so...
2016-09-15 23:32:51 -07:00
Adam Barth
10e4f52080 Explain that runApp forces the app to fill the screen (#5904)
Fixes #5872
2016-09-15 21:59:40 -07:00
Ian Hickson
8224e11bc0 Documentation fixes. (#5903)
See #4434.
2016-09-15 21:58:24 -07:00
Dragoș Tiselice
87fb075fa1 Renamed DropDown to Dropdown. (#5897)
Fixes #3208.
2016-09-15 17:38:41 -07:00
Dragoș Tiselice
8ac14f8698 Replaced FlexDirection with Axis. (#5896)
Fixes #4618.
2016-09-15 15:23:37 -07:00
Dragoș Tiselice
4259266b14 Renamed expansion panel file. (#5884)
Renamed expansion_panels.dart to expansion_panel.dart.
2016-09-15 14:16:05 -07:00
Dragoș Tiselice
ab46cc2ef5 Rmoved magical color. (#5886)
Changed drawer header to use theme's divider color.
2016-09-15 13:41:27 -07:00
John McCutchan
24ab837240 Support hot reload for applications that don't use the framework (#5868) 2016-09-15 13:18:32 -07:00
Adam Barth
058620007b Extract a Listenable base class from Animation and ChangeNotifier (#5889)
Having this base class lets classes like CustomPainter and DataTableSource be
more agnostic as to what's generating the repaints.
2016-09-15 13:13:51 -07:00
Adam Barth
179ea4a0a6 Update framework to account from engine API changes (#5887)
The engine now reports coordinates in physical pixels.
2016-09-15 13:13:42 -07:00
Adam Barth
9109bb02b9 Improve docs for ComponentElement (#5829)
Also, make ProxyWidget and ProxyElement public.

Fixes #4505
2016-09-15 09:15:11 -07:00
Ian Hickson
33794d1387 TextStyle.apply (#5879)
Also, fix an old TODO, and add a test of various things on TextStyle.

...requires an engine roll to pick up https://github.com/flutter/engine/pull/3025 and https://github.com/flutter/engine/pull/3027.
2016-09-15 07:49:44 -07:00
Ian Hickson
bb4a2e8b4c Implement detachChild for LayoutBuilder (#5860)
Fixes https://github.com/flutter/flutter/issues/5840
2016-09-15 07:47:15 -07:00
Ian Hickson
cb6b4c95a4 Minor tweaks to box_painter (#5854)
Moves BorderRadius to above its first use.
Slight improvements to the BoxShape docs.
2016-09-15 07:47:04 -07:00
Hans Muller
a78ad92d1e Small revision to ScrollableState.fling() (#5871) 2016-09-14 15:50:30 -07:00
Hans Muller
4ec5144427 Scrollable should restore its viewport dimensions when it reappears (#5862) 2016-09-14 11:08:07 -07:00
Dragoș Tiselice
826d87a9b2 Made MergeableMaterial dividers animated seamlessly. (#5857)
Changed MergableMaterial to animated between states that have dividers
and those that don't in order not to have dividers that appear
unanimatedly. Fixes #5847.
2016-09-14 10:46:49 -07:00
Hans Muller
f4904b1459 Refresh indicator overscroll (#5836)
* Added OverscrollIndicatorEdge et al

* RefreshIndicator only clamps its scrollable edge

* added a test

* Updated the test

* fixed lint-os

* fixed a typo

* Scrollable should restore its viewport dimensions when it reappears

* removed an accidental commit

* updated per review feedback
2016-09-14 10:44:51 -07:00
Dragoș Tiselice
9612669282 Changed progress indicator to use drawArc. (#5828)
Using paths' arcTo was causing performance issues in the Gallery.
This commit uses Skia's optimized drawArc in order to improve
performance, and it rolls the engine to the newest assing build.
Fixes #3599.

Tracking Skia issue:
  https://bugs.chromium.org/p/skia/issues/detail?id=5227
2016-09-12 14:42:21 -07:00
Dragoș Tiselice
e2070ba317 Improved debug validations. (#5822)
This commit renames all debugAssertValid methods to
debugAssertIsValid and assert BoxConstaints validity in
constructors. Fixes #5807.
2016-09-12 12:27:42 -07:00
Ian Hickson
6b93efdd85 Make dependenciesChanged fire after initState (#5810)
This allows us to simplify the logic around inherited widgets e.g. in
the Image widget.
2016-09-12 10:43:42 -07:00
Ian Hickson
03eaf1d16e Fix hot reload (#5799)
I forgot that it was possible for the root view to get marked dirty
without getting a new widget. This fixes that case to work.
2016-09-09 15:20:03 -07:00
Hans Muller
59739abe12 Fixed leading app bar button width constraint (#5802) 2016-09-09 15:12:19 -07:00
Ian Hickson
5c4c1b8d65 Cleaning up minor issues (#5779)
I did a pass through some of the code cleaning minor things up.
2016-09-09 14:25:41 -07:00
Ian Hickson
411db2d587 Tabs occasionally tried to setState after dispose (#5784)
Fixes https://github.com/flutter/flutter/issues/5776
2016-09-09 14:25:34 -07:00
Hans Muller
4d80f3cb30 Fix app bar title overflow with centerTitle:true (#5773) 2016-09-09 09:59:38 -07:00
Ian Hickson
5bc8888e7d Make tests more realistic (#5762)
Previously, pumpWidget() would do a partial pump (it didn't trigger
Ticker callbacks or post-frame callbacks), and pump() would do a full
pump. This patch brings them closer together. It also makes runApp run a
full actual frame, rather than skipping the transient callback part of
the frame logic. Having "half-frames" in the system was confusing and
could lead to bugs where code expecting to run before the next layout
pass didn't because a "half-frame" ran first.

Also, make Tickers start ticking in the frame that they were started in,
if they were started during a frame. This means we no longer spin a
frame for t=0, we jump straight to the first actual frame.

Other changes in this patch:

* rename WidgetsBinding._runApp to WidgetsBinding.attachRootWidget, so
  that tests can use it to more accurately mock out runApp.

* allow loadStructuredData to return synchronously.

* make handleBeginFrame handle not being given a time stamp.

* make DataPipeImageProvider.loadAsync protected (rather than private),
  and document it. There wasn't really a reason for it to be private.

* fix ImageConfiguration.toString.

* introduce debugPrintBuildScope and debugPrintScheduleBuildForStacks,
  which can help debug problems with widgets getting marked as dirty but
  not cleaned.

* make debugPrintRebuildDirtyWidgets say "Building" the first time and
  "Rebuilding" the second, to make it clearer when a widget is first
  created. This makes debugging widget lifecycle issues much easier.

* make debugDumpApp more resilient.

* debugPrintStack now takes a label that is printed before the stack.

* improve the banner shown for debugPrintBeginFrameBanner.

* various and sundry documentation fixes
2016-09-08 13:54:21 -07:00
Phil Quitslund
d2fda677e1 Update to Dart 1.20.0-dev.1.0. (#5689)
* Udpate to Dart `1.20.0-dev.1.0`.

Udpate to Dart `1.20.0-dev.1.0` and corresponding `analyzer` package.

* Added `--no-packages-dir`.

* Revert extension to master.

* Added ignores.

* Review nits.

* More nits.
2016-09-08 13:14:08 -07:00
Ian Hickson
1f15e06e45 Handle stateful widgets in layout builders. (#5752)
Previously, if a StatefulWidget was marked dirty, then removed from the
build, then reinserted using the exact same widget under a widget under
a LayoutBuilder, it wouldn't rebuild.

This fixes that.

It also introduces an assert that's supposed to catch SizeObserver-like
behaviour. Rather than make this patch even bigger, I papered over two
pre-existing bugs which this assert uncovered (and fixed the other
problems it found):

   https://github.com/flutter/flutter/issues/5751
   https://github.com/flutter/flutter/issues/5749

We should fix those before 1.0 though.
2016-09-07 14:45:19 -07:00
Dragoș Tiselice
691c25faca Renamed Step curve to Threshold. (#5755)
In the interest of using the name in the case of Material steppers,
this commit renames Step curve to Threshold.
2016-09-07 13:58:04 -07:00
Matt Perry
e47a421e42 Use slide-from-right transition only when doing back gesture
This eliminates all the issues around the horizontal page transition. I also improved the back gesture animation, and added fling support.

BUG=https://github.com/flutter/flutter/issues/5678
BUG=https://github.com/flutter/flutter/issues/5622
2016-09-07 13:34:50 -04:00
Dragoș Tiselice
dcda3d5ed8 Fixed a bug related to AnimtedCrossFade. (#5730)
Fixed a bug where the size of the AnimatedCrossFade would always
start from the size of the first child, irrespective of the
initial crossFadeState argument.
2016-09-02 16:41:09 -07:00
Hans Muller
afc0550a67 Fix circle antialiasing in the animation demo (#5729) 2016-09-02 16:13:09 -07:00
Dragoș Tiselice
8a20b261d0 Changed Material ease animations to fastOutSlowIn. (#5643)
Fixes #5393.
2016-09-02 09:03:51 -07:00