1049 Commits

Author SHA1 Message Date
Adam Barth
f2b28e55b8 Merge pull request #1444 from abarth/float64
Moves from vector_math to vector_math_64
2015-10-01 15:37:20 -07:00
Hixie
ce2c56b35c EdgeDims changes and other fixes to core classes.
- Rename EdgeDims constructor to EdgeDims.TRBL().

- Add operator== to Size and Offset so that you can compare Size to
  DebugSize in checked mode.

- Add Size.lerp().

- Add various operators to EdgeDims. (*, /, ~/, %)

- Add EdgeDims.lerp().

- Update style guide. I went there to fix an EdgeDims constructor
  example, and stayed because some recent things came up and I wanted to
  add them before I forgot.
2015-10-01 15:34:04 -07:00
Adam Barth
7662a30f85 Moves from vector_math to vector_math_64
* Moves from vector_math to vector_math_64
* Adds support for Float64List in Dart bindings
2015-10-01 14:46:13 -07:00
Hixie
94f910d8b4 Stocks app used RouteState, now renamed StateRoute 2015-10-01 13:31:18 -07:00
Collin Jackson
603e1efbb4 Merge pull request #1434 from collinjackson/decode_lists
Support for decoding images in lists
2015-10-01 13:24:08 -07:00
Ian Hickson
eda8792542 Merge pull request #1437 from Hixie/mixed_viewport_demo
Remove the mixed_viewport demo
2015-10-01 13:22:45 -07:00
Collin Jackson
a995092c0a Fix spinning_image URL to one that works 2015-10-01 13:16:53 -07:00
Hixie
13ffcaff2f Remove the mixed_viewport demo
It's redundant with card_collection.dart, which does similar things but
much better.
2015-10-01 12:53:34 -07:00
Hixie
4d186e3c28 Port overlay_geometry.dart demo.
This removes GlobalKey.currentElement in favour of GlobalKey.currentContext.
2015-10-01 12:50:49 -07:00
Adam Barth
67feb40cb5 Update playfair to a version that supports fn3 2015-10-01 09:54:31 -07:00
Adam Barth
45c906d2ad Make fn3 the default widget framework 2015-10-01 09:48:35 -07:00
Adam Barth
9fe747e409 Remove unused imports 2015-10-01 09:30:31 -07:00
Adam Barth
5477d46f19 Port SkySprites and clients to fn3 2015-10-01 09:26:19 -07:00
Adam Barth
d96cbdd084 Port demo_launcher and fitness to fn3 2015-10-01 09:07:17 -07:00
Adam Barth
8fb59f1d6a Merge pull request #1416 from mdakin/minedigger2
Fix bounds checking error I introduced in previour cl, Address style …
2015-10-01 08:30:36 -07:00
Collin Jackson
b05d42c3b9 Merge pull request #1220 from collinjackson/scaling_focus
Ensure that the item under the focal point stays in the same place despite zooming
2015-10-01 07:27:54 -07:00
mdakin
e509cd7d18 Fix bounds checking error I introduced in previour cl, Address style issues. 2015-09-30 23:15:55 +02:00
Hans Muller
4ac052357f Snap scrolling: additional tests, cleanup 2015-09-30 14:13:11 -07:00
Adam Barth
347bd25cb4 Remove BuildContext argument to initState
This argument isn't needed anymore now that State has a getter for context.
2015-09-30 13:15:46 -07:00
Ian Hickson
8f91be5a02 Merge pull request #1405 from Hixie/dynamic-routes
Dynamic named routes
2015-09-30 09:54:27 -07:00
Hixie
f2b7dd6201 Dynamic named routes
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.
2015-09-30 09:03:58 -07:00
mdakin
32558478b1 Fix alignment of mine counts, simplfy code a bit. 2015-09-30 15:11:42 +02:00
Ian Hickson
9cb9eaf54f Merge pull request #1403 from Hixie/clickable-stocks
Make Stocks demo list rows clickable
2015-09-29 22:32:00 -07:00
Hixie
a91dd07cb3 Draggable
Introduce a Draggable class that wraps all the logic of dragging
something and dropping it on a DragTarget.

Update examples/widgets/drag_and_drop.dart accordingly.

Make the performance/transition part of routes optional.
2015-09-29 18:00:40 -07:00
Hixie
f43591b3c4 Make Stocks demo list rows clickable
Not having them clickable was making it hard to notice InkSplash bugs.
Also, this paves the way to having a stock page.
2015-09-29 17:55:27 -07:00
Ian Hickson
156ff2beec Merge pull request #1386 from Hixie/toString
fn3: toString() and toStringDeep() debugging aids
2015-09-29 17:09:54 -07:00
Ian Hickson
8b6bd844cf Merge pull request #1376 from Hixie/toggleable
Make the checkbox in the stocks popup menu work.
2015-09-29 17:08:36 -07:00
Ian Hickson
2ed1b60808 Merge pull request #1371 from Hixie/fab-snack
Make the FAB move up when a Snack Bar slides in.
2015-09-29 15:23:49 -07:00
Hans Muller
7385641f6d SnapOffsets for fling Scrolling
Initial snap offset support for ScrollableWidgetList (and ScrollableList<T>) and ScrollableMixedWidgetList. If a ```toSnapOffset(scrollOffset)``` function is provided, fling Scrolls will coast to the returned value. If ```alignmentOffset``` is specified then fling scrolls conclude when toSnapOffset's value lines up with the Scrollable widget's origin + alignmentOffset. For example if the Scrollable widget's height was 200.0, and alignmentOffset:100.0 was specified, then fling scrolls would end with the value returned by toSnapOffset() lined up with the center of the Scrollable.

