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.
Add type annotations in many places.
Fix some identifiers to have more lint-satisfying names.
Make all operator==s consistent in style.
Reorder some functions for consistency.
Make ParentData no longer dynamic, and fix all the code around that.
Make it possible for named routes to be generated on the fly.
To demonstrate this, you can now long-press a stock to open it.
Next steps:
- transitions between (named) states that follow full material logic,
e.g. in the case of the stock row to stock page transition, expanding
the row into a raised sheet of material and expanding it to fit the
screen, leaving the toolbar in place but cross-fading the old
contents to the new contents.
- more information in the stock view.
While I was here I also made Material have an opinion about default text
style, so if you forget to set one, it just uses body1.
Also, fixed bugs introduced recently that made RouteState and MenuRoute
not work properly.
We already know how to talk to the network_service from Dart
via fetch.dart. Might as well use that for Image loading
as well insetad of having ImageLoader do it.
As part of this I've renamed *ImageLoader to *ImageDecoder
and moved all the image loading logic into Dart. This required
me to teach the idl system about mojo handles so that I could
pass the resulting MojoHandle from fetch.dart up through to
ImageDecoder.
R=abarth@chromium.org, jackson@google.com, hansmuller@google.com
Review URL: https://codereview.chromium.org/1173703002.