| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The method sends the render passes it is given to the parent compositor via
the output surface. It should include a valid frame metadata with it.
Tests:
DelegatingRendererTestDraw.runSingleThread
DelegatingRendererTestDraw.runMultiThread
DelegatingRendererTestResources.runSingleThread
DelegatingRendererTestResources.runMultiThread
R=piman
BUG=123444
Review URL: https://codereview.chromium.org/11777025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177073 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> cc: Implement DelegatingRender::drawFrame() method.
>
> The method sends the render passes it is given to the parent compositor via
> the output surface. It should include a valid frame metadata with it.
>
> Tests:
> DelegatingRendererTestDraw.runSingleThread
> DelegatingRendererTestDraw.runMultiThread
> DelegatingRendererTestResources.runSingleThread
> DelegatingRendererTestResources.runMultiThread
>
> R=piman
> BUG=123444
>
> Review URL: https://chromiumcodereview.appspot.com/11777025
TBR=danakj@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175694 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The method sends the render passes it is given to the parent compositor via
the output surface. It should include a valid frame metadata with it.
Tests:
DelegatingRendererTestDraw.runSingleThread
DelegatingRendererTestDraw.runMultiThread
DelegatingRendererTestResources.runSingleThread
DelegatingRendererTestResources.runMultiThread
R=piman
BUG=123444
Review URL: https://chromiumcodereview.appspot.com/11777025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175690 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've replaced the create() and constructor on each class with a SetNew() method:
void SetNew(const SharedQuadState* shared_quad_state,
gfx::Rect rect,
...);
This method sets everything in the base class, based on the subclass'
interpretation of the minimal parameters given to it. This is used when
creating a new quad of this type - hence the name. The "..." represents
all the quad-type-specific arguments.
I've also added a new SetAll() method, that takes all of the data held by this
quad type, and simply passes on the appropriate things to the super class:
void SetAll(const SharedQuadState* shared_quad_state,
gfx::Rect rect,
gfx::Rect opaque_rect,
gfx::Rect visible_rect,
bool needs_blending,
...);
This method is used for deserializing, or other cases where you have all the
data for the quad well defined, and want to set every field at once. The
"..." represents all the quad-type-specific arguments.
Added tests for SetAll() in cc_unittests:DrawQuadTest.*
TBR=aelias
BUG=152337
Review URL: https://chromiumcodereview.appspot.com/11411050
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168903 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, TileDrawQuad assumed that texels were 1:1 with geometry, so it only
needed an offset into the texture to calculate the UVs. For impl-side painting
where multiple contents scales might be in play, a given texture rect isn't going
to be 1:1 with geometry rects and also will not be necessarily integer aligned.
Also, some things (like edge antialiasing) still need to know the texture size
so that it can do half-texel offsets, so this new texture rect needs to stay in
"texel space" rather than 0-1 "uv space".
R=danakj@chromium.org
BUG=155209
Review URL: https://chromiumcodereview.appspot.com/11348109
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168723 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We add a SetAll() method that sets everything to keep the compile-time guard
that verifies everything gets set from all appropriate callsites. This replaces
the constructor which now takes no arguments at all.
We will replace the constructor with an overriding SetAll() for
each subclass of DrawQuads and make them into structs as well.
Covered by existing tests.
TBR=aelias
BUG=152337
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/11418047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168460 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We leave the methods as methods instead of structifying it in this CL. But the
opaqueRect() helper method on DrawQuad is moved out to the call sites.
DrawQuad::needsBlending() is moved to DrawQuad::ShouldDrawWithBlending()
which combines together various states.
DrawQuad::opaqueRect() is computed in QuadCuller, and is used more cleverly
in ShouldDrawWithBlending().
TBR=aelias
BUG=152337
Review URL: https://chromiumcodereview.appspot.com/11420044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168423 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now we will use the opaqueRect (already present on DrawQuad) to tell when things
are opaque or not.
Each Quad constructor that can be opaque take an opaqueRect. Generally,
callers set it equal to the quadRect when contentsOpaque(). TiledLayerImpl can
set it to a smaller rect sometimes since it has more knowledge.
This made the scrollbar code a bit nicer for the thumb so that it doesn't need
to set needs_blending anymore, as the thumb can be marked non-opaque.
DebugBorderQuad sets an empty opaqueRect now, so it doesn't need to set
needs_blending.
Covered by existing tests.
BUG=152337
R=enne
Review URL: https://chromiumcodereview.appspot.com/11412044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168387 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Some cleanup in the direction of making DrawQuad a chromified struct.
R=enne
BUG=152337
Review URL: https://codereview.chromium.org/11417035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168301 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=
Review URL: https://chromiumcodereview.appspot.com/11366199
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167479 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
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make sure we have a comment at the end of the namespace for each .cc file and
that there are two spaces between the closing brace and the comment.
R=enne
Review URL: https://chromiumcodereview.appspot.com/11275153
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166005 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This covers layers, layer tree hosts, and related classes. *phew*
I intentionally avoided anything to do with scrolling or page scale. Those
should be changed to be Vectors and need a bit more thought. This change
should be pretty mindless.
It converts to gfx Rect, Size, Vector, and Point classes. No change is
made for FloatPoint3D or FloatQuad yet.
I've added cc/geometry.h as a place for free functions that don't exist
on gfx types yet, and that we should port over in the future.
No change in behaviour; covered by existing tests.
BUG=147395
R=enne
Review URL: https://codereview.chromium.org/11264056
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165434 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed reland of https://chromiumcodereview.appspot.com/11189043/
TBR=jam@chromium.org,jamesr@chromium.org
BUG=155413
Review URL: https://codereview.chromium.org/11231054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163429 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
TBR=jamesr@chromium.org
Review URL: https://codereview.chromium.org/11225022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163196 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We use these geometry types for CCDrawQuad types and in CCRenderPass, and so
we also make use of them in the CCRenderer classes.
A minor number of copies back to cc:: (WebCore) geometry types do occur in
the renderer implementations for now until we migrate the rest of the compositor.
Covered by existing tests.
BUG=152473
R=enne,jamesr
Review URL: https://chromiumcodereview.appspot.com/10984053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163142 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
This reverts commit 184fac5add06d5f4670fa6be4a4d3b39232d51bb.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163059 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=155413
Review URL: https://codereview.chromium.org/11189043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163052 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
cc needs GL enum values. In WebKit, these came from GraphicsContext3D::,
Extensions3D::, Extensions3DChromium and types came from GraphicsTypes3D.
In chromium, we juse use the GL headers for this.
BUG=144577
Review URL: https://chromiumcodereview.appspot.com/11111005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162839 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
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11145033
TBR=tfarina@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162286 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11145033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162284 0039d316-1c4b-4281-b951-d872f2087c98
|
|
BUG=155413
Review URL: https://codereview.chromium.org/11122003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161671 0039d316-1c4b-4281-b951-d872f2087c98
|