552 Commits

Author SHA1 Message Date
Ojan Vafai
405dedb984 Remove all but one of the PaintLayerFlags.
Only PaintLayerPaintingOverlayScrollbars is actually ever set
to a different value in different codepaths.

-PaintLayerHaveTransparency can just be replaced with
isTransparent() calls.
-PaintLayerPaintingCompositingScrollingPhase is unused.
-PaintLayerPaintingCompositingAllPhases is always set,
which means that the other three compositing ones are
also always set.

The third bullet more clearly falls out when you see that
the only caller of paintLayerContents is
paintLayerContentsAndReflection, which sets
PaintLayerPaintingCompositingAllPhases on the paint flags.
Get rid of paintLayerContentsAndReflection since we no
longer have reflections.

The rest of the changes are all just propagating the now
always false or true booleans in paintLayerContents.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/778883002
2014-12-04 12:12:05 -08:00
Hixie
260c29f783 Specs: revamp how 'primary' touches are handled, to support multiple simultaneous scroll surfaces being scrolled
Review URL: https://codereview.chromium.org/775403002
2014-12-04 11:39:39 -08:00
Hixie
29674cc510 Specs: some slight updates for styluses
Review URL: https://codereview.chromium.org/771603004
2014-12-04 10:51:29 -08:00
Ojan Vafai
6e6e9181de Remove PaintLayerPaintingOverflowContents.
It was added for compositing overflow:scroll, which we don't do.
This also means that only the RespectOverflowClip enum value is
used. And PaintingClipRectsIgnoringOverflowClip is unused.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/778753002
2014-12-03 19:09:56 -08:00
James Robinson
09de28ef8c Run gn format on all BUILD.gn files (gn version 306668)
Generated by running the following:
for x in `git ls-files | grep BUILD.gn`; do gn format --in-place $x; done

BUG=348474
R=viettrungluu@chromium.org

Review URL: https://codereview.chromium.org/773283006
2014-12-03 17:39:48 -08:00
James Robinson
f6527512b0 Simplify the thunk targets since we don't support apps as components
Since we don't support using the component build to produce mojo apps,
we can simplify the build targets in a few ways:

*) every mojo_native_application must depend on the c system thunks,
so just make that part of the template instead of requiring the dep
*) there's no such thing as depending on gles2 headers from a component,
so delete the forwarding group.

Most targets that want to use the gles2 headers in a mojo context
want to depend on an implementation through the thunks, so
//mojo/public/c/gles2 does just that. A smaller number of targets (such
as the implementation of the thunks) want to just depend on the headers
but not an impl, so they can depend on //mojo/public/c/gles2:headers.
The //mojo/public/gles target isn't that useful since the only thing we
expose is a set of C entry points.

We can probably also simplify the c system targets, but that's trickier
due to more extensive use from the chromium side.

BUG=438701
R=viettrungluu@chromium.org

Review URL: https://codereview.chromium.org/780733002
2014-12-03 16:25:09 -08:00
Elliott Sprehn
1771ec30ea Remove SchemeRegistry and WebSecurityPolicy.
Mojo handles the security of our network layer, so we don't need
SchemeRegistry, and WebSecurityPolicy was just a wrapper around it.

R=eseidel@google.com

Review URL: https://codereview.chromium.org/758233004
2014-12-03 16:24:36 -08:00
Elliott Sprehn
e929430811 Remove CSSOM mutability in StyleRule.
The StyleRule classes supported copy() operations and mutable
property sets so that we could do copy-on-write and mutate them
using the CSSOM. Sky doesn't have a CSSOM like this though,
so we can remove all this code and make the StyleRule classes
effectively immutable after construction (the parser does mutate some
rules though).

I also removed some other dead code in the StyleRule hierarchy,
like some left over mutation methods that the CSSOM used to use.

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

Review URL: https://codereview.chromium.org/758573005
2014-12-03 15:54:31 -08:00
Eric Seidel
c14361a751 Remove Isolated Worlds from Sky
These were a feature for allowing multiple
scripting contexts to access the same global
state without leaking wrappers between them.
For example, if the inspector wanted to
modify window.Array.dangerousFunction = ...
it wouldn't want the author's content to have
access to that.

This feature is not part of Sky's security model
and thus this is just dead code.

I tried to remove worlds all together, but there
is something special about how we use a
"fake" world (which is neither main nor isolated)
for GC, regexp and testing.

R=rafaelw@chromium.org, abarth@chromium.org
BUG=

Review URL: https://codereview.chromium.org/776143003
2014-12-03 15:51:09 -08:00
Elliott Sprehn
c229da3e07 Merge StyleSheet into CSSStyleSheet.
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/778743003
2014-12-03 14:24:37 -08:00
Adam Barth
45e8c0dc64 Update HACKING.md 2014-12-03 13:57:44 -08:00
James Robinson
621cae6f2d Update from https://crrev.com/306655
Includes updates to ui/ and mojo/services for cc and gpu changes and
a minor update to a unit test in sky/ for skia interface changes.

