RenderBlock wasn't constraining the results.
RenderPadding wasn't constraining the results (which matters
especially when the constraints can't fit the padding in the first
place).
RenderViewport wasn't constraining the results.
Add a test for the block case.
To catch this kind of thing in the future, add some asserts to
debugDoesMeetConstraints() that all four intrinsic functions return
values that are within the constraints.
RenderBlockViewport doesn't support returning intrinsics, so turn off
the "no intrinsic support" asserts (and return zero) when we're doing
this new assert.
This new assert screwed up the custom layout classes' tests, so adjust
those tests to ignore the callbacks invoked from these asserts.
Add to the _debugReportException() method a short summary of the
descendants of this node. It's important to have this information when
debugging errors like these intrinsic constraints contract violations
because often nodes just pass the values through to their child so you
have to go several steps down to find the actual problem.
Fixes https://github.com/flutter/flutter/issues/1210
As part of this:
- A lot of classes got new lerp functions, including e.g. TextStyle.
- Theme's constructor story got overhauled. You can now configure
everything if you really want to, and we're better about defaults.
- Material no longer automatically animates its background color.
(It still does for its shadow.)
- Tabs try to get the indicator color from the theme.
- The fields in ThemeData got reordered for sanity.
- Theme.== and Theme.hashCode got fixed.
- Typography got a bit of a spring cleaning.
Fixes#613.
Turns out Android crashes if the colour is not opaque, so we enforce
that at the Dart level.
Also, since label and colour are both actually optional, make them
named arguments.
This uses the fancy new x-repository support:
https://github.com/luci/recipes-py/blob/master/doc/cross_repo.md
I'm not at all certain that we're going to use Chromium's
Infra for flutter, but I'm exploring and since this works
I figure I should check it in.
@abarth
Update progress_indicator widget example
Update the progress_indicator demo: it was using Title explicitly, which is no longer needed.
Defend against a null color in updateTaskDescription. The color field in the TaskDescription struct (activity.mojom) isn't nullable.
Fixes#1248
Introduces a new Tooltip class.
Adds support for tooltips to IconButton and Scaffold.
Adds some tooltips to various demos.
Also some tweaks to stack.dart that I made before I decided not to go
down a "CustomPositioned" route.
We were recomputing which widgets to show only when we were on the other side
of the repaint boundaries. That doesn't work well for pageable lists because we
come to rest exactly on a repaint boundary, which means we don't cull the other
page.
After this patch, we recompute the set of widgets using an edge-trigger when we
hit the boundary. That's better than using a level-trigger so that we don't
continuously recompute the set of widget as we sit at the boundary.
The Firebase server seems to have changed behavior and is not giving us a List
instead of a Map. This patch switches us back to GitHub, which just serves the
same flat files all the time.