20087 Commits

Author SHA1 Message Date
Yury Semikhatsky
e599443dc2 Don't send duplicate responses for debugger commands in Sky
This fixes following error in DevTools front-end:
"Protocol Error: the message with wrong id. "
and makes breakpoint persist between debugging sessions.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/746453002
2014-11-20 20:17:18 +03:00
Matt Perry
7f17e0b4b9 Unrevert "Sky: When an iframe element is removed, delete its mojo View."
This reverts commit acec66c735d6a40d3da3e0e9a6ee5f278bdfe043.

Scott thinks he fixed the crash.

BUG=434555
TBR=sky@chromium.org

Review URL: https://codereview.chromium.org/740383002
2014-11-20 11:13:16 -05:00
Rafael Weinstein
1dddb1fc9a Add compile flag for enabling the compostior
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/737793006
2014-11-19 14:34:09 -08:00
Eric Seidel
6edf567bd9 Fix typo in TestExpectations
TBR=ojan@chromium.org

Review URL: https://codereview.chromium.org/741823002
2014-11-19 13:04:33 -08:00
Eric Seidel
55b5bc485d Sort headers
Fix (most) generated includes to have gen/ in their path.

This makes it easier to tell where files exist on disk.

Unfortunately I had to leave the old include path
in engine/BUILD.gn to support all the v8 includes
which were too many to deal with in this patch.

It's a little nasty to have the raw build directory
in our include path, but it produces nicer paths.

R=abarth@chromium.org
2014-11-19 12:33:42 -08:00
Ojan Vafai
df728320bf Change test type of flakiness dashboard uploads to match buildbot step name.
Flakiness dashboard assumed each buildbot step corresponds to one
test suite. So, it assumes the test type matches the buildbot
step name. This fix is somewhat hacky in that we won't be
able to make other test suites in mojob test upload to the
flakiness dashboard, but that's technical debt we already have
from smashing multiple test suites into one buildbot step.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/725993003
2014-11-19 12:26:53 -08:00
Matt Perry
2a60db84ea Revert "Sky: When an iframe element is removed, delete its mojo View."
This reverts commit 45991a3752e6a6298901eba36e7bf4cdec4d263c.

It was causing flaky crashes on the bots.

TBR=esprehn@chromium.org
BUG=434555

Review URL: https://codereview.chromium.org/740773002
2014-11-19 15:13:28 -05:00
Eric Seidel
450f56bafa Mark page-get-resource-tree as flaky
At least until we can get results from the bot
to understand why it's failing there.

BUG=434822
TBR=ojan@chromium.org

Review URL: https://codereview.chromium.org/739293002
2014-11-19 12:12:25 -08:00
Eric Seidel
b2f116033a 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
fef9b7b0fb 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
13d46ddaca 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
65219c7d65 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
Yury Semikhatsky
fb1fed5d29 Fix debugger crash in Sky
This is actually a backport of the following Blink change https://src.chromium.org/viewvc/blink?view=rev&revision=185426. New scope types introduced by ES6 features are not yes supported by DevTools and should just be ignored by the debugger. ScriptScope that caused troubles in this particular case was supported in V8 debugger quite recently (https://codereview.chromium.org/726643002).

This fixes following crash on pause in Sky:
#0  0x00007f8a39cffe1b in blink::TypeBuilder::Debugger::Scope::Type::assertCorrectValue (value=0xd98ce760450) at gen/sky/core/InspectorTypeBuilder.cpp:596
#1  0x00007f8a39d00072 in blink::TypeBuilder::Debugger::Scope::assertCorrectValue (value=0xd98ce658898) at gen/sky/core/InspectorTypeBuilder.cpp:610
#2  0x00007f8a39d033c5 in blink::TypeBuilder::StructItemTraits::assertCorrectValue<blink::TypeBuilder::Debugger::Scope> (value=0xd98ce658898) at gen/sky/core/InspectorTypeBuilder.h:160
#3  0x00007f8a39d02f71 in blink::TypeBuilder::Array<blink::TypeBuilder::Debugger::Scope>::assertCorrectValue (value=0xd98ce60af00) at gen/sky/core/InspectorTypeBuilder.h:139
#4  0x00007f8a39cffaaf in blink::TypeBuilder::Debugger::CallFrame::assertCorrectValue (value=0xd98ce658420) at gen/sky/core/InspectorTypeBuilder.cpp:569
#5  0x00007f8a3a753435 in blink::TypeBuilder::StructItemTraits::assertCorrectValue<blink::TypeBuilder::Debugger::CallFrame> (value=0xd98ce658420) at gen/sky/core/InspectorTypeBuilder.h:160
#6  0x00007f8a3a753371 in blink::TypeBuilder::Array<blink::TypeBuilder::Debugger::CallFrame>::assertCorrectValue (value=0xd98ce60af50) at gen/sky/core/InspectorTypeBuilder.h:139
#7  0x00007f8a3a752fa6 in blink::TypeBuilder::Array<blink::TypeBuilder::Debugger::CallFrame>::runtimeCast (value=...) at gen/sky/core/InspectorTypeBuilder.h:121
#8  0x00007f8a3a751e8c in blink::InjectedScript::wrapCallFrames (this=0x7f8a5560d988, callFrames=..., asyncOrdinal=0) at ../../sky/engine/core/inspector/InjectedScript.cpp:261
#9  0x00007f8a3a765350 in blink::InspectorDebuggerAgent::currentCallFrames (this=0xd98ce689410) at ../../sky/engine/core/inspector/InspectorDebuggerAgent.cpp:1149
#10 0x00007f8a3a76ae84 in blink::InspectorDebuggerAgent::didPause (this=0xd98ce689410, scriptState=0xd98ce670170, callFrames=..., exception=..., hitBreakpoints=...) at ../../sky/engine/core/inspector/InspectorDebuggerAgent.cpp:1354
#11 0x00007f8a3a76b0b7 in non-virtual thunk to blink::InspectorDebuggerAgent::didPause(blink::ScriptState*, blink::ScriptValue const&, blink::ScriptValue const&, WTF::Vector<WTF::String, 0ul, WTF::DefaultAllocator> const&) ()
    at ../../sky/engine/core/inspector/InspectorDebuggerAgent.cpp:1368
