214 Commits

Author SHA1 Message Date
Eric Seidel
af454168fc Fix material_design_icons
TBR=abarth@google.com
2015-07-23 17:35:43 -07:00
Adam Barth
ce7ca2ccb0 Remove clean_sky_package.py
This script is unused.
2015-07-23 16:54:51 -07:00
Adam Barth
3b23f92f5f Merge pull request #261 from abarth/demagic_sky_package
Remove the magic from the Sky package
2015-07-23 16:52:50 -07:00
Adam Barth
62005770f8 Remove the magic from the Sky package
We now just symlink the lib directory into the packages directory in the output
directory.
2015-07-23 16:52:32 -07:00
Ian Fischer
88a936708e Command line options for launching a particular
Sky app in the simulator.
2015-07-23 16:41:51 -07:00
Adam Barth
267410cb83 Symlink Material Design Icons into Dart packages in the out dir
Otherwise they won't be visible to the web server.
2015-07-23 16:34:11 -07:00
Adam Barth
4b218fb6de Remove outdated HACKING.md document
CONTRIBUTING.md has the current instructions.
2015-07-23 16:19:55 -07:00
Adam Barth
2e2d20e6bf Merge pull request #254 from abarth/sky_services
Add sky_services pub package
2015-07-23 16:05:57 -07:00
Adam Barth
f9c50e6022 Fix clean build
This script was erroring out due to some missing renames.
2015-07-23 16:03:36 -07:00
Adam Barth
45be398801 Add sky_services pub package
This package contains the mojom.dart files we generate from the sky_engine
repository.
2015-07-23 15:51:37 -07:00
Adam Barth
6f84de718f Merge pull request #250 from abarth/material_package
Move Material Design Icons to their own package
2015-07-23 14:57:52 -07:00
Adam Barth
47a582b794 Move Material Design Icons to their own package
After this patch, we use pub to manage versioning and fetching the material
design icons.
2015-07-23 14:54:59 -07:00
Viktor Lidholt
fb814cabf6 Merge pull request #249 from vlidholt/master
Adds test case for drawAtlas in games
2015-07-23 14:44:37 -07:00
Viktor Lidholt
3cb8769543 Adds test case for drawAtlas in games 2015-07-23 14:39:39 -07:00
Eric Seidel
cffc3f985d Merge pull request #248 from eseidelGoogle/target_cpu
Fix sky/tools/gn --ios --simulator to set the correct target_cpu
2015-07-23 14:33:02 -07:00
Eric Seidel
dfdc7327fb Fix sky/tools/gn --ios --simulator to set the correct target_cpu
Also fixed missing dependency from LocalDOMWindow.cpp on
mojo's navigation service.  Not sure why gn check missed that.

R=abarth@google.com
2015-07-23 14:30:49 -07:00
Ian Hickson
97911fb860 Merge pull request #244 from Hixie/focus
Add a dialog to the address book app to test scoped focus.
2015-07-23 14:19:42 -07:00
Adam Barth
3b32f3f3c6 Merge pull request #245 from abarth/sky_engine_package
Add a sky_engine package to contain the dart:sky SDK extensions
2015-07-23 14:18:05 -07:00
Adam Barth
b091dfbba9 Add a sky_engine package to contain the dart:sky SDK extensions 2015-07-23 14:17:35 -07:00
Hixie
d1d91c59b1 Add a dialog to the address book app to test scoped focus. 2015-07-23 14:06:12 -07:00
Adam Barth
2cfc204230 Merge pull request #241 from abarth/sky_shell_apk
Create a SkyShell.apk
2015-07-23 13:32:15 -07:00
Viktor Lidholt
f76a56de33 Merge pull request #223 from vlidholt/master
Adds custom play button with texture to demo game
2015-07-23 13:30:25 -07:00
Eric Seidel
6a2f32fbff Merge pull request #242 from eseidelGoogle/gn_fix
Fix sky/tools/gn to not crash
2015-07-23 13:27:59 -07:00
Eric Seidel
f2bb23ad3e Fix sky/tools/gn to not crash
TBR=abarth@google.com
2015-07-23 13:27:34 -07:00
Viktor Lidholt
337a47c344 Adds custom play button with texture to demo game 2015-07-23 13:27:17 -07:00
Ian Hickson
c0d1777271 Merge pull request #239 from Hixie/scheduleBuild
Remove scheduleBuild()
2015-07-23 13:26:08 -07:00
Adam Barth
54e3a36c32 Create a SkyShell.apk
This CL introduces a SkyShell.apk that is separate from the SkyDemo.apk that we
upload to the store to show our demos.  The SkyShell.apk is just an empty shell
that can run Sky applications on Android.
2015-07-23 13:26:01 -07:00
Eric Seidel
badad33d36 Fix gn --ios --simulator to use the right out directory.
R=abarth@google.com
2015-07-23 13:16:43 -07:00
Hixie
b88df17823 Remove the scheduleBuild() API.
I've noticed an anti-pattern emerge where people call scheduleBuild()
when they think they've changed enough state that they should rebuild,
instead of just wrapping their changes in setState(). This leads to
them missing state changes, having extraneous scheduleBuild() calls,
and other similar bugs.

