921 Commits

Author SHA1 Message Date
Adam Barth
e2638c189d Add dartdoc for the painting code 2015-08-31 09:36:35 -07:00
Ian Hickson
969dfe5273 Add gestures/ to README.md prose 2015-08-30 16:30:59 -07:00
Ian Hickson
9152f4643f Add gestures/ to README.md diagram 2015-08-30 16:29:48 -07:00
Adam Barth
bd01a89958 Update skydoc.py now that dartdoc is in the Dart SDK
Now that dartdoc is part of the Dart SDK, we can use the SDK version directly.
2015-08-30 13:38:54 -07:00
Adam Barth
92857ceef8 Add dartdoc for base 2015-08-30 13:03:03 -07:00
Adam Barth
bffdcf84f5 Update box_painter.dart 2015-08-30 11:03:00 -07:00
Adam Barth
0d3c62ef72 Merge pull request #946 from abarth/infinite_border_radius
BoxDecoration's borderRadius should be able to handle a value of double.INFINITY
2015-08-29 22:34:30 -07:00
Adam Barth
2dd8365201 Scrolls should start immediately when possible
If there are no other gestures in the arena, we should kick off the scroll
gesture right away. This change pulled a refactoring of how we dispatch events
to Widgets. Now we dispatch events to Widgets interleaved with their associated
RenderObjects. (Previously we dispatched to all of the RenderObjects first.)
2015-08-29 22:30:49 -07:00
Adam Barth
8d0a2426a6 Rename ParagraphPainter to TextPainter
Also, add asserts that the text has layout before being painted.
2015-08-29 11:41:20 -07:00
Adam Barth
acec6d0171 BoxDecoration's borderRadius should be able to handle a value of double.INIFINITY
We just need to enforce some finite clamp and Skia will do the rest.

Fixes #939
2015-08-28 20:58:34 -07:00
Adam Barth
8a92f2d0c7 Remove unused import to make analyzer happy 2015-08-28 20:50:54 -07:00
Adam Barth
d45ca99539 Merge pull request #941 from abarth/scroll_disambig
Disambiguate horizontal and vertical scrolling
2015-08-28 20:33:31 -07:00
Adam Barth
bf3db503fd Disambiguate horizontal and vertical scrolling
We now have separate gestures for horizontal, vertical, and pan scrolling.
2015-08-28 20:33:14 -07:00
Ian Fischer
cdbb26c627 Merge pull request #944 from iansf/no_android
Don't crash when no Android device is attached
2015-08-28 19:28:51 -07:00
Misha Dynin
9d19587e9d Fixed a typo in the README. 2015-08-28 17:54:14 -07:00
Ian Fischer
987d0d5f7d Make it so that sky_tool doesn’t crash if an Android device isn’t attached.
Refactors a bunch of Android-related things into an AndroidDevice singleton class.
2015-08-28 17:13:39 -07:00
Ian Hickson
cdeab155d1 Merge pull request #942 from Hixie/mixed-mid
Fix crash when a MixedViewport is initially offset at a non-zero position
2015-08-28 16:59:43 -07:00
Hixie
c308cfbf1e Test MixedViewport
add/remove/add smoketest
basic vertical behaviour
basic horizontal behaviour
2015-08-28 16:59:10 -07:00
Hixie
7a53576ff8 Fix crash when a MixedViewport is initially offset at a non-zero position.
We need to always remove the widget when you sync a non-visible
widget, even if we already have it, because otherwise we'll try to
sync it with null again later, which causes a crash.

Test in #938.
2015-08-28 16:57:05 -07:00
Adam Barth
537a192e50 Rev pub package 2015-08-28 16:13:02 -07:00
Adam Barth
fc3e91600c Rev pub package 2015-08-28 16:08:30 -07:00
Hixie
9fee250249 Set and remove the callbacks on the RenderObject when we create and remove it.
...and not when we mount and dismount.

Turns out that when we dismount, it's too late -- we've already set
renderObject to null.

We also mark the mixed viewport as dirty when it is removed from its parent.
Without this, we try to reuse the child nodes in subsequent syncs, which is a disaster.
2015-08-28 15:07:51 -07:00
Adam Barth
3e4bc25dbc Merge pull request #934 from abarth/scroll_start
onScrollStart shouldn't have an offset
2015-08-28 15:07:42 -07:00
Adam Barth
ab13ea240d onScrollStart shouldn't have an offset
Instead, we pump a onScrollUpdate with the offset if there is an offset.
2015-08-28 15:07:30 -07:00
Adam Barth
e25c6aafa3 Remove --only from run_tests
This feature is built into package:test. We don't need to reimplement it
poorly.
2015-08-28 14:39:53 -07:00
Hixie
2f3d1fdeb8 Add support for 'direction' to MixedViewport. 2015-08-28 14:27:51 -07:00
Adam Barth
9c8406f99f Merge pull request #930 from abarth/scroll
Add scroll gestures and use them in Scrollable
2015-08-28 14:05:36 -07:00
Adam Barth
6c2f3b9419 Add scroll gestures and use them in Scrollable
This patch replaces the scroll gestures used by Scrollable with ones detected
by the ScrollGestureDetector.
2015-08-28 13:59:46 -07:00
James Robinson
66eeff595c Merge pull request #927 from jamesr/tp_khr_only_egl
Remove //gpu and GLES* headers from third_party/khronos
2015-08-28 13:28:32 -07:00
James Robinson
3c7f75853a Remove //gpu and GLES* headers from third_party/khronos
This gets rid of the rest of the files in //gpu and the GLES{2,3}
headers from //third_party/khronos. The GL headers used for GLES{2,3}
come from the platform being targetted, that is
//mojo/public/c/gpu/GLES2 for Mojo,
//third_party/android_tools/ndk/platforms/android-XX/usr/include/GLES2
for Android and the OpenGL framework for Mac/iOS.