This approach to Scrollable snapping assumes that the layout of whatever the Scrollable contains is known at the outset. This is often true however a ScrollableMixedWidgetList may not know its items' sizes until they've been reached by scrolling.

This is a first cut at snapping support. Among the things that remain to be done:
- Scrolling limits trump snapping. Snapping should probably trump scrolling limits.
- Drag scrolls aren't snapped. This may be desirable so perhaps the feature should be controlled with a flag.
- Specifying alignmentOffset as a percentage would probably be more convenient.
- It would be nice if one could wrap items in a SnapOffset value like: ```new SnapOffset(0.5, child: myItem)``` to snap to the center of the item.

Updated the CardCollection example: snapping and fixed size items can be turned on/off with Drawer checkboxes.
2015-09-29 11:09:59 -07:00
Hixie
4620b63226 fn3: toString() and toStringDeep() debugging aids 2015-09-28 17:09:26 -07:00
Hixie
066768f096 Make the checkbox in the stocks popup menu work.
Tapping on the menu item didn't animate the checkbox because the menu
takes 300ms to animate entirely away while the checkbox takes 200ms to
animate checked, and since the item with the checkbox was at the bottom,
we were only seeing about 60ms of the entire checkbox animation, which
isn't enough to notice it. So I moved it to the top of the menu.

Tapping on the checkbox didn't animate because nothing caused the menu
to rebuild when the callback was invoked. To trigger a rebuild, I now
call navigator.setState() explicitly, after changing out local state.

To make tapping the checkbox remove the menu, I also explicitly call
navigator.pop() in the code that handles the check. (I still explicitly
change the checkbox to show that that's possible. In principle one could
just treat the checkbox as an inert widget that happens to trigger pop,
and do all the checking/unchecking in the switch statement.)

I also made some minor style tweaks to files I was looking at while
dealing with this issue.
2015-09-28 11:15:05 -07:00
Hixie
56d4033423 Make the FAB move up when a Snack Bar slides in.
This changes how SnackBar works so you can use it anywhere, not just on
the bottom edge of the screen (it used to rely on overflowing its bounds
and having negative offsets... I'm not really sure how hit testing
worked on it before!).

To do this I introduced a new RenderBox, RenderOverflowBox, that lets
you set your child's size independent of your own. I needed this so that
the snack bar could use a SquashTransition to change its size, while not
affecting the layout of its child. This is exposed as OverflowBox in
fn3. I'm not sure if it's the best API. It doesn't let you position the
child (which is an issue if the size you give is smaller), it doesn't
let you give a loose constraint (which maybe you might want?). But it
handles this use case, so for now it's probably ok.

Making the FAB get repositioned out of the way of the Snack Bar is now
done in the Scaffold, which is in charge of positioning both of those
and is the place that knows that both exist.
2015-09-28 10:19:22 -07:00
Adam Barth
6ea83f11c8 Merge pull request #1367 from abarth/update_navigation_example
Update navigation example
2015-09-26 18:39:33 -07:00
Adam Barth
fb58141dc5 Port hello_world to fn3 2015-09-26 13:18:20 -07:00
Adam Barth
bb8e82d053 Port address_book to fn3 2015-09-26 13:16:33 -07:00
Adam Barth
1424f351d9 Update navigation example after Navigator changes
Now this example uses the App widget to drive the adventure game.
2015-09-26 13:07:46 -07:00
Adam Barth
a01aa6ffbb Fix analyzer warnings 2015-09-26 13:07:31 -07:00
Adam Barth
8e201d7552 Port MineDigger to fn3 2015-09-26 12:53:14 -07:00
Adam Barth
a74d02dadf Rename Sky to Flutter in a few more places 2015-09-26 12:46:03 -07:00
Hixie
0a0a92eb45 Port stocks to fn3 and introduce an App component. 2015-09-25 17:52:33 -07:00
Viktor Lidholt
55dc7108a5 Merge pull request #1351 from vlidholt/master
Renames pointQuickDist in GameMath
2015-09-25 13:50:48 -07:00
Viktor Lidholt
0cb811ef06 Renames pointQuickDist in GameMath 2015-09-25 13:12:01 -07:00
Hixie
5f9cb4aa38 Port ScrollableMixedWidgetListState to fn3. 2015-09-25 10:27:43 -07:00
Adam Barth
b5893f9e13 Fix typos in fn3 2015-09-25 08:42:39 -07:00
Adam Barth
83b7459201 Port even more examples to fn3 2015-09-24 16:09:37 -07:00
Hixie
c3b3b71bed Rename ComponentState and use initState().
ComponentState becomes State, for brevity.
Instead of overriding its constructor, override initState().
This makes writing States much simpler.
2015-09-24 16:00:51 -07:00
Adam Barth
7dd26a7a5a Port some more examples to fn3 2015-09-24 15:43:40 -07:00
Adam Barth
cefbfa3bea Port Date Picker example to fn3 2015-09-24 14:46:29 -07:00
Adam Barth
878775bb89 Port big_switch.dart to fn3 2015-09-24 13:29:40 -07:00
James Robinson
9809130029 Updates for change in Mojom dart enum generation 2015-09-24 10:35:20 -07:00