32 Commits

Author SHA1 Message Date
Adam Barth
d8d7db82a0 Really remove config.h
This CL generated by |sed -i '/sky\/engine\/config.h/d'| and a manual sweep to
catch some oddballs.

TBR=eseidel@chromium.org

Review URL: https://codereview.chromium.org/1206763002.
2015-06-23 23:15:28 -07:00
Adam Barth
f2d2e80e59 Merge the Sky Engine changes from the SkyDart branch
This CL flips the switch to make Sky use Dart.

TBR=eseidel@chromium.org
BUG=454613

Review URL: https://codereview.chromium.org/922893002
2015-02-12 15:06:03 -08:00
Adam Barth
e962904c7a Remove TRACE_EVENT indirection through blink::Platform
Normal trace events already go directly to base. This CL removes the remaining
trace events that were still indirected through blink::Platform. These were
just the half-finished inspector timeline trace events, which currently aren't
actually hooked up to anything.

This CL also removes the redunant "convertable to trace format" wrappers and
moves their one remaining use over to just using the version in base directly.

R=eseidel@google.com, ojan@chromium.org

Review URL: https://codereview.chromium.org/889823002
2015-01-30 08:47:46 -08:00
Adam Barth
54809a8877 Remove more scrolling code from Sky
None of this code does anything anymore.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/878303002
2015-01-27 15:20:14 -08:00
Eric Seidel
8711bf43a8 Remove heap/Handle usage from v8_inspector
I also removed it from a bunch of core/
as almost all the places its included
it is not actually needed.

BUG=435243
TBR=yurys@chromium.org

Review URL: https://codereview.chromium.org/775803002
2014-12-02 14:29:16 -08:00
Eric Seidel
c2f8ed76bd Remove a couple more core/ header includes from v8_inspector
Removed all uses of Frame in InspectorTraceEvents
in the process, since none of them actually
needed a Frame (since each sky instance only
has one frame).