#12 0x00007f8a399dae78 in blink::ScriptDebugServer::handleProgramBreak (this=0x7f8a441c5070, pausedScriptState=0xd98ce670170, executionState=..., exception=..., hitBreakpointNumbers=...) at ../../sky/engine/bindings/core/v8/ScriptDebugServer.cpp:449
#13 0x00007f8a399dbaa8 in blink::ScriptDebugServer::handleV8DebugEvent (this=0x7f8a441c5070, eventDetails=...) at ../../sky/engine/bindings/core/v8/ScriptDebugServer.cpp:519
#14 0x00007f8a399db064 in blink::ScriptDebugServer::v8DebugEventCallback (eventDetails=...) at ../../sky/engine/bindings/core/v8/ScriptDebugServer.cpp:470
#15 0x00007f8a3937bc93 in v8::internal::Debug::CallEventCallback (this=0x7f8a44015510, event=v8::Break, exec_state=..., event_data=..., client_data=0x0) at ../../v8/src/debug.cc:2826
#16 0x00007f8a3937a5af in v8::internal::Debug::ProcessDebugEvent (this=0x7f8a44015510, event=v8::Break, event_data=..., auto_continue=false) at ../../v8/src/debug.cc:2793
#17 0x00007f8a39375589 in v8::internal::Debug::OnDebugBreak (this=0x7f8a44015510, break_points_hit=..., auto_continue=false) at ../../v8/src/debug.cc:2657
#18 0x00007f8a39374132 in v8::internal::Debug::Break (this=0x7f8a44015510, args=..., frame=0x7f8a5560e958) at ../../v8/src/debug.cc:939
#19 0x00007f8a393756d0 in v8::internal::__RT_impl_Debug_Break (args=..., isolate=0x7f8a44007380) at ../../v8/src/debug.cc:982
#20 0x00007f8a3937562e in v8::internal::Debug_Break (args_length=0, args_object=0x7f8a5560eb80, isolate=0x7f8a44007380) at ../../v8/src/debug.cc:979

BUG=None
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/743673002
2014-11-19 19:53:20 +03:00
Yury Semikhatsky
09b83601b5 Make debugger stepping work in Sky
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/738093002
2014-11-19 19:52:40 +03:00
Elliott Sprehn
0aa29129ab Give release builds more time.
Lets see if this removes the flake on the bots seen in sky tests. In
local testing it looks like sky_server's CherryPy becomes overloaded and
then the requests take a very long time to complete which makes the tests
timeout. I increased the timeout locally and it made the tests start
passing consistently when using high --repeat values.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/741603002
2014-11-18 18:03:36 -08:00
Eric Seidel
c04c091978 Make breakpoints not crash sky
They still don't work, but at least they don't crash.

TBR=abarth@chromium.org

Review URL: https://codereview.chromium.org/742583004
2014-11-18 17:39:21 -08:00
Adam Barth
4ad4c66eba 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
Ojan Vafai
82ddd6096e Get rid of continuations.
This is all dead code now that inlines can't contain
blocks.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/734813004
2014-11-18 16:56:44 -08:00
James Robinson
785c29ed77 Update from https://crrev.com/304715
Includes patches to sky/viewer/cc/ and ui/compositor/ for the following:

cc: Toggle LCD text at raster time instead of record time.
https://codereview.chromium.org/684543006
https://crrev.com/304623

and

Make Keyframe use TimeTicks/TimeDelta to represent time instead of double.
https://codereview.chromium.org/719453007
https://crrev.com/304612