By removing scheduleBuild(), the only way to actually schedule a build
now is to call setState(), and hopefully that'll make it much clearer
that you're only supposed to do this when you change state.
2015-07-23 12:55:48 -07:00
Ian Hickson
d219e6d331 Merge pull request #235 from Hixie/focus
Track global keys globally.
2015-07-23 12:29:59 -07:00
Eric Seidel
dfca14785b Merge pull request #237 from eseidelGoogle/insert_before
Add insertBefore test which I wrote from Hixie's fuzzer
2015-07-23 12:26:26 -07:00
Eric Seidel
b46ae69bdd Fix gn --ios --simulator
Previously --simulator required an argument due to not having
an action specified and defaulting to "store" instead of "store_true"

R=iansf@google.com
2015-07-23 12:23:20 -07:00
Eric Seidel
b57147684e Add insertBefore test which I wrote from Hixie's fuzzer
R=ianh@google.com
2015-07-23 12:15:44 -07:00
Eric Seidel
4e17ceefdb Add support for Canvas.setMatrix and getTotalMatrix
Part of fixing issue #138.

R=abarth@google.com
2015-07-23 11:21:33 -07:00
Hixie
bde56f4b5c Track global keys globally.
Assert that there are no duplicates.
Export GlobalKey from basic.dart, so that people don't have to import widgets.dart just for that.
Fix the "initialFocus" feature which actually didn't work.
2015-07-23 11:10:04 -07:00
Ian Fischer
a9061ef43e Some changes to bring the iOS build closer to the
Android and Linux builds.

Also fixes a couple of toolchain selection issues.
2015-07-23 10:07:11 -07:00
Ian Fischer
0651f802f8 Merge pull request #225 from iansf/ios_logging
Feedback from previous logging code review that I missed.
2015-07-23 09:44:32 -07:00
Adam Barth
afe9fbceba Merge pull request #230 from abarth/use_dart_http_server
Switch sky_tool to use a Dart-based HTTP server
2015-07-23 09:28:40 -07:00
Eric Seidel
a09baca0dd Add C++ based support for drawAtlas
This is supposed to make Viktor's game faster, but it's not clear
to me that it actually does.  I've left the code
using the dart version of drawAtlas for now until Viktor can
verify that it looks correct.

I also added a wrapper for SkFilterQuality in the process of
debugging SkCanvas.drawAtlas since all drawAtlas examples
in Skia use FilterQuality.low.  The bug which blocked me for
so long turned out to be that SkCanvas.drawAtlas doesn't
draw anything if antialiasing is turned on.

Issue #138.

R=abarth@google.com
2015-07-23 09:25:10 -07:00
Hixie
0ab9766786 RenderConstrainedBox was ignoring its additional constraints for its intrinsic size logic when it had no child. 2015-07-23 09:06:34 -07:00
Adam Barth
c60b3ee954 Merge pull request #233 from abarth/fix_analyzer
Fix analyzer warnings
2015-07-23 08:56:10 -07:00
Adam Barth
499a13c5ee Fix analyzer warnings
- Remove unused imports
 - Remove unused, broken constructor for MineDiggerApp
2015-07-23 08:54:51 -07:00
Hixie
86fd1e4840 Rename defaultFocus to initialFocus. 2015-07-23 08:43:40 -07:00
Eric Seidel
db577577c7 Focus support.
This patch provides a class to manage focus, Focus, and a class to
manage ownership of the keyboard, KeyboardHandle.

Inherited (in widgets.dart) is adjusted to support subclasses that
need to copy state from instance to instance.

A GlobalKey key type is introduced that is basically the same as
UniqueKey. Component classes that need a globally-unique key can
specify that their 'key' constructor argument is a GlobalKey.

Focus
-----

You can use `Focus.at(this)` to determine if you, a Component, are
currently focused.

You can use `Focus.moveTo(this)` to take the focus or give it to a
particular component.

For this to work, there has to be a Focus class in the widget
hierarchy.

Currently, there can only be one Focus class, because nested scopes
aren't supported. We should add support for that in a future patch.
See issue #229.

KeyboardHandle
--------------

Instead of directly interacting with the keyboard service, you now ask
for a KeyboardHandle using `_keyboard.show(client)`. This returns a
KeyboardHandle class. On that class, you can call `handle.release()`
when you want to hide the keyboard. If `handle.attached` is still
true, and you need to reshow the keyboard after the user hid it, then
you can can `handle.showByRequest()`.

The point of this is that the `keyboard.show()` method maintains the
invariant that only one KeyboardHandle is live at a time.

There are some issues with the keyboard service that I filed as a
result of doing this patch: #226 #227
2015-07-23 08:43:40 -07:00
Adam Barth
c523468e2e Don't try to access the network in Stocks test
Accessing the network created a race condition that would sometimes cause other
tests to fail.
2015-07-23 08:39:42 -07:00
Adam Barth
ba14135744 Switch sky_tool to use a Dart-based HTTP server
The Python HTTP server was caching too agressively. Instead, use an HTTP server
written in Dart from the sky_tools package.
2015-07-23 00:22:41 -07:00
Ian Hickson
4da169cf37 Merge pull request #215 from Hixie/crash-settings
Fix the crash when going to settings after showing the popup menu.
2015-07-22 18:16:08 -07:00
Ian Fischer
875542fc9a Change the ios logging level and remove the prefix. 2015-07-22 17:17:02 -07:00
Ian Fischer
87e53dae2d Merge pull request #199 from iansf/ios_logging
Make Dart |print| calls show up when running on Mac and iOS.
2015-07-22 16:55:01 -07:00
Hixie
9015e19f43 Make center part of toolbar optional. 2015-07-22 15:57:51 -07:00