I've just been burning down the list of core
includes using:
grep "#include" sky/engine/v8_inspector/* -h | sort | uniq | sort | grep core

TBR=yurys@chromium.org
BUG=435243

Review URL: https://codereview.chromium.org/771323002
2014-12-02 13:38:02 -08:00
Eric Seidel
41796985bc Move many of v8_inspector dependencies out of core/
This doesn't fully separate v8_inspector from
core, but it does lay the path.

The next steps to removing v8_inspector is to
remove all the # FIXME: Remove lines in the
deps section of v8_inspector/BUILD.gn.

gn check out/Debug v8_inspector
will tell us if we've successfully removed
all the dependencies.

It's unclear if we want to remove the wtf
dependency, but definitely all of the engine/core
dependencies should be removed and presumably
replaced with abstract interfaces which can be provided
to v8_inspector by its host.

Given the size of this patch (and that it's largely
mechanical) I plan to TBR it.

Most of this was done with tools/git/move_source_file.py

TBR=yurys@chromium.org

Review URL: https://codereview.chromium.org/772563003
2014-12-02 13:00:40 -08:00
Yury Semikhatsky
b22d85f975 Populate scope sections with variable name/values
Now when debugger is paused scope sections are properly populated with corresponding name:value pairs for all variables.

Eventually InjectedScript may become something like a regular Sky module but at the moment I don't see how to do this gracefully given that it is parametrised by InjectedScriptHost binding. So at the moment I just store it in "injectedScript" property on the global object,

BUG=435243
R=abarth@chromium.org

Review URL: https://codereview.chromium.org/766683005
2014-11-27 21:00:06 +03:00
Ojan Vafai
9837d78956 Remove GraphicsLayer family of classes.
Remove all the GraphicsLayer* classes. This includes LinkHighlight
since that feature is built on the old compositing system.

It's all dead code!

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/762993003
2014-11-26 20:21:01 -08:00
Ojan Vafai
7d45831411 Get rid of the remaining uses of GraphicsLayer.
After this patch, GraphicsLayer is only used by GraphicsLayer-related
classes and LinkHighlight. We should be able to just delete all of them
in a followup patch.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/763013002
2014-11-26 18:51:43 -08:00
Eric Seidel
295f920116 Fix sky include guards to match Chromium style
I wrote a script to do this which is attached
to the bug.

TBR=abarth@chromium.org
BUG=435361

Review URL: https://codereview.chromium.org/736373003
2014-11-21 02:48:38 -08:00
Eric Seidel
e0fd75b5ab Make absolute and sort all Sky headers
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
2014-11-20 17:42:05 -08:00
Eric Seidel
5ce2884e26 Audit all of sky's system <> style includes
I wrote a little script to do this.
I'll attach it to the bug in case Blink wants it.

R=abarth@chromium.org
BUG=435361

Review URL: https://codereview.chromium.org/747663002
2014-11-20 15:55:02 -08:00
Eric Seidel
39bf5a7f41 Start moving files from core/inspector into v8_inspector
This was just a test.  I'm about to write a script
to automate this process.  Mostly I just need to
fix tools/git/move_source_file.py to work for blink.

TBR=abarth@chromium.org
BUG=435243

Review URL: https://codereview.chromium.org/745913002
2014-11-20 15:07:19 -08:00
Eric Seidel
e4945302eb Move InspectorBackendMojo out of the blink namespace
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
2014-11-20 14:21:36 -08:00
Eric Seidel
bc10cd4167 Move inspector_backend_mojo.cc to v8_inspector
Also fixed several chromium style errors in the file.

I had to make web depend on v8_inspector for
the time being until v8_inspector can be
weened off of the Page class.

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

Review URL: https://codereview.chromium.org/749523002
2014-11-20 11:30:01 -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
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
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
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
Eric Seidel
9ec75d67ce Use root-relative V8 includes
TBR=abarth@chromium.org

Review URL: https://codereview.chromium.org/726133002
2014-11-14 16:02:21 -08:00
Elliott Sprehn
42d362ff6b Remove tons of OILPAN.
This removes ::trace, traceAfterDispatch and finalizeGarbageCollectedObject.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/723253004
2014-11-13 16:56:13 -08:00
Eric Seidel
97f80336f9 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
Elliott Sprehn
d1e3759806 Remove more oilpan.
I also unraveled lots of transitive deps from Handle.h

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/709203002
2014-11-07 18:11:03 -08:00
Elliott Sprehn
c9e551fda5 Remove more stuff from Widget.
This removes even more APIs from widget. This also removes some methods
that had been broken and made infinitely recursive on FrameView.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/684353002
2014-10-29 15:57:18 -07:00
Eric Seidel
c32433111b Remove almost all of Oilpan
The only things left are all the baseclasses
and macros in heap/Handle.h which are referenced
throughout all of core.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/686783002
2014-10-28 09:36:50 -07:00
Eric Seidel
6b82826198 Remove various Heap* types.
Also removed a bunch of trace() methods which
I touched by accident.  Turns out they're
all very interconnected sadly.

I re-wrote Supplement to not use templates
in an earlier version of this patch
but hit some trouble with vtables
and decided to table that work
for a later time once more of oilpan
has been unwound.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/683703003
2014-10-27 18:19:46 -07:00
Eric Seidel
64b5cb61a1 Remove all oilpan transitional types
I used do-webcore-rename from Blink/WebKit
which is very good at doing this kind
of search-replace.

Also removed toRefPrtNativeArray after
conversion since it previously had two
separate flavors.  Both versions are no longer
used so I've removed the code until we
need one again.

https://www.irccloud.com/pastebin/5C16p5cE
is the diff I used to do-webcore-rename

TBR=abarth@chromium.org
2014-10-27 14:13:01 -07:00
Adam Barth
e8c9ecc556 Use override and final instead of OVERRIDE and FINAL 2014-10-24 15:15:13 -07:00
Eric Seidel
2a4915147e Remove a bunch of dead files found by missing_from_gn
I also fixed several errors in our BUILD.gn files
including bad script dependencies found by
missing_from_gn and gn check.

Still need to figure out how best to handle
:libraries deps being private to :core, etc.

R=abarth@chromium.org

Review URL: https://codereview.chromium.org/678703004
2014-10-24 13:50:21 -07:00
Adam Barth
ae72930937 Open the Sky 2014-10-23 11:17:19 -07:00