187 Commits

Author SHA1 Message Date
Eric Seidel
d2e657319b Revert "Attempt to fix page-agent-get-resource-tree on the bot"
Didn't actually fix the bot:
http://build.chromium.org/p/client.mojo/builders/Mojo%20Linux/builds/321/steps/mojob%20test/logs/stdio
so there is no point in keeping this change.

This reverts commit 4e50a3cdf887a77adfb0adf5f4e5ebc42a2d99f7.

TBR=ojan@chromium.org

Review URL: https://codereview.chromium.org/742783003
2014-11-19 12:01:15 -08:00
Eric Seidel
0c2d6c92eb Attempt to fix page-agent-get-resource-tree on the bot
Unclear why it's failing since we don't have
output from the bot, but this seems like a reasonable guess.

TBR=ojan@chromium.org

Review URL: https://codereview.chromium.org/742813002
2014-11-19 11:54:16 -08:00
Elliot Glaysher
2df4773295 Dispatch key events to the currently focused window.
This fixes the browser demo. You can now enter text into the URL bar.

BUG=431047
R=sky@chromium.org

Review URL: https://codereview.chromium.org/737913002
2014-11-19 10:39:24 -08:00
Eric Seidel
717ee79a4b Make skydb chromoting aware
Presumably we should push this logic down into mojo
instead of hacking around this at the script level.

But at least this makes skydb work better for now.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/743603004
2014-11-19 09:46:43 -08:00
Adam Barth
3d0b7838ad Add a trivial test
As an experiment to see if it ever fails.

TBR=esprehn@chromium.org

Review URL: https://codereview.chromium.org/725853003
2014-11-18 17:11:18 -08:00
Elliott Sprehn
1eb4350911 Clean up child checks in ContainerNode.
We can simplify the checks given that there's fewer node types now. This does
make the error messages from Range a little worse, but it's weird that Range
is doing its own error checking anyway.

I also took this as an opportunity to add a bunch of DOM tests.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/732203004
2014-11-18 16:49:48 -08:00
Eric Seidel
88fa228e45 Add support for Page.getResourceTree
Unfortunately we don't yet have a way to walk into
imports, so this only is the first-level of the
source tree, but this is a huge step forward.

You can now click to set breakpoints, however
setting breakpoints crashes sky.

I had to fix Console.log to flush stdout
so that I could actually debug my timing-out test.

Also had to fix Chai to dump differences for deepEqual.

R=esprehn@chromium.org, abarth@chromium.org, esprhen@chromium.org

Review URL: https://codereview.chromium.org/732413004
2014-11-18 15:53:13 -08:00
Eric Seidel
09f4d5e9ff Wire up more of the DebuggerAgent
The debugger can now correctly break on exceptions
and show the corresponding line in the inspector.

It correctly understands which scripts are internal
to sky and does not pause during them.

There is still a ton to make work here
(including stacktraces which I have not tested),
but basic functionality seems to work.

The current implementation is not smart enough to
unpause the inspector when the frontend disconnects.

BUG=434510,434513
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/727593004
2014-11-18 15:05:05 -08:00
Eric Seidel
bae7972281 Teach XHR how to handle relative urls.
Hixie says window.URL may not exist yet in the
sky specs, but I'm sure we'll need something like it.

R=ojan@chromium.org, abarth@chromium.org

