2992 Commits

Author SHA1 Message Date
Adam Barth
6d4fd85054 Improve float action button transitions (#4309)
Previously the floating action button would disappear during transitions. Now
we animate properly. I've also centralized the animation in Scaffold instead of
spreading it across the Scaffold and the FloatingActionButton.

Fixes #1718
2016-06-01 17:00:55 -07:00
Ian Hickson
0618da7ca2 PaginatedDataTable (part 1) (#4306)
This introduces the key parts of a paginated data table, not including
the built-in pagination features.

* Provide more data for the data table demo, so there's data to page.

* Introduce a ChangeNotifier class which abstracts out
  addListener/removeListener/notifyListeners. We might be able to use
  this to simplify existing classes as well, though this patch doesn't
  do that.

* Introduce DataTableSource, a delegate for getting data for data
  tables. This will also be used by ScrollingDataTable in due course.

* Introduce PaginatedDataTable, a widget that wraps DataTable and only
  shows N rows at a time, fed by a DataTableSource.
2016-06-01 16:13:40 -07:00
Ian Hickson
bf6ae3ee76 Reenable the gallery smoke test (#4303)
...and fix some grid and table intrinsic issues it uncovered.
2016-06-01 15:34:48 -07:00
Ian Hickson
2d32f1f1a7 Fix fallout from intrinsics changes (#4299)
* Fix fallout from intrinsics changes

* Move away from isInfinite in favor of isFinite
2016-06-01 13:36:06 -07:00
Adam Barth
020b068896 Use protected and mustCallSuper in more places (#4291) 2016-06-01 08:27:19 -07:00
Adam Barth
887e339641 Start using protected annotation (#4288)
There are many more places we can use this annotation. This patch starts out
small to test the waters.
2016-05-31 17:41:34 -07:00
Adam Barth
a0e7cdba10 Deploy mustCallSuper (#4285)
This patch starts using the mustCallSuper annotation for several of the key
lifecycle callbacks in the framework. I haven't added it to didUpdateConfig
because there are a large number of non-compliant overrides. We should discuss
whether we want to use it there.
2016-05-31 17:05:46 -07:00
Adam Barth
b8fb46e425 Improve tooltip behavior (#4284)
As requested by the material design team.

Fixes #4182
2016-05-31 15:03:57 -07:00
Ian Hickson
787fb3be7d Simplify intrinsic dimension APIs (#4283) 2016-05-31 14:59:48 -07:00
Adam Barth
7de84709cf Address review comments on prior patch (#4270)
I pulled the trigger to land the previous patch too quickly and missed a
number of comments.
2016-05-30 14:47:49 -07:00
Adam Barth
7cf4c694b1 Complete docs for RenderObject (#4266) 2016-05-29 22:31:27 -07:00
Adam Barth
76772608e2 Remove OverlayPainter mechanism (#4264)
We used to use this mechanism to paint scrollbars, but it's awkward. The
new approach to scrollbars is much cleaner. This mechanism has no other
clients, so we should remove it.
2016-05-29 16:37:29 -07:00
Adam Barth
d1cb026a65 Update engine and Mojo usage (#4258)
The new mojom.dart code makes mocking services a bit tricky. I've filed
https://github.com/domokit/mojo/issues/786 about improving that.
2016-05-28 18:28:21 -07:00
Adam Barth
0c0a866c79 Add the ability to create global pointer routes (#4239)
We'll use this functionality to implement some subtle behaviors for tooltips.
2016-05-27 12:42:12 -07:00
Hans Muller
1a05b696d7 Doc update (#4234) 2016-05-27 10:13:15 -07:00
Adam Barth
6f3382aa57 Add more dartdoc to rendering.dart (#4232)
There are still many more left before rendering.dart is complete.
2016-05-27 08:59:04 -07:00
Adam Barth
6da0429375 Add more dartdoc to PaintingContext (#4229)
We now explain what coordinate system each argument is expected to be in.

Fixes #4205
2016-05-26 16:51:46 -07:00
Hans Muller
502f734dee Rename FractionallySizedBox box size factor parameters (#4212) 2016-05-26 12:43:25 -07:00
Adam Barth
21fa2753d8 Switch thumb decorations don't load (#4209)
We weren't listening to the decorations to see when they loaded.

Fixes #4185
2016-05-26 11:26:11 -07:00
Adam Barth
fde55a6f6a Update vector_math (#4201)
The new version has an API change. Also, up our SDK requirements to be a
bit more realistic.
2016-05-26 09:49:09 -07:00
Adam Barth
474ff67556 Polish sliders (#4176)
Address feedback from material design team.

Fixes #4144
Fixes #4145
Fixes #4146
2016-05-24 17:53:23 -07:00
Adam Barth
b1b6271683 Use "call" instead of "invoke" (#4177)
For consistency.

Fixes #4142
2016-05-24 17:53:04 -07:00
Adam Barth
d97df402b8 ImageCache should handle images that fail to decode (#4118) 2016-05-24 16:53:14 -07:00
Adam Barth
f012a0fdfb Document that State#build(BuildContext context) is always the same as State#context (#4116)
Fixes #4114
2016-05-24 16:34:51 -07:00
Hans Muller
bacd3d2cb0 Revised Drawer Header (#4160) 2016-05-24 12:31:42 -07:00
Hans Muller
ff1d3b8190 Clamp AppBar scroll notifications when ClampOverscrolls is true (#4152) 2016-05-24 09:37:19 -07:00
Ian Hickson
3b3db78f8a Teach LayoutBuilder about Inherited widgets. (#4140) 2016-05-23 16:44:05 -07:00
Ian Hickson
b5c6da105c Port our microbenchmarks to the new world (#4121)
Our microbenchmarks now run on real devices.
2016-05-23 15:04:50 -07:00
Hans Muller
40179aaa1c Add support for specifying tab label and indicator colors (#4107) 2016-05-23 12:02:43 -07:00
Adam Barth
d5e3ea2f9c Improve time picker fidelity
We now match the spec much better, including handling dark theme.

The main thing we're still missing is the landscape layout.

Fixes #989
2016-05-23 09:36:09 -07:00
Hans Muller
5b8677d15d Allow tab bars in flexible app bars (#4086) 2016-05-20 18:07:15 -07:00
Hans Muller
1f06dc44cd ScrollConfiguration (#4026) 2016-05-20 16:59:09 -07:00
Ian Hickson
06d80f22f0 Identify the widgets you tap on in live tests (#4079) 2016-05-20 14:21:38 -07:00
Ian Hickson
94636bd206 Cleanup based on new lints (#4052) 2016-05-20 14:08:46 -07:00
Hans Muller
589cd0bb67 correct Block scrollableKey plumbing (#4048) 2016-05-19 12:44:16 -07:00
Ian Hickson
07719ad5ba Improve error reporting (#4025)
Don't suggest filing an issue when we can definitively say that the
assertion in question was not thrown from within the flutter package.
Fixes https://github.com/flutter/flutter/issues/3812.

Put the stack trace first after the message, with more details below the
stack trace, since the stack is often very useful and the stacks are no
longer stupidly long.

Better document the 'rescheduling' feature, and improve the error
handling asserts when it is misused.
Fixes https://github.com/flutter/flutter/issues/3888.

Improve the wording around the stack dump for exceptions during
callbacks.

Improve the color and font size of messages in live tests.
Fixes https://github.com/flutter/flutter/issues/4018.
2016-05-18 16:39:27 -07:00
Adam Barth
69311c28ba Improve date picker fidelity (#4023)
This patch updates the date picker to match the new spec.

We're still missing a fade effect when scrolling from one month to
another and we're missing the landscape layout.

Fixes #3558
2016-05-18 16:01:47 -07:00
Adam Barth
c1dfbd274b Not every month begins on a Monday (#4004)
Also, clean up the DatePicker to use more modern technology, such as a
grid for displaying the days of the month.

Fixes #3976
2016-05-18 09:01:15 -07:00
Adam Barth
8294b96f94 Complete dartdocs for painting.dart (#4003) 2016-05-18 09:01:03 -07:00
Adam Barth
4e1108e742 Improve dartdoc comments for gestures.dart (#4000)
Also, make some previously private classes public for better
documentation.
2016-05-17 21:52:08 -07:00
Ian Hickson
d2c8c82f4b Some cleanup of the test framework (#4001)
* Add a "build" phase to EnginePhase for completeness.
* Ignore events from the device during test execution.
* More dartdocs
* Slightly more helpful messages about Timers in verifyInvariants.
* Add widgetList, elementList, stateList, renderObjectList.
* Send test events asynchronously for consistency with other APIs.
* Fix a test that was depending on test events being synchronous (or
  rather, scheduled in a microtask that came before the microtask for
  the completer of the future that the tap() function returned).
2016-05-17 17:12:03 -07:00
Adam Barth
0dafe1a480 Add dartdoc to Tooltip (#3957)
Also, remove several unused configuration options and fix an animation
leak.
2016-05-17 16:02:12 -07:00
Adam Barth
0e8e8bbb24 Finish dartdoc for gestures.dart (#3994) 2016-05-17 15:39:46 -07:00
Ian Hickson
b803d187ca Catch async functions passed to setState(). (#3992) 2016-05-17 14:53:17 -07:00
Hans Muller
ee3db6e61a Tweaks (#3975)
* ScrollableBuilder tweaks
2016-05-17 12:27:13 -07:00
Adam Barth
e9fe39e5e5 Explicitly specify linear curves (#3973)
We now required the curve parameter for CurvedAnimation.
2016-05-17 11:15:58 -07:00
Adam Barth
355a1d8ecf Add some docs to gestures.dart (#3966)
Also, add some missing docs to http.dart and widgets.dart.
2016-05-17 11:14:15 -07:00
Adam Barth
fa22cf5337 Finish dartdocs for animation.dart and foundation.dart (#3963)
Everything now has dartdocs except one setter whose getter already has
docs.
2016-05-17 10:49:20 -07:00
Hans Muller
bec3fdefd1 Add a Scrollable builder, refactor ScrollableList, et al (#3950)
* Add a Scrollable builder, refactor ScrollableList, et al

* Add space between the dialog demo buttons

* removed vestigial code
2016-05-16 17:32:01 -07:00
Adam Barth
0f3bd3ae84 Speed up compositing by 5x (#3948)
According to the profile for the flow manual test, we're spending the vast
majority of our time recording timeline traces. This patch removes the timeline
traces, which greatly improves performance.

Also, optimize TransformLayer to avoid one matrix memcpy. I filed
https://github.com/google/vector_math.dart/issues/166 about an API that would
make this even faster.
2016-05-16 16:41:13 -07:00