Dart code now supports the full flow that the C++ code used to: version check,
download, replace app bundle. Bonus: the Dart code is much easier to follow,
thanks to async/await!
This is part 2 of a 3-part change. The first part added new mojom
interfaces, PathService and UpdateService, to the sky_services package.
This adds a new placeholder dart package updater in sky/packages. This is built
into a snapshot and compiled into the Sky engine binary using the same
mechanism as the Dart isolate.
I also added a SkyHeadless class, similar to SkyView, used for running Dart
code without a view.
Very simple so far. This schedules an alarm to fire once a day, kicking
off a service that downloads a new app.skyx from a hardcoded URL. The
new skyx replaces the current one.
Now we actually use the vsync signal to trigger work. Previously, we'd hit the
pipeline depth limit too early and fall back to swap buffers-triggered
rendering.
Also, rename Vsync to VSync on recommendation from jamesr.
Instead of using back pressure from swap buffers to drive the engine, this
patch using the vsync signal from the Android framework. We still respect
back pressure from swap buffers if we get too far ahead.
This patch contains some minor improvements to the network service:
- We now cache the connection to the network service so we don't need to spin
it up for each request.
- We now manage the lifetime of NetworkServiceImpl in the same way as other
services.
Also, update the workbench sky_tools dependency to the latest version.
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.
- Add missing dependencies caught by gn's new stricter checker
- Update opentype code to use new OTS API. This code is updated from HEAD
Blink.
- Add base dependency to wtf to avoid redefining marcos from base/macros.h
- Update callers of various base string utility functions to use base
namespace.