Related: https://github.com/domokit/mojo/issues/614
Flutter can play sounds using this package. However, when Mojo Shell is running Flutter, it lacks the necessary media service.
This patch creates a hook to the mojo binary `media_service.mojo`. If Mojo Shell is built with this media service, then it will be able to play sounds when running Flutter.
The performance overlay is always drawn using the compositor. We should tell
the rest of the system that it's going to make a composited layer.
Fixes#1177
We don't know how to accuately compute paint bounds in the render tree.
Instead, we can rely on the compositor to compute the paint bounds for
us if we use OpacityLayer to do our opacity blends.
Fixes the shadow when closing the menu in the stocks app.
Also, introduce alwaysNeedsCompositing to force the "needs compositing"
bit to true without necessarily introducing a ContainerLayer into the
layer tree. A future patch will make use of alwaysNeedsCompositing to
optimize opacity layers.
The pointer router was using an iteration pattern that always delivers
handleEvent calls even if you remove a route during the iteration.
That's awkward to program against and causes trouble for the double-tap
gesture.
This patch switches PointerRouter to using a re-entrant iteration
pattern that supports removing routes (but not adding routes) during the
iteration.
- Add an option to enable debugPaintSizeEnabled.
- Add an option to enable the StatisticsOverlay.
- Add support for the StatisticsOverlay in MaterialApp.
- Change the layout behaviour of RenderStatisticsBox:
- Give it a zero intrinsic width.
- Give it an accurate intrinsic height that depends on the flags
set. (Also, move the enum to the rendering/ layer from the
widgets/ layer to enable this.)
- Make the box automatically size itself full-width and the correct
height, so that you can actually embed it (though most of the
time you'd just put it in a Stack so this doesn't matter as
much, really).
- Some style nit fixes in statistics_box.dart.
When the TabView widget's children change, we don't change the children
we give to the PageViewport because we fail to update _items. This patch
watches didChangeConfig and updates _items appropriately.
Fixes#1134Fixes#1168
This makes it more consistent with tightFor(), and also makes it
easier to tighten both directions at once when you're not sure you
will always do so (e.g. if you have a height and width that might be
null, and want to tighten whichever ones aren't null).
- padding is shown in blue with a darker blue around the child
- spacing (empty size boxes or padding) is shown in gray
- alignment from a RenderPositionedBox is shown with yellow arrows
When I tightened up the layout constraints for the Drawer in the
Scaffold, I ended up making the edge swipe detector cover the entire
screen. This patch fixes that issue by putting the gesture detector for
the edge swipe just around the container with the proper width. We now
use a global key to maintain the state across hierarchy changes.