Previously we were using the cull rect of the SkPicture to size the GPU buffer,
but Skia is too smart and shrinkwraps the cull rect, which meant we weren't
sizing the GPU buffer to the right size.
Fixes#814
This updates to mojo commit d259eb58aa59 and limits the roll script to
only pull in the parts of //mojo that are currently being used. More
stuff will be dropped in the future.
Also refactors ios_sim.py to be part of sky_tool.
The current skyx file that ‘listen’ generates does not contain material design icons, so icons will be missing.
Now we print Dart_GetError only when we don't have a stack trace. Also, improve
the usability of the sky_shell command line tool by defaulting to "packages"
for the package-root and not crashing when we don't have a package-root until
we actually try to load a package. Finally, remove console spam when we fail to
bind the observatory port.
Fixes#689
We don't want to support file URLs in general, but having them in the "files"
version of the library provider makes it easier to integrate with package:test.
Previously there was a race condition when updating the size of the GLSurface.
Now we explicitly update the size of the surface to match what we expect.
Fixes#610
Now you can use --snapshot to load snapshots from the command line and have
them appear visually on Mac. Also, remove code duplication with Linux by
factoring common testing code into //sky/shell/testing.
This patch simplifies the SkPicture we generate for Skia. Instead of drawing
everything into a nested SkPicture, we now draw everything into the top-level
picture, which requires us to apply the device scale factor in Dart.
directory on the device.
This work is to support a workflow where developers testing on an iOS
device will automatically see their app updates as they change their Sky
code. Currently this works by using the ios-deploy tool:
$ ios-deploy --bundle_id 'org.domokit.sky.game' --upload out/ios_Debug/game_app.app/app.skyx --to Documents/app.skyx
Upcoming commits will incorporate this into skytool.
Apparently this can cause a crash when when we try to render an emoji at a
different size than the emoji font's native bitmap size. I'm not sure how to
reproduce the issue. I'll ask Hixie when he gets back.
Currently we just use regular memory. In the future, we should actually use
discarable memory.
Fixes#203
The previous implementation would (silently) delete any previous
ServiceProviderImpl which would close all open mojo pipes.
This would manfiest in the mojo:network_service never
responding to Dart's request for loads.
This mostly fixes issue #256, however there still appears to be
a separate display-only race, which may be related to issue #52.
R=abarth@google.com
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.
Previously, there was a race condition whereby we could end up with three
requests in the pipeline. Now we update the number of outstanding requests
synchronously, which avoids the race.