127 Commits

Author SHA1 Message Date
Eric Seidel
e76d3f9fd1 Move Fitness.app to the latest playfair
@collinjackson
2015-08-25 13:32:28 -07:00
Eric Seidel
9085b8ad44 Hack around Fitness.app crashing if it can't load data
I'm not sure this is the correct approach, but it
at least mitigates https://github.com/domokit/sky_engine/issues/804
for now.

I also made it not crash if you haven't set a goalWeight.

@collinjackson
2015-08-25 13:09:50 -07:00
Viktor Lidholt
cca7006d95 Removes custom joystick code and adds a new moving enemy to demo game 2015-08-25 09:28:58 -07:00
Viktor Lidholt
0257b37975 Adds base rotation property to rotate-to-movement constraint 2015-08-25 09:28:58 -07:00
Viktor Lidholt
4a6919c364 Adds virtual joystick to games library 2015-08-25 09:28:58 -07:00
Viktor Lidholt
bb0de38f5b Minor code cleanup 2015-08-24 16:41:05 -07:00
Viktor Lidholt
e5fb2b7187 Adds support for spline actions and constraints on nodes 2015-08-24 16:08:23 -07:00
Viktor Lidholt
c1b071c1ac New game demo, initial version 2015-08-24 16:07:25 -07:00
Adam Barth
d1537172bf Merge pull request #780 from abarth/mimic_improvements
Mimic should track Mimicable more completely
2015-08-24 15:11:34 -07:00
Adam Barth
3acbcbd375 Mimic should track Mimicable more completely
We now have Mimic tracking Mimicable through tree structure changes and while
moving around the screen.

Fixes #751 and #756
2015-08-24 15:11:18 -07:00
Hans Muller
384bcd70e9 Support ScrollableLists that wrap
Adds itemsWrap:bool (default false) to ScrollableList and PageableList. If itemsWrap is true then scrolling past the last item wraps around to the first. Similarly, scrolling before the first item wraps around to the last.

Added abstract ExtentScrollBehavior of ScrollBehavior. Renamed fields called contentsExtents to contentExtent, containerExtents to containerExtent, contentSize to contentExtent, etc.

BoundedBehavior is now a subclass of ExtentScrollBehavior.

Added UnboundedBehavior subclass of ExtentScrollBehvaior; contentExtent and maxScrollOffset are double.INFINITY, minScrollExtent is double.NEGATIVE_INFINITY.
2015-08-24 13:22:08 -07:00
Adam Barth
1db6f202b3 Address review comments from #767
Mostly formating and removing arguments with default values.
2015-08-22 11:25:53 -07:00
Adam Barth
131a0d6766 Merge pull request #767 from abarth/modernize_drawer_item
DrawerItem, DrawerHeader should take a child instead of children
2015-08-22 08:46:12 -07:00
Adam Barth
341728ce5f Fix analyzer warnings 2015-08-22 08:24:02 -07:00
Adam Barth
c1cc8b2099 DrawerItem, DrawerHeader should take a child instead of children
These widgets were designed in CSS where you need to specify a layout model for
your children. This patch updates them to the modern style of just taking a
unique child.

Fixes #755
2015-08-22 08:19:38 -07:00
Adam Barth
f140ec7aff Rename syncFields to syncConstructorArguments 2015-08-21 17:21:42 -07:00
Collin Jackson
47921c196f Merge pull request #747 from collinjackson/fitness_loading
Don’t flash a message while fitness data is loading
2015-08-21 16:21:05 -07:00
Adam Barth
c354abc7e0 Rename all the scrollable classes
Block -> BlockBody
ScrollableBlock -> Block
FixedHeightScrollable -> ScrollableWidgetList
VariableHeightScrollable -> ScrollableMixedWidgetList
BlockViewport -> MixedViewport
2015-08-21 14:39:41 -07:00
Adam Barth
13355a99b0 Add SetRequestedOrientation to Activity service
Fixes #743
2015-08-21 12:49:49 -07:00
Collin Jackson
65e6d44e09 Don’t flash a message while fitness data is loading 2015-08-21 11:19:26 -07:00
Adam Barth
f14976d3e4 Add the ability to draw borders on circles
We now support uniform borders on circular box decorations.

Fixes #741
2015-08-21 10:48:28 -07:00
Collin Jackson
49d7699b5c Add goal weight indicator line to fitness chart 2015-08-20 11:45:31 -07:00
Collin Jackson
46687c8ddd Merge pull request #713 from collinjackson/goalweight
Support for saving goal weight
2015-08-20 11:44:48 -07:00
Adam Barth
5b7e927bdc Merge pull request #714 from abarth/stack_squish
Stack squishes positioned elements near the edge
2015-08-20 11:25:35 -07:00
Adam Barth
937b5a2c85 Stack squishes positioned elements near the edge
When laying out positioned children inside a stack, we should give them
unbounded constraints because if they draw outside of the stack, we'll just
clip them.
2015-08-20 11:15:15 -07:00
Collin Jackson
3002f296a2 Support for goal weight saving 2015-08-20 11:02:00 -07:00
Collin Jackson
af433c5552 Merge pull request #691 from collinjackson/settings_save
Add support for saving settings in fitness app
2015-08-20 10:57:31 -07:00
Collin Jackson
deb648c19c Split fitness app’s UserData into UserData and UserDataImpl 2015-08-20 10:54:48 -07:00
Adam Barth
c16e03429c Key should be const
For great constness.

