summaryrefslogtreecommitdiffstats
path: root/cc/software_renderer.cc
Commit message (Collapse)AuthorAgeFilesLines
* Enabled partial swap support for software compositing.skaslev@chromium.org2013-02-011-13/+34
| | | | | | | | | | | | Also fixes a transform bug when a render pass is being backed by a texture with larger-than-necessary resolution. BUG=124671,171055 Review URL: https://chromiumcodereview.appspot.com/12090080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180050 0039d316-1c4b-4281-b951-d872f2087c98
* Putting back: Add point-based UV coordinate on TextureLayerjscholler@chromium.org2013-01-181-1/+3
| | | | | | | | | | | | | | Revert "Revert 177288" TBR=ilevy@chromium.org This reverts commit 3543975945a5667aa3fb48c6d0e1b6312d1ed293. BUG=168927 Review URL: https://chromiumcodereview.appspot.com/11902005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177541 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 177288ilevy@chromium.org2013-01-171-3/+1
| | | | | | | | | | | | | | | | | | | | | | | > cc: Add point-based UV coordinate on TextureLayer > > Previously, the uv coordinates was using gfx::RectF as a struct. > This was limitating because it could not handle negative width > and heights. Soring them as 2 gfx::PointF for the Top-Left and > Bottom-Right points aleviate that restriction. > The current implementation of the phone UI rely on this feature. > > BUG=168927 > > Review URL: https://chromiumcodereview.appspot.com/11783094 This is breaking the android internal chrome build, we need green for a release cut later tonight. Let's reland tomorrow with the corresponding downstream fix. TBR=jscholler@chromium.org Review URL: https://codereview.chromium.org/11959026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177360 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add point-based UV coordinate on TextureLayerjscholler@chromium.org2013-01-171-1/+3
| | | | | | | | | | | | | | Previously, the uv coordinates was using gfx::RectF as a struct. This was limitating because it could not handle negative width and heights. Soring them as 2 gfx::PointF for the Top-Left and Bottom-Right points aleviate that restriction. The current implementation of the phone UI rely on this feature. BUG=168927 Review URL: https://chromiumcodereview.appspot.com/11783094 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177288 0039d316-1c4b-4281-b951-d872f2087c98
* Migrate more functions from MathUtil to gfx::Transformshawnsingh@chromium.org2013-01-151-1/+2
| | | | | | | | | | | | | This patch (1) removes rotateEulerAngles entirely (2) migrates some util functions from MathUtil to transform_util, and (3) moves all the MathUtil unit tests that actually belonged in ui/gfx/. BUG=159972 Review URL: https://chromiumcodereview.appspot.com/11774005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176832 0039d316-1c4b-4281-b951-d872f2087c98
* Move filters to RenderPassDrawQuadpiman@chromium.org2012-12-211-6/+1
| | | | | | | | BUG=123444 Review URL: https://chromiumcodereview.appspot.com/11618026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@174466 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up cc and webkit/compositor_bindings include path shenanigansjamesr@chromium.org2012-12-181-2/+1
| | | | | | | | | | | | | | | | | 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
* Combine mask texture parameters into single gfx::RectFjamesr@chromium.org2012-12-131-4/+4
| | | | | | | | | | | This folds the 4 floats together into a single parameter to be slightly easier to manage, but doesn't change the logic. BUG= Review URL: https://chromiumcodereview.appspot.com/11543013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172825 0039d316-1c4b-4281-b951-d872f2087c98
* Add the DelegatingRenderer class with its initialize path.danakj@chromium.org2012-12-081-2/+2
| | | | | | | | | | | | | | | | It's a skeleton class that can be initialized so that we can test with it. Tests: LayerTreeHostTest.PartialUpdatesWithDelegatingRendererAndGLContent LayerTreeHostTest.PartialUpdatesWithDelegatingRendererAndSoftwareContent LayerTreeHostImplTest.partialSwapReceivesDamageRect R=piman BUG=146080 Review URL: https://codereview.chromium.org/11464007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171927 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Move WebCompositorOutputSurface and related classes into cc/danakj@chromium.org2012-12-071-12/+8
| | | | | | | | | | | | | | | | | | 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
* cc: Finish the rename from cc::GraphicsContext to cc::OutputSurfacedanakj@chromium.org2012-12-061-1/+0
| | | | | | | | | | | | | | | 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
* Revert 171403danakj@chromium.org2012-12-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | 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
* cc: Finish the rename from cc::GraphicsContext to cc::OutputSurfacedanakj@chromium.org2012-12-061-1/+0
| | | | | | | | | | | | | | | 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
* cc: Allow a renderer to disallow partial texture updates.danakj@chromium.org2012-12-061-0/+2
| | | | | | | | | | | | | | This is required for delegating renderer, as textures used by the renderer can not be used by the texture updater while the renderer has ownership of them, since it ships them out of process. BUG=146080 R=piman,enne Review URL: https://chromiumcodereview.appspot.com/11457003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171385 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Use skia::RefPtr in place of raw pointers and SkAutoTUnref.danakj@chromium.org2012-12-041-11/+13
| | | | | | | | | | | | | Safe reference counting for skia objects ahoy! R=jamesr BUG=163454 Depends on: https://codereview.chromium.org/11418217/ NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11412255 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170889 0039d316-1c4b-4281-b951-d872f2087c98
* Animation code is not yet migrated by this patch, due to WebTransformOperations.shawnsingh@chromium.org2012-11-271-17/+18
| | | | | | | | BUG=159972 Review URL: https://codereview.chromium.org/11308153 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169609 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Minimize the number of times GL scissoring state is changedshawnsingh@chromium.org2012-11-211-0/+17
| | | | | | | | | | | | | | | We may sometimes want to turn off the scissoring optimization. At this time scissoring is used as both an optimization and for correctness when a layer is clipped. This patch separates those concepts and rearranges scissoring logic in an attempt to minimize how often scissoring state changes; scissoring changes very likely cause graphics pipeline to flush which is definitely undesirable. BUG=160358 Review URL: https://chromiumcodereview.appspot.com/11362220 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169142 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Make RenderPass into a struct-like class.danakj@chromium.org2012-11-211-2/+2
| | | | | | | | | | | | | | | | | | | This follows the same pattern as DrawQuad and SharedQuadState. The Create() method takes no parameters, allowing the IPC code to create an empty RenderPass. Then we have SetNew() and SetAll() methods to set the the properties of the RenderPass when creating a new one, or when recreating one via IPC, respectively. Covered by existing tests. BUG=152337 TBR=aelias Review URL: https://chromiumcodereview.appspot.com/11413106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168998 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Make the DrawQuad subclasses into a struct-like classes.danakj@chromium.org2012-11-201-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* cc: Make UV coords in TileDrawQuad a full RectFenne@chromium.org2012-11-201-3/+1
| | | | | | | | | | | | | | | | | | | 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
* cc: Turn DrawQuad into a struct-like class with public data members.danakj@chromium.org2012-11-171-3/+3
| | | | | | | | | | | | | | | | | | | 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
* cc: Convert DrawQuad to chromium style.danakj@chromium.org2012-11-171-3/+4
| | | | | | | | | | | | | | | | | | 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
* cc: Switch the DrawQuad enum names to chromium style and remove pragmasdanakj@chromium.org2012-11-161-5/+5
| | | | | | | | | | | 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
* Added some instrumentation to the software compositor.skaslev@chromium.org2012-11-151-0/+5
| | | | | | | | | 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
* Added support for CSS filters to the software compositor.skaslev@chromium.org2012-11-141-0/+9
| | | | | | | | | 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
* ui: Remove implicit flooring in skia rect conversion methods.danakj@chromium.org2012-11-141-27/+18
| | | | | | | | | | | | | | | | | | | 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
* Avoid redundantly setting tex parametersjamesr@chromium.org2012-11-131-2/+1
| | | | | | | | | BUG= Review URL: https://chromiumcodereview.appspot.com/11366199 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167479 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WTF and WebCore from cc/ and webkit/compositor_bindings/piman@chromium.org2012-11-101-3/+1
| | | | | | | | | | | 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
* cc: Rename Texture class to Resource.reveman@google.com2012-11-081-2/+2
| | | | | | | | | | | 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
* Remove DirectRenderer::disableScissorTest, always leave GL_SCISSOR_TEST ↵jamesr@chromium.org2012-11-081-7/+1
| | | | | | | | | | | | | | | 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
* Remove static thread pointers from CC, attempt 3aelias@chromium.org2012-11-081-1/+1
| | | | | | | | 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
* Don't invert contentsDeviceTransform twice when rendering render passes.skaslev@chromium.org2012-11-081-1/+0
| | | | | | Review URL: https://chromiumcodereview.appspot.com/11361129 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166586 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed tile filtering for the software compositor.skaslev@chromium.org2012-11-061-4/+13
| | | | | | | | | | | | | | | | | | 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
* cc: Fix style for comments at the end of namespacesdanakj@chromium.org2012-11-051-1/+1
| | | | | | | | | | | | 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
* A speculative Revert for r165872 - Remove static thread pointers from CC, ↵hbono@chromium.org2012-11-051-1/+1
| | | | | | | | | | | | | 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
* Remove static thread pointers from CC, attempt 2aelias@chromium.org2012-11-041-1/+1
| | | | | | | | 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
* Revert 165476 - Remove static thread pointers from CCjamesr@chromium.org2012-11-011-1/+1
| | | | | | | | | | | | 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
* Remove static thread pointers from CCjamesr@chromium.org2012-11-011-1/+1
| | | | | | | | 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
* cc: Use gfx:: Geometry types for positions, bounds, and related things.danakj@chromium.org2012-11-011-3/+3
| | | | | | | | | | | | | | | | | | | | | | | 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 mask positioning and texture UVs bugs inskaslev@chromium.org2012-10-301-22/+28
| | | | | | | | | | | | | | | | 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
* Added support for YUV videos to the software compositor.skaslev@chromium.org2012-10-301-3/+4
| | | | | | | | | | | | | | | | | | | | | | 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
* Add non-member non-mutating methods for common gfx::Rect operations.danakj@chromium.org2012-10-291-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* cc: Remove CC*.h temporary includes, part 6/4.tfarina@chromium.org2012-10-241-1/+1
| | | | | | | | | | | | 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
* Make gfx::Rect class operations consistently mutate the class they are ↵danakj@chromium.org2012-10-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* cc: Rename cc classes and members to match filenamesenne@chromium.org2012-10-221-47/+47
| | | | | | | | | | | 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
* cc: Remove CC*.h temporary includes, part 4/4.tfarina@chromium.org2012-10-221-1/+1
| | | | | | | | | | | | 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
* cc: Remove CC*.h temporary includes, part 3/4.tfarina@chromium.org2012-10-211-1/+1
| | | | | | | | | | | 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
* cc: Remove CC*.h temporary includes, part 2/4.tfarina@chromium.org2012-10-201-1/+1
| | | | | | | | | | | 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
* cc: Use ui/gfx geometry types for the CCRenderPass and CCDrawQuad classes.danakj@chromium.org2012-10-201-10/+10
| | | | | | | | | | | | | | | | | 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
* Revert "cc: Rename cc classes and members to match filenames"enne@chromium.org2012-10-191-47/+47
| | | | | | This reverts commit 184fac5add06d5f4670fa6be4a4d3b39232d51bb. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163059 0039d316-1c4b-4281-b951-d872f2087c98