Adam Barth
c17d58ab28
Fix shutdown crash in Sky
...
Previously, we would try to close some Dart persistent handles after destroying
the isolate. Now we revoke the weak pointers these handles are using to refer
to the isolate before trying to tear them down.
Fixes https://github.com/domokit/mojo/issues/233
R=chinmaygarde@google.com , eseidel@chromium.org
Review URL: https://codereview.chromium.org/1175053002 .
2015-06-10 12:59:07 -07:00
Matt Perry
d745bd3d47
Sky: Add a DartConverterEnum and use that for all our enum needs.
...
R=abarth@chromium.org , eseidel@chromium.org
Review URL: https://codereview.chromium.org/1170963003 .
2015-06-09 15:58:54 -04:00
Eric Seidel
8f975399e1
Move image loading out of C++ into Dart
...
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 .
2015-06-09 12:14:13 -07:00
Matt Perry
edd0d6e16a
Add support for linear gradients, implemented as skia shaders.
...
I had to complicate the IDL bindings generation to allow passing an array of
colors. Without these changes, we'd try to convert the dart object to
Vector<SkColor>, which C++ thinks is Vector<unsigned>, and we'd use the wrong
converter. So I added some template grease to force it to use a
Vector<CanvasColor> converter.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1152963009
2015-06-08 13:49:10 -04:00
Matt Perry
8afcb0fe2d
Canvas.concat takes a 16-element Float32List instead of an array.
...
The array should be in column-major format, in the format used by vector_math.dart.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1155193004
2015-06-04 13:51:44 -04:00
Matt Perry
eaba0b981f
Add DartHandleCache and use it to cache strings used when converting Rect and
...
Point classes.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/1145103005
2015-05-28 13:39:33 -04:00
John McCutchan
f0c5ab0b82
Roll Dart forward
...
BUG=
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1159443002
2015-05-28 07:45:06 -07:00
Adam Barth
f179203848
Add support for testing content in SkyView
...
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/1160763004
2015-05-27 13:14:08 -07:00
Adam Barth
018bf2ba17
Add tracing for major GC in Sky
...
Ideally we'd trace VM operations from inside the VM, but we don't yet have
DartVM wired into tracing. Instead, we use these GC hooks to trace how long
major GC takes.
R=rafaelw@chromium.org
Review URL: https://codereview.chromium.org/1031083003
2015-03-25 10:46:19 -07:00
Rafael Weinstein
e53bba60a5
Add dart_invoke to tonic for calls into App code.
...
This patch adds utility functions which provide a single choke point for calling into sky application code. For now this is only serving the purpose of having a common trace event for calls into app code.
R=abarth@chromium.org , abarth
BUG=
Review URL: https://codereview.chromium.org/941153003
2015-02-24 12:11:19 -08:00
Scott Violet
15d7cd9b47
Gets HTMLIFrameElement::embedViewManagerClient to work with dart
...
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/948943002
2015-02-23 15:29:22 -08:00
Adam Barth
5efcc9a6d8
Add support for |any| to Sky's code generator
...
We now expand |any| to DartValue (which exists) as opposed to ScriptValue
(which does not).
Also, fill in a few missing pieces in tonic that will be used by custom
elements.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/942993002
2015-02-20 12:19:54 -08:00
Adam Barth
f562073fe2
Make it possible to inherit from any constructable host object
...
This CL makes it possible for authors to extend any host object (e.g., DOM
objects) and to use those objects in all the usual places they can be used in
the API.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/936193005
2015-02-19 23:09:51 -08:00
Adam Barth
1312b93456
Use Dart_EmptyString
...
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/933843004
2015-02-17 16:20:39 -08:00
Adam Barth
24b3a12e95
Throw exception for null listener in addEventListener
...
We appear to be missing a null check here as well.
R=ojan@chromium.org , esprehn@chromium.org
Review URL: https://codereview.chromium.org/937443002
2015-02-17 10:49:52 -08:00
Adam Barth
5c2c411c40
ParentNode#appendChild(null) shouldn't crash
...
We just needed to throw the proper exception when handed null for a
non-nullable argument.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/934863002
2015-02-17 10:15:27 -08:00
Adam Barth
374a768d5b
Improve DartLoader error handling.
...
Before this if a dart import 404s, we crash.
This makes some minor improvements in our logging
for better diagnosis of future errors.
R=abarth@chromium.org
BUG=
Review URL: https://codereview.chromium.org/926753002
2015-02-14 20:18:00 -08:00
Adam Barth
f7e974680c
Morph the APIs for Node, ParentNode, and Element closer to the specs
...
These still don't match the specs exactly, but they're much closer.
R=ojan@chromium.org , eseidel@chromium.org
Review URL: https://codereview.chromium.org/924203002
2015-02-13 21:36:53 -08:00
Eric Seidel
c7d2352897
Add the c++ code part of bindings2/
...
This is all the bindings-level dart code we had to write
to enable Dart in Sky. We wrote this over the last 2
weeks in:
https://github.com/eseidel/skydart
R=abarth@chromium.org , jamesr@chromium.org
BUG=454613
Review URL: https://codereview.chromium.org/918333002
2015-02-12 13:42:11 -08:00
Rafael Weinstein
2a5e18ff64
Merge the tonic layer from skydart branch back to master
...
The tonic layer is analogous to "gin" for v8. It provides wrappers and helpers around common dart types and implements the basic infrastructure for allowing dart wrappers around sky DOM objects to have proper GC behavior.
R=abarth@chromium.org
TBR=eseidel
BUG=
Review URL: https://codereview.chromium.org/924593002
2015-02-12 12:55:01 -08:00