| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
+ Some of the necessary changes to the renderer for software compositing.
BUG=124671, 161008
Review URL: https://chromiumcodereview.appspot.com/12379055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186310 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mailbox is safer to IPC than coaxing it into a string, because otherwise we need
to validate the size when coming from untrusted sources.
This is to enable passing Mailbox through IPC without having to depend on cc.
Among others I will need it to move Pepper to mailboxes, and pepper can't depend
on cc.
BUG=164095
Review URL: https://chromiumcodereview.appspot.com/12378053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186006 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
duplicated ones.
Review URL: https://codereview.chromium.org/12041062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182345 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a step toward making third_party/khronos/gl2.h and gl2ext.h
have as few modifications as possible.
BUG=none
Review URL: https://chromiumcodereview.appspot.com/11782020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175858 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes various include issues in cc/ and webkit/compositor_bindings/ to
normalize this code to chromium standards and make webkit/compositor_bindings/
more easily usable. Changes include:
1.) Removing dead stub / test headers and include paths
2.) Removing complex rules designed to make the incantation '#include <public/WebBlah.h>' work
since all chromium code can do '#include "third_party/WebKit/Source/Platform/chromium/public/WebBlah.h"'
3.) Expand out WebKit API includes and sort correctly
BUG=144577
Review URL: https://codereview.chromium.org/11615020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173799 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bindings.
Instead of having the scrollbar layer talk directly to the
WebScrollbarThemePainter, we make an abstract interface in cc/ that it can talk
to. In the compositor bindings, we implement this class, and forward the
function calls made into it over to the WebKit implementation.
No change in behaviour, no new tests. This is a prerequisite for
https://codereview.chromium.org/11464041/.
BUG=123444
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/11609002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173687 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This moves:
- WebKit::WebCompositorOutputSurface to cc::OutputSurface
- WebKit::WebCompositorOutputSurfaceClient to cc::OutputSurfaceClient
- Webkit::WebCompositorSoftwareOutputDevice to cc::SoftwareOutputDevice
They become new files in cc/ so they are chromified style. This affects
the various call-sites. This allows us to pass cc::CompositorFrame
directly, without any need for WebCompositorFrame.
BUG=146080
Depends on: https://bugs.webkit.org/show_bug.cgi?id=103967
Review URL: https://codereview.chromium.org/11348371
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171847 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=171544
Review URL: https://chromiumcodereview.appspot.com/11412289
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171735 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Basic pixel tests for cc
>
> BUG=
>
>
> Review URL: https://chromiumcodereview.appspot.com/11412289
TBR=jamesr@chromium.org
Review URL: https://codereview.chromium.org/11470003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171557 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=
Review URL: https://chromiumcodereview.appspot.com/11412289
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171544 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is far too confusing to deal with OutputSurface code when half the time it is
called a GraphicsContext incorrectly. Cleaning this up so I can think about the
code properly as I upstream the Ubercomp CL.
R=jamesr,piman
BUG=146080
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=171403
Review URL: https://codereview.chromium.org/11450019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171410 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cc_unittests is failing. Looks like something conflicted with this.
> cc: Finish the rename from cc::GraphicsContext to cc::OutputSurface
>
> It is far too confusing to deal with OutputSurface code when half the time it is
> called a GraphicsContext in correctly. Cleaning this up so I can think about the
> code properly as I upstream the Ubercomp CL.
>
> NOTRY=true
> R=jamesr,piman
> BUG=146080
>
>
> Review URL: https://chromiumcodereview.appspot.com/11450019
TBR=danakj@chromium.org
Review URL: https://codereview.chromium.org/11439026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171406 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is far too confusing to deal with OutputSurface code when half the time it is
called a GraphicsContext in correctly. Cleaning this up so I can think about the
code properly as I upstream the Ubercomp CL.
NOTRY=true
R=jamesr,piman
BUG=146080
Review URL: https://chromiumcodereview.appspot.com/11450019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171403 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tests:
content_unittests:CCMessagesTest.AllQuads
content_unittests:CCMessagesTest.Resources
BUG=152337
R=piman
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/11308306
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170853 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Ding, dong...
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11410021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167071 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WebCore::Region.
We create a class in cc/ called Region which provides a gfx:: type-friendly API
to SkRegion, and allows for easily swapping out region implementations in the
future if required.
During the process, I removed tests dependency on a "size()" method on Region,
that used to give the number of rects in the Region's internal representation.
Instead, we always create a Region in the tests from our expected rects, and
compare the Regions directly. We use ToString() comparisons to get useful
failure outputs, similar to the unit tests of other geometry types in ui/gfx.
This uncovered a WTF::Vector holdout in the OcclusionTracker class, which is
converted to a std::vector.
Covered by existing tests; no change in behaviour.
R=enne
BUG=147395
Review URL: https://chromiumcodereview.appspot.com/11366094
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166617 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
method from Skia.
This method exists in Skia, but is not publicly consumable/linkable with a
component build. Skia will expose this (or a similar) method through a proper
public API, and we should use it. But in the meantime, we make a copy of the
method in timing_function.cc, and use it there in place of WebCore's UnitBezier
class.
Tests:
cc_unittests:TimingFunctionTest.CubicBezierTimingFunction
This test compares the output of the timing function against baseline values
recorded with WebCore's UnitBezier class. If new methods are able to come
closer to those values, we should decrease the epsilon used in the test
accordingly.
R=jamesr
BUG=147395
Review URL: https://chromiumcodereview.appspot.com/11359077
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166362 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compositor.
This change removes all IntPoint/FloatRect/IntSize/etc from the compositor.
There remains an indirect dependency on these types through the
WebCore::Region class, which we wrap but need to replace. However, the wrapper
there hides the WebCore types inside it, so there are now no references to the
types from anywhere else in the compositor.
I went back and forth on how to deal with scroll "positions". The name suggested
that they should be Points, and that the deltas should be Vectors. However this
lent itself to super awkward math at times. In the end, it was much cleaner to
make all scroll "positions" into scroll "offsets" and represent everything as
Vectors.
Covered by existing tests; no change in behaviour.
R=enne
BUG=147395
Relanding: https://codereview.chromium.org/11367080/
Review URL: https://codereview.chromium.org/11366089
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166027 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
the compositor."
This reverts commit a76cb24ab8de742f70b83f6c045c2c23545eaae7.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165949 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
compositor.
This change removes all IntPoint/FloatRect/IntSize/etc from the compositor.
There remains an indirect dependency on these types through the
WebCore::Region class, which we wrap but need to replace. However, the wrapper
there hides the WebCore types inside it, so there are now no references to the
types from anywhere else in the compositor.
I went back and forth on how to deal with scroll "positions". The name suggested
that they should be Points, and that the deltas should be Vectors. However this
lent itself to super awkward math at times. In the end, it was much cleaner to
make all scroll "positions" into scroll "offsets" and represent everything as
Vectors.
Covered by existing tests; no change in behaviour.
R=enne
BUG=147395
Review URL: https://codereview.chromium.org/11367080
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165947 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is so that we can write the picklers without having to include webcore/wtf.
This also changes the resource transfer functions to avoid copies.
BUG=146080
Review URL: https://chromiumcodereview.appspot.com/11358080
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165847 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
They were also fixed in past revisions, now that cc component landed and the
TillingData landed to, we can remove them.
BUG=147395,154052
TEST=checkdeps.py succeeds.
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11360069
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165805 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This appears to have been fixed in past revisions so we can remove them now.
TEST=run checkdeps.py, it should succeed.
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11367061
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165758 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Those Layout Tests pass with this patch (minus filtering differences):
platform/chromium/virtual/softwarecompositing/geometry/video-fixed-scrolling.html
platform/chromium/virtual/softwarecompositing/geometry/video-opacity-overlay.html
platform/chromium/virtual/softwarecompositing/layers-inside-overflow-scroll.html
platform/chromium/virtual/softwarecompositing/overflow/scroll-ancestor-update.html
platform/chromium/virtual/softwarecompositing/self-painting-layers.html
platform/chromium/virtual/softwarecompositing/reflections/load-video-in-reflection.html
platform/chromium/virtual/softwarecompositing/video-page-visibility.html
platform/chromium/virtual/softwarecompositing/visibility/visibility-simple-video-layer.html
BUG=150016
Review URL: https://chromiumcodereview.appspot.com/11274017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164871 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't compile-guard code and use DCHECK since it can be enabled at runtime. So we guard the DCHECKs that we want to rely on conditionally-compiled code in !NDEBUG compile guards.
This also replaces use of LOG_ERROR("Foo") with LOG(ERROR)<<"Foo";
This was previously discussed and committed as https://codereview.chromium.org/11048044/
using a guard based on LOGGING_IS_OFFICIAL_BUILD, however this was not sufficient since there are build configurations that are official builds but have dchecks compiled.
R=enne
Review URL: https://codereview.chromium.org/11192030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162739 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can just use base/debug/trace_event.h directly. Unfortunately, this produces
several more LOG macro collisions between wtf/Assertions.h and base/logging.h. I
added a config.h stub to cc/stubs/ to undef LOG for all files in cc and removed
the few other overrides we had in place.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11187035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162692 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 162296. (https://chromiumcodereview.appspot.com/11048044)
TBR=danakj@chromium.org
Review URL: https://codereview.chromium.org/11196014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162297 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We can't compile-guard code and use DCHECK since it can be enabled at runtime.
This removes all compile-time guards, and makes use of DCHECK instead of ASSERT. We use DCHECK_IS_ON() to early out and avoid extra work just for DCHECK where possible as well.
This also replaces use of LOG_ERROR("Foo") with LOG(ERROR)<<"Foo";
R=enne,jamesr
Review URL: https://chromiumcodereview.appspot.com/11048044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162296 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Filters are still not implemented.
The following failing Layout Tests are now passing with this patch:
platform/chromium/virtual/softwarecompositing/backface-visibility/backface-visibility-hierarchical-transform.html
platform/chromium/virtual/softwarecompositing/backface-visibility/backface-visibility-image.html
platform/chromium/virtual/softwarecompositing/geometry/abs-position-inside-opacity.html
platform/chromium/virtual/softwarecompositing/geometry/fixed-position.html
platform/chromium/virtual/softwarecompositing/masks/mask-of-clipped-layer.html
platform/chromium/virtual/softwarecompositing/reflections/compositing-change-inside-reflection.html
platform/chromium/virtual/softwarecompositing/reflections/deeply-nested-reflections.html
platform/chromium/virtual/softwarecompositing/reflections/masked-reflection-on-composited.html
platform/chromium/virtual/softwarecompositing/reflections/nested-reflection-on-overflow.html
platform/chromium/virtual/softwarecompositing/reflections/nested-reflection-size-change.html
platform/chromium/virtual/softwarecompositing/reflections/nested-reflection-transformed.html
platform/chromium/virtual/softwarecompositing/reflections/nested-reflection-transformed2.html
platform/chromium/virtual/softwarecompositing/reflections/nested-reflection.html
platform/chromium/virtual/softwarecompositing/reflections/reflection-on-composited.html
platform/chromium/virtual/softwarecompositing/reflections/reflection-ordering.html
platform/chromium/virtual/softwarecompositing/reflections/reflection-positioning.html
platform/chromium/virtual/softwarecompositing/reflections/reflection-positioning2.html
platform/chromium/virtual/softwarecompositing/reflections/remove-add-reflection.html
platform/chromium/virtual/softwarecompositing/reflections/simple-composited-reflections.html
Around 20 more currently disabled Layout Tests fail due to minor antialiasing or alpha precision differences between MesaGL and Skia rendering and should probably be rebased.
BUG=150010
Review URL: https://chromiumcodereview.appspot.com/11091017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161968 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
Review URL: https://codereview.chromium.org/11124007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161670 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Further patches will move switches out of content/switches and into cc.
BUG=none
Review URL: https://chromiumcodereview.appspot.com/11032026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160210 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=152286
Review URL: https://codereview.chromium.org/11044003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159983 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These files no longer are part of WebCore, so it doesn't make any sense to keep
that namespace.
Due to being unable to forward declare typedefs in C++, the stubs files (like
FloatSize) now define cc::FloatSize as being derived from WebCore::FloatSize.
With enough constructors, this lets them be used interchangably in the short
term until those geometry classes become real and not dependent on WebCore
files. This allows (nearly) all the forward declarations and uses of these
types in cc stay as-is with minimal churn.
BUG=none
Review URL: https://codereview.chromium.org/10914268
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156905 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=148610
Review URL: https://chromiumcodereview.appspot.com/10905231
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156410 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libcc depends on several geometry types from WebCore - IntRect, FloatQuad, etc.
We were picking these up by a header copying rule in the webkit_platform target
that copies these headers into the generated build dir, but since there is no
hard dependency link from libcc to webkit_platform this either work or not work
depending on the exact build order on the user's system and was thus very
fragile. This adds explicit forwarding headers which are ugly but at least
will work.
BUG=
Review URL: https://chromiumcodereview.appspot.com/10883076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153631 0039d316-1c4b-4281-b951-d872f2087c98
|
|
bindings in chromium. Everything is guarded behind the off-by-default use_libcc_for_compositor gyp variable. I haven't included the actual code here, but there are scripts to sync. I plan to land + manually sync the code into place until we're ready to flip the gyp switch.
Snapshot from r126652
BUG=
Review URL: https://chromiumcodereview.appspot.com/10828381
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153354 0039d316-1c4b-4281-b951-d872f2087c98
|