Review URL: https://codereview.chromium.org/729913003
2014-11-18 11:15:56 -08:00
Matt Perry
c120bdf84f Sky: When an iframe element is removed, delete its mojo View.
R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/733063007
2014-11-18 14:00:05 -05:00
Ojan Vafai
8de17678c0 First step at getting rid of anonymous blocks and continuations.
-Add RenderParagraph and display:paragraph. This is the only
render type that's allowed to contain inlines or text.
-If you put text nodes directly in a non-paragraph, wrap them
in an anonymous paragraph. This may not be the place we want
to end up, but it's a good stopgap to make it so we don't
crash in this case.
-Make StyleAdjuster force that non-paragraph blocks only contain
RenderBlock subclasses and that paragraphs and inlines only contain
inlines.
-Considerably simplify addChildIgnoringAnonymousColumnBlocks
now that we only create anonymous blocks for the case of
text nodes in non-paragraphs. Also get rid of the behavior
where we try to group multiple nodes into a single
anonymous block.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/729693003
2014-11-17 18:39:52 -08:00
Hixie
15336e278c Specs: Define when needsLayout is reset (also, some unrelated markdown fixes)
Review URL: https://codereview.chromium.org/732243002
2014-11-17 15:43:31 -08:00
Adam Barth
78dcf7687e Mark flaky tests as flaky
R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/734783002
2014-11-17 15:04:18 -08:00
Hixie
1504378dad Specs: Fix markdown errors
Review URL: https://codereview.chromium.org/730273002
2014-11-17 14:54:01 -08:00
Matt Perry
8eefcecb74 Sky: Change iframe positioning to use absoluteContentBox for the View's
coordinate system.

This fixes a bug where the iframe's view would be positioned incorrectly if there were elements above it.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/730253002
2014-11-17 17:38:27 -05:00
Hixie
9597c67904 Docs: copy/pasta left a type annotation from the IDLs in an example
Review URL: https://codereview.chromium.org/732163003
2014-11-17 14:24:33 -08:00
Hixie
3e362b04c3 Specs: make sure all layout/paint/hitTest APIs are relative to the right coordinate space
Review URL: https://codereview.chromium.org/725203007
2014-11-17 13:55:45 -08:00
Hixie
443426468c Docs: duplicate ID in example
Review URL: https://codereview.chromium.org/735533002
2014-11-17 13:41:41 -08:00
Hixie
48a13abc9e Specs: default exports to {} rather than document, since it makes writing modules saner
Review URL: https://codereview.chromium.org/730223002
2014-11-17 13:08:09 -08:00
Adam Barth
ad91aac5ad Add a simple scheduler for animation frames
This CL adds a simple scheduler for animation frames that holds a given interval
in a given phase.  The scheduler can be told the estimated duration of the
BeginFrame callback and can adjust the callback to hit a given vsync interval.

This CL also makes ganesh_app use this scheduler to animate.

R=jamesr@chromium.org, ernstm@chromium.org

Review URL: https://codereview.chromium.org/731893002
2014-11-17 11:24:07 -08:00
Eric Seidel
9fe3014a74 Remove DEPS from sky
Also taught PRESUBMIT.py how to ignore DEPS for sky/
since gn check already covers everything we were using DEPS for.

R=abarth@chromium.org, jamesr@chromium.org

Review URL: https://codereview.chromium.org/737493002
2014-11-17 11:16:44 -08:00
Eric Seidel
363d1f244a Add a little script for resurrecting pre-fork Blink files
Since Sky is checked directly into mojo and does not contain
Blink history, I knew of no easy way to resurrect Blink files.

In making the V8 debugger work, I had to bring back a ton
of files and thus wrote a script to help me do so.

Maybe others will find this useful.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/732193002
2014-11-17 11:08:49 -08:00
Elliott Sprehn
ef2b8bc9c3 Add a version of flights that's made of components.
Also add a test, this checks nested Shadow DOM and <content> with
and without select.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/725763003
2014-11-14 15:00:12 -08:00
Hixie
8032055820 Specs: hit testing (and some cleanup)
Review URL: https://codereview.chromium.org/727993002
2014-11-14 14:35:55 -08:00
Ojan Vafai
63afdb64d8 Add a basic img test.
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/732763002
2014-11-14 13:58:19 -08:00
Benjamin Lerman
3d343084cc Change mojo application name to {name}.mojo
Also remove obsolete reference to gyp files.

R=abarth@chromium.org, brettw@chromium.org, aa@chromium.org