Review URL: https://codereview.chromium.org/761903003
2014-12-03 13:38:42 -08:00
Elliott Sprehn
d8eea65cb8 Remove TouchAdjustment.
TouchAdjustment adjusts the hit test rects to nearby elements so
that when touch targets are too small they can still be hit by users. Instead
applications should just make their touch targets big enough, and if they
need adjustment it should be implemented at the framework level.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/774053003
2014-12-03 10:51:25 -08:00
Elliott Sprehn
6c94c18612 Remove the CSSOM.
This leaves CSSValue, but removes everything else.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/780483002
2014-12-03 10:50:02 -08:00
Ojan Vafai
e719d6ea2d Remove PaintLayerAppliedTransform.
This was for RenderReplica, which we no longer have.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/772333002
2014-12-03 09:47:41 -08:00
Yury Semikhatsky
094b491c58 Remove ScriptPreprocessor
It is unused in Sky. I'm going to remove it in Blink too.

BUG=None
TBR=eseidel

Review URL: https://codereview.chromium.org/754463004
2014-12-03 18:45:33 +03:00
Elliott Sprehn
1ace39304c Remove code to collect rules when matching.
We should come up with a better way to implement this feature for the
inspector, the current implementation uses CSSOM wrappers and is n^2
over the number of rules in the page.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/772363002
2014-12-02 23:10:58 -08:00
Elliott Sprehn
9c9b7a9603 Remove ded code from EditingStyle.
Also remove related dead code.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/780443002
2014-12-02 21:51:40 -08:00
Elliott Sprehn
3b60d37ad1 Always Reconstruct when stylesheets change.
In preparation of simplifying how we collect and process sheets now
that we don't support descendant, sibling and tree boundary crossing
rules we should switch to always going down the Reconstruct path.

This might be somewhat slower to start, but because our rules are so
much simpler we should be able to rebuild the StyleEngine to do
something simpler and faster.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/774953002
2014-12-02 20:33:58 -08:00
Ojan Vafai
96648748fb Remove PaintLayerPaintingChildClippingMaskPhase.
It's never set. It was added in
7176977ba5%5E%21/#F21

The test cases from that patch seem to pass.
Included one in this patch.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/772193004
2014-12-02 20:12:23 -08:00
Elliott Sprehn
cc97b4ed56 Remove dead code from StyleEngine.
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/775783002
2014-12-02 18:35:42 -08:00
Eric Seidel
682cccdd91 Make v8 inspector not crash
It was attempting to load InjectedScript, etc.
with the wrong path and hitting a CHECK().
I moved InjectedScript and DebugScript into
the v8_inspector directory and fixed their loading.

I also broke the dependency from v8_inspector
onto engine/platform by moving the horrible
Platform::loadResource hack out of PlatformImpl
into a new file just for v8_inspector.

In this process I also found some (broken!)
code for showing the broken image icon which
if we ever hit would just have crashed, so
I removed that code as well.

BUG=435243
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/776743002
2014-12-02 16:47:17 -08:00
Rafael Weinstein
f703b72f96 Fix Animations, Remove Compostior Animations.
This patch (re)hooks up animations so they start and removes the infrastructure required by blink to synchronize the compositor and main threads.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/772673002
2014-12-02 14:37:55 -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
Elliott Sprehn
061c71d806 Mostly merge HTMLElement into Element.
R=eseidel@chromium.org, ojan@chromium.org

Review URL: https://codereview.chromium.org/772133003
2014-12-02 12:00:21 -08:00
Elliott Sprehn
b6f336189c Remove scrollIntoView* API.
This is a framework feature.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/774793002
2014-12-02 11:32:52 -08:00
Elliott Sprehn
51b98aa289 Remove more Node API.
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/772743004
2014-12-02 11:26:42 -08:00
Elliott Sprehn
14fffc9cae Delete a bunch of rich text editing code.
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/767623004
2014-12-02 11:24:46 -08:00
James Robinson
685a549229 Move window_manager service implementation to //services
R=erg@chromium.org

Review URL: https://codereview.chromium.org/765753003
2014-12-02 10:52:00 -08:00
Ojan Vafai
83dabbcda3 Remove compositing states from DocumentLifeCycle.
We not longer have compositing, so these states are gone.
This was causing asserts to hit because we'd go from
PaintInvalidationClean to InPaintInvalidation, which is
now a valid transition if a new frame is pumped without
style or layout being dirtied.