The //third_party/khronos/EGL headers are still being used by some
utility code in //ui/gl. This code is only really useful on Android, as
Sky doesn't use EGL on iOS/Mac/Mojo, but it's compiled in on all
platforms currently and relies on some EGL defines that are not set in
the EGL headers we currently use. These could probably be removed
without much trouble.

The //third_party/khronos/GLES2 headers are still used by some of
//ui/gl on iOS. These should be using the iOS OpenGL framework headers,
and will in the future.

Removes the unneeded KHRONOS_APICALL override from KHR/khrplatform.h

Rolls to a newer Mojo SDK that doesn't expect //third_party/khronos
2015-08-28 13:26:57 -07:00
Hixie
08b7ea3e3d Rationalise the Key API.
Add a way of having keys based on numeric types or DateTimes by having a ValueKey<T> class.
Remove the redundant ways of declaring things, except for leaving one shorthand -- you can say `new Key(s)` instead of `new ValueKey<String>(s)`.
2015-08-28 13:17:34 -07:00
Hixie
9ac880d425 Stop exporting framework.dart from basic.dart, since we now have widgets.dart exporting all of framework.dart. 2015-08-28 13:06:11 -07:00
Adam Barth
05d245bd5f Merge pull request #921 from abarth/use_tap
Use GestureDetector in the framework and examples
2015-08-28 12:52:51 -07:00
Ian Fischer
e2854ac628 Merge pull request #922 from iansf/verbose_flag
Add a --verbose flag to sky_tool
2015-08-28 12:40:59 -07:00
Ian Fischer
06769d9fca Add a verbose flag to sky_tool that logs all of shell commands being run.
Also clean up some formatting issues.
2015-08-28 11:00:54 -07:00
Adam Barth
9c82589fc3 Use GestureDetector in the framework and examples
We're now using it at the widget layer for everything except scrolling and
flinging.
2015-08-28 10:58:46 -07:00
Adam Barth
df5e2f7812 Merge pull request #912 from abarth/tap
Add tap, show press, and long press gestures and use tap in IconButton
2015-08-28 10:23:01 -07:00
Adam Barth
8047f1e289 Add tap, show press, and long press gestures and use tap in IconButton
These gestures use the new gesture detection system.
2015-08-28 10:21:35 -07:00
Adam Barth
28ee74da95 Merge pull request #917 from abarth/pointer_packet
Add a mojom for delivering pointer events in packets
2015-08-28 10:11:39 -07:00
Ian Fischer
6b3ed6a922 Merge pull request #916 from iansf/release_flag
Add --release flag
2015-08-28 09:56:33 -07:00
Adam Barth
30a05aab46 Add a mojom for delivering pointer events in packets
We don't use this interface yet.
2015-08-28 09:39:35 -07:00
Ian Fischer
56d85276c8 Add global release flag that will attempt to use release builds during install. 2015-08-28 09:37:54 -07:00
Adam Barth
bb844a62de Fix analyzer warning 2015-08-27 22:59:24 -07:00
Alhaad Gokhale
e2b4149320 Go back to master. 2015-08-27 18:16:45 -07:00
Adam Barth
c9a7149955 Merge pull request #908 from abarth/gesture_arena
Add GestureArena
2015-08-27 17:17:28 -07:00
Adam Barth
03fffdfef9 Add GestureArena
In the GestureArena, gestures will fight it out to see which is the real
ultimate gesture.
2015-08-27 17:17:12 -07:00
James Robinson
ac393ede71 Remove //gpu and other unused code
Oneline diffstat: 489 files changed, 4 insertions(+), 186980
deletions(-)

This deletes all of //gpu (except for one export header) and
various bits of //mojo/{gpu,gles2} that are
not used. SkyShell on Android/iOS/etc bind to the system's GL
driver via //ui/gl. sky_viewer.mojo
binds to the Mojo C entry points.
2015-08-27 16:38:20 -07:00
James Robinson
790e5c2e31 Merge pull request #896 from jamesr/gpu_bindings
Use C bindings to Mojo GL entry points exclusively
2015-08-27 16:35:26 -07:00
James Robinson
8b4bdd242d Use C bindings to Mojo GL entry points exclusively 2015-08-27 15:58:24 -07:00
Eric Seidel
d8664718c3 Merge pull request #878 from eseidelGoogle/grid
Add basic Grid widget and test RenderGrid
2015-08-27 15:55:39 -07:00