Review URL: https://codereview.chromium.org/713513002
2014-11-14 21:49:31 +01:00
Hixie
1004622439 Specs: Initial hack at extensible style/layout
Review URL: https://codereview.chromium.org/716013002
2014-11-13 14:00:46 -08:00
Benjamin Lerman
1819e0f6ce Revert "Add a version of flights that's made of components."
This reverts commit e8fdb90bca3120d1c991256a2adf83a8315bf867.

This CL breaks the linux bots:
https://chromegw.corp.google.com/i/client.mojo/builders/Mojo%20Linux/builds/216/steps/mojob%20test/logs/stdio

TBR=esprehn@chromium.org

Review URL: https://codereview.chromium.org/722103002
2014-11-13 09:59:26 +01:00
Elliott Sprehn
54c843ca34 Add a version of flights that's made of components.
Also add a test, this checks nested Shadow DOM and <content> with
and without select.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/724613002
2014-11-12 18:42:24 -08:00
Adam Barth
b2c4c73a65 Re-enable the editing tests
Now that we have event sender, we can test editing again.

R=rafaelw@chromium.org

Review URL: https://codereview.chromium.org/723863002
2014-11-12 17:01:14 -08:00
Matt Perry
f0a18492ad Fix iframe.sky layout test failure.
Added extra newline.

R=sky@chromium.org
TBR=sky@chromium.org

Review URL: https://codereview.chromium.org/723643004
2014-11-12 17:38:21 -05:00
Eric Seidel
54a68a68a5 Bring back ScriptDebugServer and associated machinery
Eventually all of this should be moved out of Sky
and instead sit on top of Sky as just a mojo v8 debug service
but for now I'm just bringing back what we had in Blink
so I can make it work with our new inspector backend
and then we can move it out.

I also sorted gn lists and fixed two .idl files
which were in the wrong sources list in core.gni.

R=abarth@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/723773002
2014-11-12 14:21:44 -08:00
Matt Perry
69f275081b Sky: Add a test for the <iframe> element.
Had to disable a DCHECK for now. Scott will investigate why the DCHECK is hit.

BUG=432658
R=sky@chromium.org

Review URL: https://codereview.chromium.org/722713003
2014-11-12 16:50:34 -05:00
Adam Barth
bc824f36fe Script-based imports should basically work
This CL adds the beginning of a new module loading system that matches the
conceptual module in the spec. I've writed it up to the import API on
AbstractModule. In a future CL, I'll replace the old module loading system with
this one.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/720903002
2014-11-12 13:29:14 -08:00
Eric Seidel
26ef461208 Add headers to gn/gni files for all of sky/engine
Also sorted the sources.

This stops sky/tools/missing_from_gn from complaining
about our headers being missing.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/715163002
2014-11-12 11:36:37 -08:00
Adam Barth
41448b9de9 Implement event sender service for testing
This service lets us send Mojo events during testing.

R=eseidel@chromium.org, esprehn@chromium.org

Review URL: https://codereview.chromium.org/716043002
2014-11-12 10:46:35 -08:00
Adam Barth
50de29f59d Input events are broken in skydb
When we removed Aura from the build, we broke event targeting. This CL hacks
around the issue by blindly forwarding events from the root view to the content
view in skydb. Once we have proper event targeting, we should rip out this code.

R=erg@chromium.org

Review URL: https://codereview.chromium.org/714213003
2014-11-12 10:32:54 -08:00
Adam Barth
865b81939b Rename sky::TestObserver to sky::TestHarness
This CL prepares us to add event dispatching to this interface, which is more
than just observation.

R=esprehn@chromium.org, ojan@chromium.org

Review URL: https://codereview.chromium.org/715123002
2014-11-11 16:43:21 -08:00
Elliott Sprehn
fab3c90631 Add a basic benchmark for creating DOM.
R=ojan@chromium.org, abarth@chromium.org

