summaryrefslogtreecommitdiffstats
path: root/cc
Commit message (Collapse)AuthorAgeFilesLines
* cc: Reduce command buffer flushes related to creating texture ids.reveman@chromium.org2013-11-0124-107/+283
| | | | | | | | | | | | This significantly reduces command buffer flushes by allocating texture ids in chunks of 64. BUG=309455 TEST=cc_unittests --gtest_filter=ResourceProviderTest.TextureAllocationChunk Review URL: https://codereview.chromium.org/49163004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232332 0039d316-1c4b-4281-b951-d872f2087c98
* Do not give GPU memory to backgrounded compositors.ccameron@chromium.org2013-11-0126-259/+38
| | | | | | | | | | | | | | | | | | | | This has already been disabled on all platforms except Windows and Chrome OS to be more conservative about GPU memory. All platforms are moving to a delegated renderer where, if keeping around resources for a fast tab-switch is desired, it can be accomplished by not releasing those resources in the browser process. This feature was originally requested in crbug.com/134750. Also remove the infrastructure for preserving backbuffers of backgrounded renderers. This feature was never enabled. BUG=276559 Review URL: https://codereview.chromium.org/53633003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232324 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Disable flaky LayerTreeHostContextTestLostContextWhileUpdatingResourcesbrianderson@chromium.org2013-11-011-3/+4
| | | | | | | | | TBR=enne@chromium.org BUG=313790 Review URL: https://codereview.chromium.org/55563002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232318 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 231919 "cc: Enable deadline scheduler by default for unit..."rpaquay@chromium.org2013-10-312-2/+2
| | | | | | | | | | | | | | > cc: Enable deadline scheduler by default for unit tests > > BUG=310591 > > Review URL: https://codereview.chromium.org/51883007 TBR=brianderson@chromium.org Review URL: https://codereview.chromium.org/50413015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232168 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Don't use LayerTreeHost in LayerTreeTest on impl thread.danakj@chromium.org2013-10-311-30/+27
| | | | | | | | | | | | | | | | | | | | Using the LTH is flaky because these function can be called from either thread, and the LTH may be dropped on the main thread as it is being called. In EndTest, we can use ended_ to prevent the function from posting RealEndTest twice, instead of using the existence of the LayerTreeHost. Everywhere, use main_task_runner_ instead of proxy()->MainThreadTaskRunner() which requires accessing the LayerTreeHost. R=ajuma BUG= Review URL: https://codereview.chromium.org/52993003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232074 0039d316-1c4b-4281-b951-d872f2087c98
* Check for null tilings when computing GPUMemoryUsageInBytesnduca@chromium.org2013-10-311-0/+2
| | | | | | | | | R=enne NOTRY=True Review URL: https://codereview.chromium.org/51573002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232040 0039d316-1c4b-4281-b951-d872f2087c98
* Move test-only stuff from cc/debug/ to cc/testjamesr@chromium.org2013-10-3135-120/+101
| | | | | | | | | | | | This moves the test/fake context implementations from cc/debug/ to cc/test and stops linking them into production targets. Test targets elsewhere in the tree can link against cc_test_support to use these. R=danakj,piman Review URL: https://codereview.chromium.org/50303007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232025 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add failure info to LTHAnimationTest...WithoutActiveTreeenne@chromium.org2013-10-311-3/+6
| | | | | | | | | | | | This has flaked with the active tree assert being wrong twice and it'd be good to understand which commit this was happening on to better diagnose this problem. BUG=312952 Review URL: https://codereview.chromium.org/50713005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232008 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add --cc-rebaseline-pixeltests command line flag.danakj@chromium.org2013-10-314-4/+14
| | | | | | | | | | | | | When present, pixel tests write their output instead of reading it. This allows rebaselining tests without requiring a recompile of the code. R=enne BUG= Review URL: https://codereview.chromium.org/48733009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231965 0039d316-1c4b-4281-b951-d872f2087c98
* Disable flaky DelegatedFrameResourceCollectionTest.Threadpiman@chromium.org2013-10-301-1/+2
| | | | | | | | | BUG=313441 TBR=danakj Review URL: https://codereview.chromium.org/53553002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231939 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Enable deadline scheduler by default for unit testsbrianderson@chromium.org2013-10-302-2/+2
| | | | | | | | BUG=310591 Review URL: https://codereview.chromium.org/51883007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231919 0039d316-1c4b-4281-b951-d872f2087c98
* Fix DelegatedFrameResourceCollection thread safetypiman@chromium.org2013-10-304-15/+173
| | | | | | | | | | | | Don't keep a ref to DelegatedFrameResourceCollection inside the return resources callback, because it is called from a thread. BUG=None R=danakj@chromium.org Review URL: https://codereview.chromium.org/47703005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231915 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia DEPS to r12012robertphillips@google.com2013-10-301-0/+0
| | | | | | | | R=enne@chromium.org, reed@google.com Review URL: https://codereview.chromium.org/48113022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231886 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Deflake LayerTreeHostContextTestCompositeAndReadbackBeforeOutputSurfaceInitbrianderson@chromium.org2013-10-301-2/+5
| | | | | | | | BUG=280508 Review URL: https://codereview.chromium.org/51513002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231806 0039d316-1c4b-4281-b951-d872f2087c98
* Disable single-threaded GatherPixelRefs().tomhudson@chromium.org2013-10-302-5/+10
| | | | | | | | | | | | | | | | | | | GatherPixelRefs has fairly high overhead. When we're running with a single raster worker thread, we *think* the overhead isn't justified. If we can fold GatherPixelRefs into the Skia picture recording process we should get a huge cost savings and be able to reenable this stage under all conditions. This is a second approach, much simpler than crrev.com/51173002 but relies on an early out in the picture iterator to avoid divide-by-zero crashes. BUG=310803 R=reveman@chromium.org Review URL: https://codereview.chromium.org/51253002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231799 0039d316-1c4b-4281-b951-d872f2087c98
* Remove WGC3D::signal(Query|SyncPoint) referencesjamesr@chromium.org2013-10-302-18/+0
| | | | | | | | | | | These entry points haven't been used by chromium-side code since r230043 and have never been used by Blink, so we don't need them any more. R=piman Review URL: https://codereview.chromium.org/50783007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231797 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Remove DirectRenderer::RenderPassTextureFormat.danakj@chromium.org2013-10-302-20/+9
| | | | | | | | | | | | The format is always RGBA_8888, so no need to have a method for this and check resources for this format. R=piman BUG=284550 Review URL: https://codereview.chromium.org/46593006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231788 0039d316-1c4b-4281-b951-d872f2087c98
* Fix perspective transform operation interpolationvollick@chromium.org2013-10-302-11/+44
| | | | | | | | | | | | | | | | | | | gfx::Transform and cc::TransformOperations interpolate perspective differently. gfx::Transform is correct (it's interpolated according to http://www.w3.org/TR/css3-transforms/#matrix-values-interpolation). This CL fixes TransformOperation to match this interpolation. Effectively what happens is we interpolate, element-by-element, the bottom row of the perspective matrices. We currently interpolate the perspective depths directly, but the matrix entry is really -1/depth. What we really want, then, is to interpolate -1/depth_from and -1/depth_to. This CL corrects this mistake. R=ajuma@chromium.org,shawnsingh@chromium.org BUG=None Review URL: https://codereview.chromium.org/26515008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231696 0039d316-1c4b-4281-b951-d872f2087c98
* GTTF: always run perf tests seriallyphajdan.jr@chromium.org2013-10-302-1/+17
| | | | | | | | | BUG=236893 R=hubbe@chromium.org, jamesr@chromium.org Review URL: https://codereview.chromium.org/47023009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231680 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Include wheel/touch event handling in the JSON output for the layer tree.sadrul@chromium.org2013-10-297-0/+748
| | | | | | | | | | | | | This also adds a test with a small touch-handling region (TouchRegionLight), and another test with a large number of touch-handling regions (TouchRegionHeavy) for CalcDrawProps perf-test. BUG=none R=enne@chromium.org Review URL: https://codereview.chromium.org/49913004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231634 0039d316-1c4b-4281-b951-d872f2087c98
* Move memory allocation/stats structs to gpu:: and remove bazillion copiesjamesr@chromium.org2013-10-2914-70/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves the memory allocation / stats structs from content to gpu:: and eliminates many redundant copies of this information in different parts of the stack. This also moves the stats sending and allocation callbacks to gpu::ContextSupport / gpu::GpuControl to get rid of the bounce through WebKit::WebGraphicsContext3D. The new flow for cc to register for memory allocation changes and pass stats to the manager is this: cc:: registers for MemoryAllocationChanged callbacks and sends stats via the gpu::ContextSupport interface. Memory allocations are represented by a gpu::MemoryAllocation struct and memory statistics are sent in a gpu::ManagedMemoryStats struct. The implementation of gpu::ContextSupport (gpu::gles2::GLES2Implementation) forwards the calls to gpu::GpuControl. content::CommandBufferProxyImpl's implementation of these maps the calls to content IPCs that drive the memory manager implementation. This patch gets rid of the following things: *) WebKit::WebGraphicsMemory(Allocation|Stats) go away. These were used only because cc was not able to depend on the previous locations of the allocation/stats structs in content::. Now that these structs are in gpu::, the compositor (which is the only thing using these) can see them directly *) WebGraphicsContext3D::sendManagedMemoryStatsCHROMIUM / setMemoryAllocationChangedCallbackCHROMIUM go away. *) cc:ManagedMemoryPolicy's cutoff fields are now gpu::MemoryAllocation::PriorityCutoff enums instead of an (inconsistently named) copy. *) GpuMemoryAllocationForBrowser goes away and is managed directly in content. gpu::GpuMemoryAllocationForRenderer is renamed to just gpu::MemoryAllocation *) Many proxies and converters go away. cc::ManagedMemoryPolicy sticks around in this patch, even though it's largely the same as gpu::MemoryAllocation, since it's sometimes used by code that doesn't go through the gpu memory allocation path - such as android_webview - and it has some additional state (num_resource_limit) that's not applicable to a general gpu::MemoryAllocation. Chris tells me this struct is due for simplification as well, so maybe it'll make sense to fold it in in a future patch. Diffstat: 53 files changed, 345 insertions(+), 713 deletions(-) BUG=181120 R=piman,ccameron Review URL: https://codereview.chromium.org/45243002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231527 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Changing picture pile in favour of a grid of pictures.vmpstr@chromium.org2013-10-2912-450/+303
| | | | | | | | | | | | This patch changes the representation of a picture pile to be that of a grid of picture refs. Current version creates a new picture for each invalidated "chunk", but that will probably need to change. BUG=294404 Review URL: https://codereview.chromium.org/23698016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231522 0039d316-1c4b-4281-b951-d872f2087c98
* ui: Have shell_dialogs into its own gyp file under its shell_dialogs/ directory.tfarina@chromium.org2013-10-291-1/+1
| | | | | | | | | | | | | | | This is the pattern we follow for projects under ui/, each top-level directory (app_list, aura, compositor, events) have its own gyp file for its main target (library). BUG=299841 TEST=build/gyp_chromium, ninja -C out/Debug shell_dialogs, and other targets still build. R=ben@chromium.org Review URL: https://codereview.chromium.org/47323002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231478 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix running some perf-tests.sadrul@chromium.org2013-10-281-3/+3
| | | | | | | | | | | | | | * It looks like 'ImageBounds' in the json test files are meant to be in '[width, height]' order. Fix reading that data in the test. * BrowserCompositorInvalidateLayerTreePerfTest tests set a mailbox on the texture layers. So create TextureLayers that use mailbox in the test. BUG=none R=danakj@chromium.org Review URL: https://codereview.chromium.org/49423002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231426 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix DCHECK in PictureLayer::PushPropertiesToboliu@chromium.org2013-10-282-3/+9
| | | | | | | | | | | | | | | | The DCHECK will only hold if PictureLayer::Update is called in that frame. DrawContents is not enough since there are other cases in LayerTreeHostCommon::LayerShouldBeSkipped that causes Update to be skipped. Instead keep track of the frame number when Update was and compare it to the current frame number. BUG=311311 Review URL: https://codereview.chromium.org/42653002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231421 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Disable frame production throttling (vsync) in cc_perftestsskyostil@chromium.org2013-10-281-0/+4
| | | | | | | | | | | | | | | Disable frame production throttling (vsync) in LayerTreeHostPerfTests. These tests are trying to measure the performance of the layer tree management, so limiting them to the arbitrary 200 Hz synthetic vsync signal of the test harness is counter-productive. Since the tests aim to run for 2 seconds, this 200 Hz interval causes the commits/s result to be capped at 400 on the desktop-class perf bots. BUG=310000 Review URL: https://codereview.chromium.org/47743006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231415 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid unnecessary sqrt calls in ComputeTransform2dScaleComponents.aelias@chromium.org2013-10-281-0/+7
| | | | | | | | | | | | | | | This method performed 2 sqrt calls for every layer during CalcDrawProperties. In most cases, only the main diagonal has nonzero values and the sqrt() call can be optimized out. I measured a 20% win in CalcDrawPropsImplTest.TenTen on Nexus 4. NOTRY=true BUG=311472 Review URL: https://codereview.chromium.org/47403002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231339 0039d316-1c4b-4281-b951-d872f2087c98
* Remember value of IsImplSidePaintingEnabledtomhudson@chromium.org2013-10-281-1/+8
| | | | | | | | | | | | | | | | | Command line arguments are constant at runtime, but the function cc::switches::IsImplSidePaintingEnabled() does two searches through the list of arguments every time it's called, and it's called every time we record a SkPicture. With this patch, the function remembers the value determined by the first call and avoids repeating the searches on subsequent calls. BUG=311248 R=nduca@chromium.org,skyostil@chromium.org Review URL: https://codereview.chromium.org/43463003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231314 0039d316-1c4b-4281-b951-d872f2087c98
* Add array based versions of GL object creation/deletion.reveman@chromium.org2013-10-274-53/+173
| | | | | | | | BUG=309455 Review URL: https://codereview.chromium.org/39033003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231273 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 231092 "cc: Enable deadline scheduler by default for unit..."falken@chromium.org2013-10-272-2/+2
| | | | | | | | | | | | | | | | | | | | | cc_unitests started flaking often soon after this change. Another suspected change is r231089, which landed around the same time. The failing test is: LayerTreeHostContextTestCompositeAndReadbackBeforeOutputSurfaceInit.RunMultiThread_DirectRenderer_MainThreadPaint > cc: Enable deadline scheduler by default for unit tests > > BUG=310591 > > Review URL: https://codereview.chromium.org/43483003 TBR=brianderson@chromium.org Review URL: https://codereview.chromium.org/45783004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231253 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Modify RenderPass::transform_to_root_target in DRLayerImpl.danakj@chromium.org2013-10-272-17/+60
| | | | | | | | | | | | | | | | | | | DelegatedRendererLayerImpl needs to transform everything in its output by the transforms with which the layer itself will be drawn. It was transforming the contents of all its quads, but missed transforming its render passes. Each RenderPass::transform_to_root_target needs to have the DelegatedRendererLayerImpl's screen space transform included in it. Tests: DelegatedRendererLayerImplTestSimple.RenderPassTransformIsModified R=enne BUG=311315 Review URL: https://codereview.chromium.org/45543002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231236 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Don't check IsLost for PrioritizedResources.danakj@chromium.org2013-10-271-2/+1
| | | | | | | | | | | | | | If a resource is lost, it's in the parent compositor forever, so deleting the resource will not free the data neccessarily, and we can never reuse the texture. Simplify things by just checking IsUseByConsumer() and not checking for !IsLost(). R=ccameron, piman BUG=292971 Review URL: https://codereview.chromium.org/44813005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231224 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Sort backings in the parent compositor to the back of the list.danakj@chromium.org2013-10-266-44/+208
| | | | | | | | | | | | | | | | | | | Backings in the parent should not be preferred for eviction since deleting them in the renderer won't actually free any memory. So sort them to the back of the backings list, so they are evicted last. Also mark them as not CanBeRecycled() so that they will not be evicted at all if we are only evicting recyclable stuff. Tests: PrioritizedResourceTest.NotEvictingTexturesInParent R=ccameron@chromium.org, jbauman@chromium.org BUG=292971 Review URL: https://codereview.chromium.org/42483002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231202 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Allow all types of pending commits to throttle inputbrianderson@chromium.org2013-10-269-1/+25
| | | | | | | | | | | | | | | | | SetNeedsCommit is currently the only method that throttles input events. When SetNeedsUpdate was added to support abortable commits, it inadvertantly disabled input throttling for abortabe commits. SetNeesdAnimate has never throttled input events, but there is not reason to treat it differently. This patch throttles input for SetNeedsAnimate, SetNeedsUpdate and SetNeedsCommit now. BUG=305210 Review URL: https://codereview.chromium.org/37313003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231190 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add opacity to UIResourceBitmap and UIResourceLayerpowei@chromium.org2013-10-2610-8/+72
| | | | | | | | | | | | Store opacity information with UIResourceBitmap and on the LayerTreeHostImpl. This allows us to provide a valid opaque rect when append quads in the UIResourceLayer. BUG=300027 Review URL: https://codereview.chromium.org/42073003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231178 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Remove PrioritizedResourceManager::ReduceWastedMemoryOnImplThreaddanakj@chromium.org2013-10-2610-40/+0
| | | | | | | | | | | | | | This function and its plumbing was added for using PrioritizedResourceManager with impl-side painting. But we no longer do this outside of unit tests. And no unit tests rely on this. So just remove it. R=reveman@chromium.org,ccameron@chromium.org BUG= Review URL: https://codereview.chromium.org/45823002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231174 0039d316-1c4b-4281-b951-d872f2087c98
* cc: RenderPass::CopyAll should not break if quads are culled.danakj@chromium.org2013-10-252-27/+96
| | | | | | | | | | | | | | | | | | | | | If quads are culled from more than one consecutive layer, then multiple shared quad states may appear in the list but not be used. CopyAll should not break in this scenario, so use a loop instead of an if to to find the corrent shared quad state. This is validated by the cc_messages IPC de-pickling already, and it allows this valid IPC through, but then we fail to deal with it in CopyAll. Tests: RenderPassTest.CopyAllWithCulledQuads R=piman BUG=311438 Review URL: https://codereview.chromium.org/45033002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231122 0039d316-1c4b-4281-b951-d872f2087c98
* Implement new overlay scrollbar specsdavemoore@chromium.org2013-10-257-106/+286
| | | | | | | | | | | | | | Make overlay scrollbars thicken only on mouse movement (not scrolling). Keep the bars thick as long as the mouse is near them. Thicken and darken the bars through an animation. Make the distance to thicken the bars 25 dips (instead of 100). BUG=299046,274010 R=enne@chromium.org, enne, tony Review URL: https://codereview.chromium.org/40603006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231118 0039d316-1c4b-4281-b951-d872f2087c98
* Added unit tests to ensure damage of layers not drawn because of their ↵kloveless@chromium.org2013-10-251-0/+95
| | | | | | | | | | parent is preserved properly. BUG=291218 Review URL: https://codereview.chromium.org/41683002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231102 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Enable deadline scheduler by default for unit testsbrianderson@chromium.org2013-10-252-2/+2
| | | | | | | | BUG=310591 Review URL: https://codereview.chromium.org/43483003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231092 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Use HighResNow as timebase if it is fast and reliablebrianderson@chromium.org2013-10-2518-114/+170
| | | | | | | | | | | | | | | | | | | If base::TimeTicks::HighResNow is fast and reliable, we use it for frame times, animations, and scheduling. Otherwise, we use base::TimeTicks::Now and use a timebase of zero to avoid an incorrect or jittery timebase. This adds a gfx::FrameTime::Now() function, so the same timebase is used across the ui and cc directories. Additionally, the OutputSurface now uses a HighRes version of the DelayBasedTimesource if gfx::FrameTime::Now() is HighRes. BUG=303356 Review URL: https://codereview.chromium.org/27710005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231089 0039d316-1c4b-4281-b951-d872f2087c98
* Lock the top controls during pinch zoomjdduke@chromium.org2013-10-254-1/+115
| | | | | | | | | | | | The sliding of top controls during pinch zoom is distracting and potentially performance inhibiting. Lock the controls if they are at an extreme on pinch start. BUG=280179 Review URL: https://codereview.chromium.org/33153005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231062 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Make scroll compensation take integer snapping into accountenne@chromium.org2013-10-252-9/+136
| | | | | | | | | | | | | Scroll layers are snapped to integer coordinates, but fixed position layers that compensated for that scroll weren't taking that into consideration. R=danakj@chromium.org BUG=309179 Review URL: https://codereview.chromium.org/41603002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230988 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Drop PictureLayerImpl tilings if not DrawsContentboliu@chromium.org2013-10-252-0/+21
| | | | | | | | | | | | If CanHaveTilings returns false due to DrawsContent returning false, then tilings are not dropped in SyncFromActiveLayer like they normally would be. Fix by dropping tilings in the early out as well. BUG=310861 Review URL: https://codereview.chromium.org/42323002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230943 0039d316-1c4b-4281-b951-d872f2087c98
* Add Color animation curves.avallee@chromium.org2013-10-2411-65/+277
| | | | | | | | | | | | | | | | | | | | | | | | Implement animation curves for colors. This is the first step towards accelerating background-color animations. + Add ColorValueBetween to gfx::Tween. + Add test/color_utils which gives EXPECT_COLOR_EQ to check SkColors and print in a sane format. ~ Fixed discrepancy between two methods of interpolating ints. ~ Factored out GetProgress into template function to simplify code in the implementations of GetValue(double), there was a lot of duplication there. TESTED: Added tests for the new KeyframedColorAnimations and AnimatedColor classes. Added tests to tweening. R=ajuma BUG=290234 Review URL: https://codereview.chromium.org/25901002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230856 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Properly forward changes to resource usage limits to resource pool.reveman@chromium.org2013-10-241-1/+1
| | | | | | | | BUG=311244 Review URL: https://codereview.chromium.org/40463002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230854 0039d316-1c4b-4281-b951-d872f2087c98
* Removed unused variable.alokp@chromium.org2013-10-241-6/+0
| | | | | | Review URL: https://codereview.chromium.org/41073003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230836 0039d316-1c4b-4281-b951-d872f2087c98
* replace setIsOpaque (deprecated) with explicit SkAlphaTypereed@google.com2013-10-241-2/+2
| | | | | | | | | BUG= R=enne@chromium.org, jam@chromium.org, jamesr@chromium.org, thakis@chromium.org Review URL: https://codereview.chromium.org/37233002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230799 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix CHECK failure in PictureLayerImpl::UpdateTilePrioritiesboliu@chromium.org2013-10-242-1/+17
| | | | | | | | | | | | | | | | | | | | | | | The should_update_tile_priorities_ in UpdateTilePriorities my fail and here's the sequence of events: * Context loss while layer is invisible, which clears should_update_tile_priorities_ * CalculateContentsScale is skipped because layer is invisible * Layer becomes visible in next commit, and active layer SyncTiling during the commit will fail the check. Any condition that causes CalculateContentsScale on the layer works as well. Internal bug b/11265055 BUG= TEST=PictureLayerImplTest.SyncTilingAfterReleaseResource Review URL: https://codereview.chromium.org/38863002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230735 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix the DCHECK in PictureLayer::PushPropertiesTokaanb@chromium.org2013-10-241-4/+2
| | | | | | | | | | If the pile has been resized to be empty the DCHECK does not hold, so we only DCHECK when pile doesn't get resized. BUG=276988 Review URL: https://codereview.chromium.org/37923003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@230664 0039d316-1c4b-4281-b951-d872f2087c98