Unfortunately, we can't test this until we fix test_sky
to actually pump fake frames.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/755843003
2014-12-02 10:13:07 -08:00
Elliott Sprehn
dea3b116e6 Remove dead markup serialization code.
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/771933002
2014-12-02 10:12:21 -08:00
Elliott Sprehn
f1a6cd9799 Use a JS markup serializer.
This makes MarkupAccumulator and all related code into dead code.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/771093002
2014-12-02 10:09:35 -08:00
Elliott Sprehn
1f1d90bc70 Remove ScopedStyleResolver::treeScopeFor.
We only support inline stylesheets or <style scoped> so we can remove
this helper.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/767013004
2014-12-02 10:06:48 -08:00
Elliott Sprehn
697e47cf3b Add tests for changing classList.
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/776493002
2014-12-02 10:05:28 -08:00
Elliott Sprehn
a55ff6d55a Remove lots of code from the WebWidget/WebView/WebFrame layer.
R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/770223002
2014-12-02 01:03:37 -08:00
Adam Barth
e01846b723 Use source_set rather than static_library
According to jamesr, static_library is almost never what we want because we
just configure static libraries to be thin archives anyway.

R=jamesr@chromium.org

Review URL: https://codereview.chromium.org/766053007
2014-12-01 23:51:06 -08:00
Elliott Sprehn
65c353a334 Remove parent() concept from ScopedStyleResolver.
This isn't needed, we don't have any tree boundary crossing rules.

R=ojan@chromium.org

Review URL: https://codereview.chromium.org/767273003
2014-12-01 20:04:48 -08:00
Ian Hickson
2c5ae40253 Specs: Maybe markdown wants four spaces? (I thought it was two.) 2014-12-01 17:14:21 -08:00
Hixie
fc7ee72b84 Specs: markdown cleanup harder
Review URL: https://codereview.chromium.org/730693007
2014-12-01 17:12:35 -08:00
Hixie
6ce21d7023 Specs: markdown cleanup
Review URL: https://codereview.chromium.org/772713002
2014-12-01 17:10:48 -08:00
Hixie
45e8700125 Specs: flesh out the UI events (touches, mice, stylus...)
Review URL: https://codereview.chromium.org/771853002
2014-12-01 17:08:11 -08:00
Hixie
d50ab23f05 Specs: missing frames in debug mode
Review URL: https://codereview.chromium.org/773683002
2014-12-01 17:06:32 -08:00
James Robinson
84690ebeab Add tracing service and make the shell+sky_viewer+services talk to it
This adds a tracing service that can aggregate tracing data from
multiple sources and write a json file out to disk that trace-viewer can
understand. This also teaches the shell, sky_viewer, and various other
services how to register themselves with the tracing service and provide
tracing data on demand. Finally, this teaches the skydb prompt to tell
the tracing service to start/stop tracing when the 'trace' command is
issued.

The tracing service exposes two APIs, a collector interface and a
coordinator interface. The collector interface allows different entities
to register themselves as being capable of producing tracing data. The
coordinator interface allows asking the service to collect data from
all registered sources and flushing the collected data to disk.

The service keeps track of all open connections to registered sources
and broadcasts a request for data whenever the coordinator's Start
method is called, then aggregates all data send back into a single
trace file. In this patch, the tracing service simply gives all sources
1 second to return data then flushes to disk. Ideally it would keep
track of how many requests it sent out and give each source a certain
amount of time to respond but this is simple and works for most cases.

The tracing service can talk to any source that is capable of producing
data that the trace-viewer can handle, which is a broad set, but in
practice many programs will want to use //base/debug's tracing to
produce trace data. This adds code at //mojo/common:tracing_impl that
registers a collector hooked up to //base/debug's tracing system. This
can be dropped in to the mojo::ApplicationDelegate::Initialize()
implementation for most services and applications to easily enable
base tracing. Programs that don't use //base, or that want to register
additional data sources that can talk to trace viewer (perhaps providing
data that's more easily available from another thread, say) may want
to create additional connections to the tracing service.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/769963004
2014-12-01 16:31:03 -08:00
Ojan Vafai
ec0519a888 Remove some dead paint flags.
These are all dead code.

R=rafaelw@chromium.org

Review URL: https://codereview.chromium.org/766303002
2014-12-01 16:08:07 -08:00
Rafael Weinstein
b1b86e4656 Remove webkit-print-color-adjust
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/762473003
2014-12-01 12:01:31 -08:00
Rafael Weinstein
12a09d9d9c Remove uses of PaintBehaviorFlattenCompositingLayers
R=ojan@chromium.org

Review URL: https://codereview.chromium.org/766943003
2014-11-29 20:24:38 -08:00
Ojan Vafai
e002477491 Get rid of PaintBehaviorSelectionOnly.
It's never set.

R=eseidel@chromium.org

Review URL: https://codereview.chromium.org/772473004
2014-12-01 11:31:53 -08:00
Ojan Vafai
6dac39b521 Remove PaintPhaseCollapsedTableBorders.
We don't have tables.

R=esprehn@chromium.org

Review URL: https://codereview.chromium.org/747383004
2014-12-01 10:57:29 -08:00