Review URL: https://codereview.chromium.org/713973003
2014-11-10 17:45:50 -08:00
Elliot Glaysher
733e017936 Reland: Remove aura and make a pure mojo::View version of FocusController.
[Changes: Remove additional deps which Linux/Windows was fine with, but
which broke android because it implied an aura dependency. window_manager
should now be properly deauraed.]

This patch is only half done, however the main driver (removing aura) is
needed by other teams for them to make progress.

Input handling is regressed in this patch; while FocusController is
rebuilt to the point where it should theoretically work, all of the
details about ui::EventTargeter don't work correctly. There is an empty
subclass ViewTargeter which will need to be filled out before

Thankfully, this should only regress people who are using the wm_flow
demo, and this should unblock the android guys who don't have aura
support on their platform.

BUG=431047
TBR=eseidel@chromium.org, sky@chromium.org

Review URL: https://codereview.chromium.org/710203006
2014-11-10 17:06:49 -08:00
Elliot Glaysher
afbfcfecda Revert "Remove aura and make a pure mojo::View version of the aura::Window FocusController."
This reverts commit bb29e4293b6e60ee721b5be17f9fa9f4989a1981.

This is a speculative revert due to android waterfall bots failing.

BUG=431047
TBR=ojan@chromium.org,sky@chromium.org

Review URL: https://codereview.chromium.org/718573002
2014-11-10 16:28:49 -08:00
Elliot Glaysher
62abe6ed54 Remove aura and make a pure mojo::View version of the aura::Window FocusController.
This patch is only half done, however the main driver (removing aura) is needed by other teams for them to make progress.

Input handling is regressed in this patch; while FocusController is rebuilt to the point where it should theoretically work, all of the details about ui::EventTargeter don't work correctly. There is an empty subclass ViewTargeter which will need to be filled out before

Thankfully, this should only regress people who are using the wm_flow demo, and this should unblock the android guys who don't have aura support on their platform.

BUG=431047
R=eseidel@chromium.org, sky@chromium.org

Review URL: https://codereview.chromium.org/698543005
2014-11-10 15:42:36 -08:00
Adam Barth
f860dc6a44 Move exports from Document to Module
This CL moves the |exports| from Document to the new |Module| interface,
matching the spec. Also, the |module| object available to scripts is now really
an instance of |Module|.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/703593003
2014-11-10 15:34:25 -08:00
Adam Barth
04122dbd21 Add Module and Application interfaces
These interfaces are currently unused by the engine, but they are
constructable.  See apis.md for details.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/697873007
2014-11-10 14:16:56 -08:00
Adam Barth
58030f3a78 Make Sky's test_perf actually test performance
This CL teaches test_perf how to walk the benchmarks directory to find the
benchmarks and how to actually run them. We're still not uploading results to
the server yet, however.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/710133002
2014-11-10 10:30:54 -08:00
Matt Perry
6b138596a4 Remove iframe.sky test. It's timing out on the bots.
TBR=esprehn@chromium.org

Review URL: https://codereview.chromium.org/707283002
2014-11-07 17:25:17 -05:00
Matt Perry
506e8db179 Add iframe.sky test expectations for dump-as-render-tree.
R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/708163002
2014-11-07 17:14:15 -05:00
Matt Perry
130b9c84f0 Initial work on a new <view> element backed by a mojo::View.
This CL introduces an HTMLViewElement which, when inserted into a document,
causes a mojo::View to be created and navigated to the provided URL. No
compositing is done, but the view manager handles the rendering (as I
understand it).

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/708903002
2014-11-07 14:34:07 -05:00
Rafael Weinstein
a5e5c906d0 Make import failures log errors
BUG=
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/711513003
2014-11-06 15:46:42 -08:00
Eric Seidel
2a979ce147 Add back exit(0) until crbug.com/430581 can be resolved.
BUG=430581
TBR=abarth@chromium.org

Review URL: https://codereview.chromium.org/693433005
2014-11-06 12:55:29 -08:00