Review URL: https://codereview.chromium.org/737943002
2014-11-18 16:50:38 -08:00
Elliott Sprehn
b9aaf7d8e2 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
James Robinson
b77b562463 Use WeakBindingSet to manage inspector connections
The sky inspector service wants to implement a 1:N broadcast interface with whichever
frontends want to connect. This manages the pipes using a WeakBindingSet, which is a set of
bindings owned by the pipe combined with a list of weak pointers to those bindings allowing
sending messages to all connected clients without having to explicitly keep track of
which clients are connected at a particular point in time.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/711413005
2014-11-18 16:20:10 -08:00
Elliott Sprehn
3eb9946952 Remove lots of things from RenderObject
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/735193002
2014-11-18 16:06:22 -08:00
Eric Seidel
0ca1069cd4 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
593c8f8de3 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
Hixie
39fb57b20b Specs: Make </> not pop the document itself off the stack, that would be crazy town
Review URL: https://codereview.chromium.org/723223003
2014-11-18 13:47:52 -08:00
Hixie
a580bd2a5c Specs: Make </> automatically close the last open tag, so you don't have to repeat yourself all the time
Review URL: https://codereview.chromium.org/733313003
2014-11-18 13:32:48 -08:00
Hixie
b759e21e94 Specs: Provide a debug-mode-only API to expose the Module objects imported by a Module, for use by the inspector
Review URL: https://codereview.chromium.org/743503002
2014-11-18 12:25:59 -08:00
Eric Seidel
a511ef074a 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
Elliott Sprehn
4d83953263 Teach HTMLImageElement that it doesn't need ::attach.
Instead of using a custom ::attach to do post insertion work
when assigning the image resource to the RenderImage, we should
just fix the logic inside RenderImage to be able to handle
not being in the tree yet when the resource is first set.

Soon attach will not be virtual anymore.

I also made RenderImage final and most methods private as there
are no longer subclasses.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/732163004
2014-11-18 11:08:46 -08:00
Matt Perry
14ec13d9c0 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
Benjamin Lerman
40f1c26a7d Fix android build.
TBR=ojan@chromium.org

Review URL: https://codereview.chromium.org/739573003
2014-11-18 16:10:52 +01:00
Elliott Sprehn
6474df3436 Move Element::attach recursion to the end.
The animation style change logic only needs to be after
the RenderTreeBuilder, not after attaching all descendants.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/733283002
2014-11-17 19:01:18 -08:00
Ojan Vafai
7a37fa8c09 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
26f6f9d03b 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
Elliott Sprehn
91a8d5c929 Remove OILPAN from ContainerNode.
TBR=abarth@chromium.org

Review URL: https://codereview.chromium.org/738583002
2014-11-17 15:40:33 -08:00
Adam Barth
99727c2ec4 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
1aed5c4006 Specs: Fix even more markdown errors
Review URL: https://codereview.chromium.org/731863006
2014-11-17 15:00:25 -08:00
Rafael Weinstein
c8a7bc6ea4 Fix bad reference in city-list
TBR=esprehn
BUG=

Review URL: https://codereview.chromium.org/730283002
2014-11-17 14:57:15 -08:00
Hixie
27346abb2c Specs: Fix more markdown errors
Review URL: https://codereview.chromium.org/730293002
2014-11-17 14:55:54 -08:00
Hixie
3d82c09a50 Specs: Fix markdown errors
Review URL: https://codereview.chromium.org/730273002
2014-11-17 14:54:01 -08:00
Matt Perry
d091d0474c 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
Rafael Weinstein
0b758e5227 Remove CSSCompositing
BUG=
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/731863003
2014-11-17 14:34:30 -08:00
Hixie
17bad45153 Specs: lay groundwork for scrolling widget
BUG=

Review URL: https://codereview.chromium.org/734763002
2014-11-17 14:29:10 -08:00
Hixie
940287e32f 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
04ce86298f 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
Elliott Sprehn
a0abae6ce1 Remove parserRemoveChild.
This was for the adoption agency which we don't have anymore.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/734063005
2014-11-17 13:48:49 -08:00
Hixie
c85598091b Docs: duplicate ID in example
Review URL: https://codereview.chromium.org/735533002
2014-11-17 13:41:41 -08:00
Ojan Vafai
e0de9cbe42 Add the ability to upload sky_tests to the flakiness dashboard.
Modify mojob.py to plumb through the arguments needed to upload
sky tests to the flakiness dashboard. A followup change will
need to modify the buildbot side to pass these arguments
to mojob.py.

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

Review URL: https://codereview.chromium.org/726313007
2014-11-17 13:14:38 -08:00
Elliott Sprehn
0a474a4c0b Remove parserInsertBefore.
This code was for the foster parenting algorithm.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/729713003
2014-11-17 13:10:12 -08:00
Hixie
93cca4aed1 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