Adam Barth
16f8b21601
Fix gesture events in fn2
...
This CL makes gesture events work again in fn2.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1146923005
2015-06-03 16:06:15 -07:00
Hixie
d53de8ad97
Plug the drawer into stock2.
...
Not tested on device.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1160523005
2015-06-03 15:36:48 -07:00
Eric Seidel
1f8892f709
Fork theme to theme2 and use sky.Color types directly.
...
This also works around an Android-only crasher for the Dart VM:
https://github.com/domokit/mojo/issues/192
R=ianh@google.com
Review URL: https://codereview.chromium.org/1157243012
2015-06-03 15:22:08 -07:00
Collin Jackson
e16e10d830
Implement RenderImage and Image for Sky
...
This also fixes a bug that was preventing markNeedsLayout from working
R=abarth@chromium.org , eseidel@chromium.org , abarth, eseidel
Review URL: https://codereview.chromium.org/1160013004
2015-06-03 15:17:12 -07:00
Viktor Lidholt
ef070b2cfb
Sky example game enhancements, adds preloading of images and adds transform modes to SpriteBox
...
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1149183004
2015-06-03 15:05:55 -07:00
Hixie
a18d06f34c
Add overlays back to stocks2.
...
Except that nothing actually uses these now so it's a no-op really.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1157243011
2015-06-03 15:03:34 -07:00
Hixie
926eafbf47
Fix scaffold to work for the toolbar.
...
Also, make the scaffold code more generic (with slots in a map,
instead of dedicated members for each slot).
This may eventually benefit from being split into a general
"multislot" superclass and a scaffold-specific subclass, but for now
it'll do.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1152163007
2015-06-03 14:50:32 -07:00
Matt Perry
8c097b0892
Update BoxDecoration and RenderParagraph to use sky.Color instead of int.
...
Also add operator==, hashCode, toString, and some basic Color constants to
Color.
R=abarth@chromium.org , ianh@google.com
Review URL: https://codereview.chromium.org/1162023004
2015-06-03 16:57:04 -04:00
Eric Seidel
b18eecb50d
Make tracing work in the new .dart world.
...
R=abarth@chromium.org , viktorl@google.com
Review URL: https://codereview.chromium.org/1152483006
2015-06-03 12:40:38 -07:00
Adam Barth
81b8512b41
Add support for transforms to container
...
These transforms are currently very basic but they seem to mostly work.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1152273004
2015-06-03 10:20:33 -07:00
Eric Seidel
d9ed864cc9
Give the Stocks2 App a new improved toolbar.
...
Looks horrible. But it's a start.
R=abarth@chromium.org , ianh@google.com
BUG=
Review URL: https://codereview.chromium.org/1146913005
2015-06-02 16:13:31 -07:00
Viktor Lidholt
109271ea62
Initial version of working game with Box2D, images, nodes and sprites.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1161023006
2015-06-02 15:09:01 -07:00
Adam Barth
898273c7b2
Implement Container in fn2
...
This CL is a first pass at implementing container in fn2. In this approach,
Container is a Component that builds a number of RenderNodeWrappers depending
on what is needed.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1158983005
2015-06-02 15:07:02 -07:00
Matt Perry
485523560f
Add a MaskFilter interface to dart:sky to handle blur.
...
For this, I added back my previous CustomDart attribute for customizing the
generated Dart code of an interface.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1162843003
2015-06-02 17:26:32 -04:00
Hixie
e8cafd9d71
Rename rendering/render_*.dart to rendering/*.dart
...
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1166773003
2015-06-02 13:55:20 -07:00
Adam Barth
3f57030cef
Add BlockContainer to fn2
...
BlockContainer uses a RenderBlock to lay out its children.
R=eseidel@chromium.org , jackson@chromium.org
Review URL: https://codereview.chromium.org/1166473005
2015-06-02 12:19:25 -07:00
Adam Barth
55eb0b38f0
Mark fn2's EventListenerNode work for PointerEvent
...
Prevously we listened for events on the document and then walked up the
component hierarchy looking for EventListenerNodes. Now we do something similar
by hooking the event dispatching logic in the AppView.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1153343004
2015-06-02 12:18:13 -07:00
Matt Perry
e68fe5d33e
Add TransferMode to dart:sky, and use it instead of passing ints around.
...
Also use Point in place of passing 2 ints to the DrawLooper API.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1158883004
2015-06-02 15:03:44 -04:00
Matt Perry
4f2d78a5bb
Re-land "Add a Color class to dart:sky."
...
The previous patch broke the sky tests. I have updated the framework to use the new Color class.
R=jackson@google.com
Review URL: https://codereview.chromium.org/1159663003
2015-06-02 14:09:42 -04:00
Collin Jackson
f396442e0a
Implement a simple image cache for Sky in Dart. This doesn't yet do any eviction from the cache.
...
R=abarth@chromium.org , abarth
Review URL: https://codereview.chromium.org/1165753004
2015-06-02 10:44:48 -07:00
Collin Jackson
2ff84ffe5f
Refactor image handling in Sky to expose the loader and image as separate classes to Dart code. This makes it possible to avoid unnecessary paints, by only painting once when the image has loaded. Now that we've separated the loader and image classes, we can implement an image cache in Dart.
...
R=abarth@chromium.org , abarth
Review URL: https://codereview.chromium.org/1156003007
2015-06-01 16:21:21 -07:00
Matt Perry
ffed692545
Revert "Add a Color class to dart:sky."
...
This reverts commit a413c8319fe9a46dc131f6efe275d014c9cb7eb9.
Reason: seems to have broken Sky tests:
Regressions: Unexpected crashes (2)
raw/render_box.dart [ Crash ]
raw/render_flex.dart [ Crash ]
TBR=jackson@google.com
Review URL: https://codereview.chromium.org/1143133007
2015-06-01 18:13:35 -04:00
Matt Perry
326e2324c9
Add a Color class to dart:sky.
...
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1161273004
2015-06-01 16:48:48 -04:00
Collin Jackson
5afac54a8b
Add Sky framework support for drawing images
...
R=abarth@chromium.org , abarth
Review URL: https://codereview.chromium.org/1151753009
2015-05-29 16:45:43 -07:00
Adam Barth
6eba4a04f9
Add a simple inksplash example
...
We'll eventually turn this into a full fn2 component, but for now it's just an
example.
To make this work, I created a schedule.dart as a start to implementing
scheduler.md. For now, I've kept the API similar to the web platform so that
the old world can continue use it backed by sky.window.requestAnimationFrame.
R=eseidel@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1145973009
2015-05-29 13:55:12 -07:00
Adam Barth
8cbfd0a9fa
Split layout2.dart into several files
...
Previously layout2.dart was a thousand lines long.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1161003002
2015-05-28 16:42:04 -07:00
Hixie
9f086ea445
Make RenderParagraph mutable, and make it fit the new RenderNode protocols
...
R=abarth@chromium.org , eseidel@chromium.org
Review URL: https://codereview.chromium.org/1165463002
2015-05-28 15:19:36 -07:00
Adam Barth
ad4249a804
Replace BoxDimensions with sky.Size
...
R=ianh@google.com
Review URL: https://codereview.chromium.org/1150253005
2015-05-28 14:29:29 -07:00
Adam Barth
aa8c852c06
Move simple_render_tree into tests as render_flex
...
R=ianh@google.com
Review URL: https://codereview.chromium.org/1146123003
2015-05-28 14:29:10 -07:00
Matt Perry
fb8596730c
Add an API to set the ColorFilter on a Paint object.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1158693005
2015-05-28 17:17:11 -04:00
Eric Seidel
7e7ed88f29
Add hello_fn2.dart and make Text("Hello fn2") actually render something.
...
R=ianh@google.com
Review URL: https://codereview.chromium.org/1160843005
2015-05-28 13:56:36 -07:00
Adam Barth
9a73fe989e
Introduce RenderProxyBox and RenderSizedBox
...
Also makes Point, Size, and Rect immutable.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1162033002
2015-05-28 13:39:26 -07:00
Adam Barth
bf94f5c027
Use Point, Size, and Rect in layout2.dart
...
R=ianh@google.com
Review URL: https://codereview.chromium.org/1156303004
2015-05-28 12:42:54 -07:00
Eric Seidel
faf554f03d
Move RenderParagraph into layout2.dart
...
TBR=ianh@google.com
Review URL: https://codereview.chromium.org/1155103003
2015-05-28 12:26:09 -07:00
Eric Seidel
108863ab95
Add a very simple RenderParagraph example using LayoutRoot.
...
I'm sure we'll want something more sophisticated in the near future.
Next step is to actually animate this updating layout.
R=ianh@google.com
Review URL: https://codereview.chromium.org/1150183005
2015-05-28 12:18:56 -07:00
Hixie
d99ee82260
Refactor layout/relayout into a single method.
...
This dramatically simplifies the layout model.
I haven't gone through and simplified the existing functions, we should probably go through and figure out if they can be cleaned up a bit.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1161983004
2015-05-28 11:15:58 -07:00
Hixie
26be5af114
Refactor padding out of RenderBlock.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1143153011
2015-05-27 17:11:45 -07:00
Hixie
63d5c73dd1
[Effen] port fn and stock to RenderNode, part 1 of many
...
This gets things off the ground barely enough to show some pixels.
These are not pixels that are actually part of the stock app, but
it's a start.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1157033006
2015-05-27 13:36:01 -07:00
Matt Perry
1a07d29d7e
Sky: Add a DrawLooper interface to the painting API to be used for shadows.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1144193006
2015-05-27 16:22:01 -04:00
Hixie
ad87a6a82b
Fix compilation errors in render-sector.dart
...
TBR=abarth
Review URL: https://codereview.chromium.org/1153273002
2015-05-27 12:03:15 -07:00
Matt Perry
4139325e2c
Sky: Add a Point class.
...
Also, fix the style in Rect.cpp/.h.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1158843002
2015-05-27 14:40:02 -04:00
Eric Seidel
922ea790b8
Make it possible to draw Text in the new window/document-less world
...
I had to add back document.createText() since new Text()
does not work in the new world yet.
LayoutRoot is a new Dart-exposed class which holds the Frame and
all associated machinery, sufficient to trigger a restyle
and layout of the subtree.
This is all kinda hacky and I'm sure likely to cause many
crashes if folks call random methods on these disconnected
trees.
But this makes it at least possible to paint text for now
and we can improve this in the coming days.
This really should have Adam's review. It's hugely hacky
but I'd like to negotiate out with him the timeline on
which we should fix some of these hacks.
R=ianh@google.com
TBR=abarth@chromium.org
Review URL: https://codereview.chromium.org/1148253003
2015-05-27 11:05:42 -07:00
Hixie
85bf9d878c
[Effen] Point the stocks2 and components2 files at the forked libraries. (part II)
...
This was supposed to be in https://codereview.chromium.org/1153223003
TBR=abarth
Review URL: https://codereview.chromium.org/1160763003
2015-05-27 09:39:15 -07:00
Hixie
8789d0a312
Replace setBoxDecoration() with a decoration property. (part II)
...
This was supposed to be in https://codereview.chromium.org/1153893006/
TBR=abarth
Review URL: https://codereview.chromium.org/1151383003
2015-05-27 09:35:15 -07:00
Hixie
7adb9be998
Replace setBoxDecoration() with a decoration property.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1153893006
2015-05-27 09:30:25 -07:00
Hixie
bde2470ed6
[Effen] Point the stocks2 and components2 files at the forked libraries.
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1153223003
2015-05-27 09:13:37 -07:00
Hixie
e0299f111b
[Effen] Fork stocks and fn.dart so we have something to work on during the porting process
...
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1156543004
2015-05-26 12:53:08 -07:00
Hixie
b96da3b2ad
Rationalise hit testing in the new RenderNode world
...
- makes the event logic not involve a boolean return value (since we ignored it anyway)
- splits the event handling logic into two steps, hit testing and event dispatch
- introduces an App class on the Dart side to factor out the interaction with the C++ side
- ports sector-layout and simple_render_tree to the new App infrastructure
- port simple_render_tree to the new event handling logic
- implement hit testing for the sector-layout demo
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1143343004
2015-05-26 12:44:35 -07:00
Collin Jackson
279cd62440
Clean up syntax as suggested by sethladd
...
R=sethladd@google.com , sethladd
Review URL: https://codereview.chromium.org/1159763003
2015-05-26 10:20:37 -07:00
Hixie
6f126091f2
RenderSector example: add a class to stack in the other direction, and fix various bugs.
...
- the circle now fills the screen
- you can set dimensions on the solid color node
- debugging printfs and rects are gone
- the protocol is changed so that for sectors, you position before you size (since your size and your childrens' positions all depend on your own position)
TBR=abarth
Review URL: https://codereview.chromium.org/1154213003
2015-05-26 09:53:21 -07:00