This moves the tracing code and mojoms from sky/viewer/services/ to
mojo/common/ in anticipation of refactoring these to be more widely
usable. This doesn't actually change behaviors yet.
BUG=436639
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/751303003
When we run the tests headless, we never actually put up frames, which means we
never generate animation frames. In this mode, we might want to generate fake
animation frames (like DRT does), but for now just use a timeout to make the
tests work again.
R=rafaelw@chromium.org, esprehn@chromium.org
Review URL: https://codereview.chromium.org/758113003
This hook existed because some elements wanted to run script inside
::insertedInto, but that wasn't a safe time. Now nothing can run script
inside there so we don't need this extra hook.
HTMLStyleElement's usage of this hook is not clear, but it seems like
it might have related to a pre-lazy attach bug.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/758623002
Previously, there was no way for clients of the surfaces service to
appropriately rate-limit their frame submissions. We tried using the "return
resources" signal to rate-limit, but that's really a measure of how quickly
you're submitting new resources rather than how quickly the system is putting
up frames.
Currently, only the Sky compositor listens to this signal. Using this signal,
we're able to run sky/examples/spinning-square.sky in sync with the surfaces
service (that is, submitting exactly one frames every 17ms).
R=jamesr@chromium.org
Review URL: https://codereview.chromium.org/756673004
'preventDefault()', since that doesn't really do anything now. Clean
up how dispatchEvent() works. Add a 'handled' boolean that listeners
can check to see if they should ignore the event.
Review URL: https://codereview.chromium.org/752093003
This CL fixes two bugs:
1) We need to enter the Ganesh context in order to destroy the GrContext.
2) We had a race condition whereby we'd try to upload a frame to a surface that
didn't yet exist. This CL fixes that race by adding a state to LayerHost to
wait for the surface to be created before trying to upload to it.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/753643002
This regressed in 3db9471ae80bd492f2a346113d2323ba8eee0c09.
Accidentally sent some code down the override by sending the
top LayoutUnit instead of the left/right LayoutUnit. The
root problem was bad overloading, which is also fixed in
this patch. Inlined the overloaded method since one of
the calls was only called from one place.
The new test demonstrates the ellipsizing, but that doesn't
show through in the render tree dump. We don't get real
test coverage here until we either start doing pixel tests
or start exposing ellipsis in the render tree dumps.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/751483002
Turns out we need to reset the context before switching back to drawing with
Ganesh (i.e., call resetContext on the GrContext) to clean out whatever state we've
changed in the GL context. Now the city-list and the flights-app demos work.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/752653002
This CL updates ApplicationManager so that it always reconnect to an
application that is already launched.
To obtain this results, the following changes habe also been made:
1) The Loader interface has been simplified:
- The pipe to the shell if given during the Load request, so that loader do
not need to called RegisterLoadedApplication
2) PngViewer and PdfViewer allows multiple embedder to embed those.
3) For the second connection forward, Sky issue network request to get the
content of the page to display.
R=aa@chromium.org
Review URL: https://codereview.chromium.org/741453002
Moving this property to a getter lets the implementation of the object change
the value but prevents clients of the API from changing the value, which is the
expected behavior.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/746953002
This caused us to lose our gn check certification. :(
Turns out gn check was just ignoring all the header
paths it didn't understand and so gn check passing
for sky wasn't meaning much. I tried to straighten
out some of the mess in this CL, but its going to take
several more rounds of massaging before gn check
passes again. On the bright side (almost) all of
our headers are absolute now. Turns out my script
(attached to the bug) didn't notice ../ includes
but I'll fix that in the next patch.
R=abarth@chromium.org
BUG=435361
Review URL: https://codereview.chromium.org/746023002
actually telling your child to paint, you just say where it would
paint. The platform then takes care of making sure all the dirty nodes
have their paint() methods called.
Review URL: https://codereview.chromium.org/744843003
The only place it's used now is making it so that
anonymous flex items don't do ellipsizing the same
way anonymous items inside a block would. This
is something we don't need, especially now that
we only have anonymous paragraphs around text nodes.
It's not clear to me if we want this looking at the
parent behavior at all, but that's something that
can be fixed in a followup.
Also delete some dead anonymous block functions.
R=esprehn@chromium.org
Review URL: https://codereview.chromium.org/741893002
Previously, skydb could be used only for Debug builds. As part of working on
graphics performance, I'd like to use it for release builds as well. This CL
teaches it to use the same configuration arguments as sky_server, test_sky, and
test_perf.
The downside of this CL is that you'll need to supply --debug in the common
case of working with a debug build.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/746473003
This starts to break the dependency between blink and
the new v8_inspector. At least now the front-end
object InspectorBackendMojo is treated as a peer to
WebView instead of WebView providing one.
Unfortunately I also had to teach Page about
InspectorHost in order to make it possible to
lookup the InspectorHost from the v8::Context.
I'm sure there is a nicer way to associate the
InspectorHost with the context but for now
I've chosen this path, we can untangle the
connection in a later patch.
I also ended up removing Page::allPages
and all callers, since they ended up as dead code.
R=abarth@chromium.org, yurys@chromium.org
BUG=435243
Review URL: https://codereview.chromium.org/746713002
v8_inspector is a peer to web for now.
Eventually it should be its own separate target
and not depend on core or platform at all, but we can't yet.
This creates a place for us to move the debugger-inspector
code to so it can be refactored to not depend on core.
I also moved the public target for sky out of public/
and renamed it "engine" instead of blink.
R=abarth@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/744143002