Fixes #693
2015-08-20 09:50:51 -07:00
Hans Muller
2e112e4317 Handle changes to scrollDirection in ScrollableList et al
Changed the pageable_list.dart example: tapping on the toolbar changes
the scroll direction. This exposed some problems:

- Scrollable.syncFields() didn't update scrollDirection
- Viewport updated its RenderObject fields in the wrong order
- FixedHeightScrollable scrollDirection changes didn't update the scrollBehavior

There may be similar problems with VariableHeightList and ScrollableViewport.
I will fix those in a separate CL.
2015-08-20 08:24:16 -07:00
Collin Jackson
47dc2cee19 Add support for saving settings in fitness app 2015-08-19 12:12:33 -07:00
Hans Muller
43c9017882 Dismissable: correct handling of a drag that ends with a fling 2015-08-19 10:48:26 -07:00
Hans Muller
8e465b4dce Adds PageableList, other scrolling related changes and fixes
- PageableList extends ScrollableList
One fixed width or height item is visible and centered at a
time. Fling and drag gestures scroll to the next/previous item.

- Scrollable.scrollTo(), Scrollable.scrollBy(), ensureWidgetIsVisible() API changed
The named animation parameter for these methods was replaced by
duration and curve. All of the methods now return a Future. The Future
completes when the scroll does.

This change eliminates the need for Scrollable to temporarily take ownership
of a ValueAnimation object (see #645).

- Using Future.then() instead of an AnimationPerformance status listener
In ensure_visible.dart _handleTap() uses ensureWidgetIsVisible() to
center the card roughly as before and then. When the implicit scroll
animation is complete, it changes the centered card's label font. The
change is made when the Future returned by ensureWidgetIsVisible()
completes.

- FixedHeightScrollable's itemHeight parameter is now itemExtent
If scrollDirection is ScrollDirection.vertical (the default) then itemExtent should
be the height of each item; otherwise it should be the width of each item.

Replaced _velocityForFlingGesture() in scrollable.dart with Scrollable._eventVelocity()
The original version clamped pixels/ms against pixels/sec constants. The new version
also deals with scrollDirection.

- Plumbed scrollDirection though FixedHeightScrollable and ScrollableList

Both classes should now support horizontal scrolling.
2015-08-19 10:14:21 -07:00
Adam Barth
7e5b6c96c7 Update playfair revision
... and reattach fitness to the build. We detached fitness from the build
because it was seeing an old version of playfair that didn't work with the most
recent version of the Sky package.
2015-08-19 09:05:30 -07:00
Adam Barth
f186981924 Temporary build fix
Unhook fitness from the build to work around build break in playfair. We
updated the Sky package in an incompatible way, which means we need to roll in
a new playfair package to build fitness.
2015-08-18 21:50:29 -07:00
Adam Barth
f9c683bceb Add package:sky/rendering.dart
Similar to widgets.dart, rendering.dart exports the entire rendering layer.
Also, update the examples to use rendering.dart and widgets.dart. Also clean up
some exports so that the examples have more sensible imports.
2015-08-18 21:39:51 -07:00
Adam Barth
037e1c7155 Split box.dart into many files
Sadly, box.dart has grown much longer than 1000 lines. This patch splits it up
into several files based on the class hierarchy. Fortunately, many of these
classes are loosely coupled to each other.
2015-08-18 20:55:32 -07:00
Collin Jackson
3347adc89f Request gridlines for fitness chart 2015-08-18 15:15:49 -07:00
Adam Barth
a525f84bf0 Merge pull request #672 from abarth/render_image_fit
Apply ImageFit and ImageRepeat to RenderImage
2015-08-18 11:12:00 -07:00
Adam Barth
205f948edf Apply ImageFit and ImageRepeat to RenderImage
These properties should apply to foreground images as well as background
images. Also, rename these types from BackgroundFit and BackgroundRepeat
because they apply to things other than backgrounds.
2015-08-18 11:11:31 -07:00
Viktor Lidholt
95014000a9 Fixes loading of assets in demo game 2015-08-18 10:33:34 -07:00
Viktor Lidholt
ee8506d32c Merge pull request #666 from vlidholt/master
Adds bounce and elastic easing to animation curves
2015-08-18 09:37:02 -07:00
Eric Seidel
28ed6e686a Add release notes for SkyDemo.apk 0.0.23 2015-08-17 18:00:10 -07:00
Eric Seidel
f3814a8c60 Add release notes for Fitness 0.0.3
@collinjackson
2015-08-17 17:51:50 -07:00
Eric Seidel
908490d089 Make Asteroids.apk use background music from its bundle
This was the last instance of loading assets off of Github.

@abarth
2015-08-17 17:10:38 -07:00
Viktor Lidholt
8ab5167eb1 Updates demo game to use curves from the animation package 2015-08-17 17:07:55 -07:00
Eric Seidel
7637d52cdf Teach Asteroids Sounds how to load from AssetBundle
@abarth
2015-08-17 16:07:08 -07:00
Eric Seidel
40bf356a80 Merge pull request #659 from eseidelGoogle/analyzer
Fix analyzer warnings
2015-08-17 14:34:54 -07:00
Eric Seidel
e8ab9d7239 Fix analyzer warnings
We had a remarkable number of analyzer failures.

I'll fix the bots to analyze across the whole project
in a follow-up patch, that should prevent this
in the future.

@abarth
2015-08-17 14:32:29 -07:00
Adam Barth
87ca9c16be Rename Widget.root to Widget.renderObject
The name `root` is confusing because this value isn't the root of anything.
It's just the associated `RenderObject` instance.
2015-08-17 14:15:26 -07:00