| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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=124671
Review URL: https://chromiumcodereview.appspot.com/11363251
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167843 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=160302
Review URL: https://chromiumcodereview.appspot.com/11362235
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167747 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current SkRectToRect method implicitly floors all components of thre rect
and this is bad. Replace this method with SkRectToRectF which keeps everything
as floating point.
We also add a conversion method from RectF to SkRect.
Tests:
ui_unittests:RectTest.SkiaRectConversions
R=sky
BUG=147395
Moved From: https://codereview.chromium.org/11275089/
Review URL: https://chromiumcodereview.appspot.com/11359172
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167620 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
|
|
|
|
|
|
|
|
|
|
|
| |
Renames Texture to Resource and ScopedTexture to ScopedResource.
BUG=
TEST=cc_unittests
Review URL: https://codereview.chromium.org/11377055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166689 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
enabled in GlRenderer
Constantly calling glEnable(GL_SCISSOR_TEST) costs us a few ms/frame on some hardware.
As it turns out, we never disable the scissor test so we can just leave it on all the
time.
BUG=
Review URL: https://chromiumcodereview.appspot.com/11378004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166632 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=152904
Review URL: https://chromiumcodereview.appspot.com/11232051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166627 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/11361129
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166586 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also switched to using drawBitmapRectToRect instead of drawBitmapRect since
it takes floating point rects as parameters.
Now
platform/chromium/virtual/softwarecompositing/visibility/visibility-image-layers.html
is rendering correctly (minus filtering differences between Mesa and Skia).
BUG=124671
Review URL: https://chromiumcodereview.appspot.com/11369079
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166178 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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
attempt 2
BUG=152904
Review URL: https://chromiumcodereview.appspot.com/11232051
TBR=aelias@chromium.org
Review URL: https://codereview.chromium.org/11369071
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165907 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=152904
Review URL: https://chromiumcodereview.appspot.com/11232051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165872 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Might be causing webkit_unit_tests to fail on mac/win
BUG=152904
Review URL: https://codereview.chromium.org/11232051
TBR=jamesr@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165501 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=152904
Review URL: https://codereview.chromium.org/11232051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165476 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the software compositor.
Layout tests that pass with this patch:
platform/chromium/virtual/softwarecompositing/masks/layer-mask-placement.html
platform/chromium/virtual/softwarecompositing/masks/mask-of-clipped-layer.html
BUG=124671
Review URL: https://chromiumcodereview.appspot.com/11313017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164950 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds non-member methods that return a new Rect (or RectF) object
as their result instead of mutating an existing rect. We add:
Rect gfx::IntersectRects(Rect, Rect)
RectF gfx::IntersectRects(RectF, RectF)
Rect gfx::UnionRects(Rect, Rect)
RectF gfx::UnionRects(RectF, RectF)
Rect gfx::SubtractRects(Rect, Rect)
RectF gfx::SubtractRects(RectF, RectF)
RectF gfx::ScaleRect(RectF, scale)
RectF gfx::ScaleRect(RectF, x_scale, y_scale)
In CL https://codereview.chromium.org/11110004/ we made all
member methods of Rect (and RectF) mutate the existing
object, so these methods are added for cases where we want
the result to create a new object instead.
BUG=147395
R=sky
Review URL: https://codereview.chromium.org/11270042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164760 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
TBR=jamesr@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11228059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163749 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
called on.
Currently some methods mutate the class, and some return a new value, requiring
API users to know what kind of method they are calling each time, and making
inconsistent code. For example:
gfx::Rect rect;
rect.Inset(1, 1, 1, 1);
rect = rect.Intersect(other_rect);
rect.Offset(1, 1);
Instead of:
gfx::Rect rect;
rect.Inset(1, 1, 1, 1);
rect.Intersect(other_rect);
rect.Offset(1, 1);
We could go either way - making the class immutable or all methods return a new
instance - but I believe it is better to instead make all methods mutate the
class. This allows for shorter lines of code by avoiding having to repeat the
object's name twice in order to change it.
This patch changes gfx::Rect classes and all the callsites that uses these
methods. It should make no change in behaviour, so no new tests added.
R=sky
BUG=147395
Review URL: https://codereview.chromium.org/11110004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163579 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://chromiumcodereview.appspot.com/11233025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163225 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/11228017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163205 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Exception: Missing input files:
c:\b\build\slave\cr-win-rel\build\src\cc\CCTextureUpdateQueue.h
Relanding with this file removed as well.
BUG=155413
TEST=cc_unittests
TBR=enne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11227005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163028 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Build fails with "gclient hooks failed" error.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162988 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=155413
TEST=cc_unittests
R=enne@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11189076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162986 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
|
|
|
|
|
|
|
|
|
|
| |
R=jamesr@chromium.org
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11145031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162065 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=124671
Review URL: https://chromiumcodereview.appspot.com/11121008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162015 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=155413
Review URL: https://codereview.chromium.org/11122003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161671 0039d316-1c4b-4281-b951-d872f2087c98
|