summaryrefslogtreecommitdiffstats
path: root/cc
Commit message (Collapse)AuthorAgeFilesLines
* cc: Add "new content takes priority" setting to ↵reveman@chromium.org2013-01-219-9/+59
| | | | | | | | | | | | | | | | | GlobalStateThatImpactsTilePriority. This replaces smoothness_takes_priority field with a tree_priority enum. Possible values are SAME_PRIORITY_FOR_BOTH_TREES, SMOOTHNESS_TAKES_PRIORITY and NEW_CONTENT_TAKES_PRIORITY. NEW_CONTENT_TAKES_PRIORITY is used when we need a new frame before we can draw and it makes the tile manager favor tiles in pending tree. BUG=171054 Review URL: https://chromiumcodereview.appspot.com/12016034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177936 0039d316-1c4b-4281-b951-d872f2087c98
* Make new-style page scale work on Android.aelias@chromium.org2013-01-217-59/+39
| | | | | | | | | | | | | | | | | | | | | | | - Fix CC's PinchZoomViewport and MaxScrollOffset logic to work in fixed layout mode. Root layer max scroll offset is based on WebKit-perceived outer viewport and therefore should logically use layout_viewport_size_, whereas the inner one is the true user-visible viewport and therefore should use device_viewport_size_. - Fix Android to send down viewport size in DIP when --enable-css-transform-pinch is not specified. Default to non-CSS-transform mode when in impl-side painting. - Make ContentSize() return bounds() instead of contentBounds() and rename to ScrollableSize for clarity. This lets us avoid coordinate space conversions when computing max scroll offset. BUG=152505 NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11958004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177896 0039d316-1c4b-4281-b951-d872f2087c98
* Unbreak max scroll offset in threaded compositing mode.aelias@chromium.org2013-01-211-2/+2
| | | | | | | | | | | | | | This was broken by a cleanup in https://src.chromium.org/viewvc/chrome?view=rev&revision=177847. Reverting that part of the patch. TBR=enne NOTRY=true BUG=171188 Review URL: https://chromiumcodereview.appspot.com/12034003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177886 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Use the size of the source frame along with the source frame's renderpassesdanakj@chromium.org2013-01-205-12/+82
| | | | | | | | | | | | | | | | | | | | | Scale the contents of the source frame to fit exactly in the bounds of the delegated renderer layer. When the host window is being resized, it can keep the delegated renderer layer at the size it wants the output displayed, and clip it with a containing layer until the resize is complete and it has a new frame to show at the right size. Tests: DelegatedRendererLayerImplTestSharedData.SharedData DelegatedRendererLayerImplTestSharedData.DisplaySize BUG=123444 R=enne NOTRY=true Review URL: https://chromiumcodereview.appspot.com/11821015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177878 0039d316-1c4b-4281-b951-d872f2087c98
* cc: DelegatedRenderer layer needs a surface if rotated.danakj@chromium.org2013-01-202-4/+30
| | | | | | | | | | | | | | | | When the DRLayer is rotated to a non-axis-aligned position, it needs to own a render surface in order to clip its delegated quads correctly. Tests: DelegatedRendererLayerImplTestSimple.DoesOwnARenderSurfaceForTransform BUG=171067 R=piman Review URL: https://chromiumcodereview.appspot.com/11929045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177858 0039d316-1c4b-4281-b951-d872f2087c98
* Find root scroll layer at tree activationjamesr@chromium.org2013-01-1911-64/+75
| | | | | | | | | | | | | | | | | | | | | | This finds the root scroll layer when a LayerTreeImpl is activated since we can only interact with the active tree. Doing this allows adding more checks for proper use and cuts down on the number of functions that have to be called in a specific order. I've also tightened up the TopControlsManagerClient interface, since previously the interface defined "virtual LayerTreeImpl* activeTree()" but LayerTreeHostImpl also defined a non-virtual "const LayerTreeImpl* activeTree() const" so depending on the constness of a pointer callers would get one or the other. Turns out the top controls system doesn't need the active tree, it just needs the root scroll layer. It actually doesn't even need the full layer, it just needs to know if there is a layer and if so what the y offset is. BUG=169143 Review URL: https://chromiumcodereview.appspot.com/12025031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177847 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Test non-root passes are not transformed.danakj@chromium.org2013-01-191-13/+71
| | | | | | | | | | | | The delegating renderer layer should not transform non-root render pass data, as it lives in its own world. BUG=171069 TBR=piman Review URL: https://chromiumcodereview.appspot.com/11926030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177845 0039d316-1c4b-4281-b951-d872f2087c98
* Fix scrollbars missing after lost contextpiman@chromium.org2013-01-196-15/+88
| | | | | | | | | | | | | We can't skip updates if we're simply !dirty, because we may have lost the textures. updatePart already takes both into account. BUG=None TEST=ScrollbarLayerLostContext Review URL: https://chromiumcodereview.appspot.com/11941010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177829 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix PictureLayerTiling::Iterator crashenne@chromium.org2013-01-184-1/+15
| | | | | | | | | | | | | | | | | | | If you gave PictureLayerTiling a rect that was outside of its tiling data, then it would incorrectly return its last tile as if that was valid. Fixed with an early-out and a unit test. This situation should never have occurred however, as the bounds for the tiling data should be absolutely equal to the layer's bounds. It turned out that during tiling sync, the active layer bounds were being set on the pending layer tiling data instead of rewriting it with the new bounds. R=danakj@chromium.org BUG=170768 Review URL: https://chromiumcodereview.appspot.com/12026006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177714 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix clipped render surface caching.danakj@chromium.org2013-01-182-35/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fix this by considering clipping from outside of the target surface as occlusion from outside the target surface. We clip quads by the various rects including the device viewport. When we do this, it should count as occlusion from outside of the target surface so that surfaces do not consider themselves complete when they are not fully drawn because they extend outside the viewport. The OcclusionTrackerTestLayerClipIsExternalOcclusion test will pass without this CL as clipping does not cross surface boundaries in the occlusion tracker right now, except for the screen space (viewport) clip rect. I've added some TODOs where we could change this behaviour and clip more aggressively things that will not be seen. Tests: cc_unittests:OcclusionTrackerTestViewportClipIsExternalOcclusion* cc_unittests:OcclusionTrackerTestLayerClipIsExternalOcclusion* BUG=167681 R=enne Review URL: https://chromiumcodereview.appspot.com/11971030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177645 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add right-aligned-scheduler command line switch.kangyuan.shu@intel.com2013-01-184-0/+6
| | | | | | | | | | | This does not do anything yet. BUG=170000 Review URL: https://chromiumcodereview.appspot.com/11885035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177610 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Redraw incomplete frames when new texture uploads finishbrianderson@chromium.org2013-01-1817-13/+176
| | | | | | | | | | | | | | | | This patch makes sure that, when the displayed frame has checkerboarding or uses low resolution tiles, we redraw on a vsync when a new visible high-res tile has been uploaded. Checking for completed texture uploads is given it's own scheduler state to centralize control and also to prevent texture uploads from triggering duplicate frames. BUG=169603 Review URL: https://chromiumcodereview.appspot.com/11879012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177580 0039d316-1c4b-4281-b951-d872f2087c98
* cc: PaintTimeCounter display on the HudLayer in continuous painting modeegraether@chromium.org2013-01-185-79/+184
| | | | | | | | | | | | | | This change adds a display for the PaintTimeCounter to the HudLayer. The display is shown in continuous painting mode. Common functionality with the FPSCounter is refactored into a Graph helper structure and drawing methods. screenshot: https://docs.google.com/open?id=0B8Y78t3tjy1XOVdvWGFGdXFOMzA depends on: https://codereview.chromium.org/11827009 BUG= Review URL: https://chromiumcodereview.appspot.com/11820014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177579 0039d316-1c4b-4281-b951-d872f2087c98
* Putting back: Add point-based UV coordinate on TextureLayerjscholler@chromium.org2013-01-1815-58/+160
| | | | | | | | | | | | | | 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
* cc: Fix resource eviction with impl-side painting.reveman@chromium.org2013-01-178-35/+38
| | | | | | | | | | | | | | | | | | | When evicting resources with impl-side painting we need wait until the active tree is without evicted resources before we can draw. This moves the ContentsTexturesPurged state from LTHI to the LTI and makes LTHI::canDraw() return false when the active LTI has ContentsTexturesPurged set. The result is no change in behavior when we only have one tree, while with impl-side painting when we have two trees, canDraw() will not return true until the new tree without ContentsTexturesPurged set has been activated. BUG=170157 Review URL: https://chromiumcodereview.appspot.com/11886091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177532 0039d316-1c4b-4281-b951-d872f2087c98
* Separate scrollbar animation controller from scrollbar positioningjamesr@chromium.org2013-01-1716-278/+219
| | | | | | | | | | | | | | | | ScrollbarAnimationController only has one subclass that does anything (SACLinearFade) and that subclass only controls the scrollbar's opacity. This moves the scrollbar positioning logic out of ScrollbarAnimationController completely and makes the scrollable LayerImpl in charge of moving its scrollbars. This is needed since we only want the opacity animation behavior on the active tree, but we need to keep scroll positions up to date on the pending tree. BUG=169143 Review URL: https://chromiumcodereview.appspot.com/11931033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177505 0039d316-1c4b-4281-b951-d872f2087c98
* Enabling the TileGrid acceleration structure for cc picture playbackjunov@chromium.org2013-01-171-4/+7
| | | | | | | | | | BUG=164636 TEST=telemetry scrolling benchmarks Review URL: https://chromiumcodereview.appspot.com/11882004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177421 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 177288ilevy@chromium.org2013-01-1715-160/+58
| | | | | | | | | | | | | | | | | | | | | | | > 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: Clarify the uvRect used for RenderSurfaces and support masks with ↵danakj@chromium.org2013-01-172-19/+148
| | | | | | | | | | | | | | | | | | | | different bounds. The texture coords for the mask layer go from 0.0 to 1.0, so there is no need to scale between the size of the mask texture and the render surface texture. The uv rect is there to scale between the unclipped render surface coordinates and the clipped render surface texture. So make this explicit in the code. This remove the mask layer's content size completely from the equations. Tests: cc_unittests:LayerTreeHostImplTest.maskLayerWithDifferentBounds R=piman BUG=170076 Review URL: https://chromiumcodereview.appspot.com/11968007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177337 0039d316-1c4b-4281-b951-d872f2087c98
* fix to improve performance of TilePositionwhunt@chromium.org2013-01-171-6/+6
| | | | | | | | | | | The function that calculated tile offset from an index was O(n) rather than constant time. BUG=170035 Review URL: https://chromiumcodereview.appspot.com/11967006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177336 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix thread proxy releasing commit earlyenne@chromium.org2013-01-172-3/+9
| | | | | | | | | | | | | | | Drawing during the middle of a commit is a reasonable thing to do in non-impl-side painting mode due to throttled uploads. Therefore, guard the tree activation on the impl-side painting flag rather than just DCHECKing. R=nduca@chromium.org BUG=170534 Review URL: https://chromiumcodereview.appspot.com/11956033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177334 0039d316-1c4b-4281-b951-d872f2087c98
* cc: add PaintTimeCounter to keep track of per frame paint timeegraether@chromium.org2013-01-176-0/+111
| | | | | | | | | | | | | This change adds the new PaintTimeCounter class to the LayerTreeHostImpl. It uses a RingBuffer to keep track of per frame paint times, which will be visualized in continuous painting mode. depends on: https://codereview.chromium.org/11817011 BUG= Review URL: https://chromiumcodereview.appspot.com/11827009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177332 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add picture pile base classenne@chromium.org2013-01-1710-93/+130
| | | | | | | | | | | | | | PicturePile and PicturePileImpl are too similar and share nearly the same data members, so merging this code will make it easier to change the underlying PicturePile storage. R=danakj@chromium.org BUG=167213 Review URL: https://chromiumcodereview.appspot.com/11971024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177325 0039d316-1c4b-4281-b951-d872f2087c98
* Define cc::TransformOperations and webkit::WebTransformOperationsImplajuma@chromium.org2013-01-1711-0/+1175
| | | | | | | | | | | | This ports the implementation of WebTransformOperations into cc::TransformOperations, Also, behind #if WEB_TRANSFORM_OPERATIONS_IS_VIRTUAL, this makes cc use TransformOperations instead of WebTransformOperations; defines a new class WebTransformOperationsImpl that implements WebTransformOperations using an instance of cc::TransformOperations; defines WebCompositorSupportImpl::createTransformOperations; and makes compositor_bindings use WebTransformOperationsImpl instead of WebTransformOperations (extracting the underlying cc::TransformOperations before calling into cc). This is step 1 of the 3-step plan outlined at https://chromiumcodereview.appspot.com/11745018 for moving the implementation of WebTransformOperations into chromium. BUG=166640 Review URL: https://chromiumcodereview.appspot.com/11876016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177290 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add point-based UV coordinate on TextureLayerjscholler@chromium.org2013-01-1715-58/+160
| | | | | | | | | | | | | | 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
* cc: Do not request redraw on commit when impl-side paintingbrianderson@chromium.org2013-01-1711-57/+179
| | | | | | | | | | | When impl-side painting, we draw when the pending tree becomes active and should no longer draw on commit. BUG=168724 Review URL: https://chromiumcodereview.appspot.com/11830040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177274 0039d316-1c4b-4281-b951-d872f2087c98
* Remove top controls layer from cc/.tedchoc@chromium.org2013-01-164-38/+0
| | | | | | | | | | | | | | | | | | | After danakj@ comment on the CL that added the top controls manager, I looked into layer positioning in the browser compositor to keep it in sync with the top controls UI widgets. This removes the need for the top controls layer and also gets rid of the need to pass an increased clip size to the layer tree host. Now the renderer compositor will make the webkit size and the browser compositor will be in charge of moving it around. BUG=161303 Review URL: https://chromiumcodereview.appspot.com/11967021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177250 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Block the main thread for texture layers during impl-side paintingenne@chromium.org2013-01-166-3/+48
| | | | | | | | | | | | This patch adds an additional completion event to thread proxy. Right now, it checks for the lack of a pending tree after drawing (which is currently where tree activation is triggered). R=nduca@chromium.org BUG=164993 Review URL: https://chromiumcodereview.appspot.com/11710004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177218 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add iterator and big border support to TilingDataenne@chromium.org2013-01-163-14/+451
| | | | | | | | | | R=danakj@chromium.org BUG=167213 Review URL: https://chromiumcodereview.appspot.com/11887027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177168 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Fix tree activation when invisible layers exist.reveman@chromium.org2013-01-162-4/+12
| | | | | | | | | | | | bool() operator for PictureLayerTiling::Iterator should return false for iterator instances with empty dest_rect_. BUG=169980 Review URL: https://chromiumcodereview.appspot.com/11946008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177132 0039d316-1c4b-4281-b951-d872f2087c98
* [cc] Use base::TimeTicks in RenderStatsnduca@chromium.org2013-01-1610-41/+36
| | | | | | Review URL: https://chromiumcodereview.appspot.com/11896002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177112 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Test to verify the order of the transforms when mapping to the delegated ↵danakj@chromium.org2013-01-162-8/+20
| | | | | | | | | | | | | | | renderer layer Verify that the transforms are concatenated in the correct order by putting a scale in each of them BUG=123444 R=enne Review URL: https://chromiumcodereview.appspot.com/11825014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177107 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Set the max frames pending from the thread proxy.danakj@chromium.org2013-01-168-14/+94
| | | | | | | | | | | | | | | | When a parent compositor is present (ie, ubercompositor), throttle to a single pending frame. Tests: LayerTreeHostTestMaxPendingFrames.DelegatingRenderer LayerTreeHostTestMaxPendingFrames.GLRenderer BUG=123444 Review URL: https://chromiumcodereview.appspot.com/11747002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177104 0039d316-1c4b-4281-b951-d872f2087c98
* Mark textures allocated by impl-side painting's ResourcePool asccameron@chromium.org2013-01-161-1/+1
| | | | | | | | | | | | | | | being managed (in the sense of being managed by the GpuMemoryManager). Without this, the memory allocated by the compositor is treated as though it were, say, WebGL memory, and then marked as not being available to the compositor, resulting in chaos. BUG=168413 Review URL: https://chromiumcodereview.appspot.com/11938003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177096 0039d316-1c4b-4281-b951-d872f2087c98
* This change makes the timestamp saving functionality of the FrameRateCounter ↵egraether@chromium.org2013-01-166-65/+116
| | | | | | | | | | | reuseable by abstracting it to a new RingBuffer class. BUG= Review URL: https://chromiumcodereview.appspot.com/11817011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177083 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for calculating the position of the top controls in the cc layer.tedchoc@chromium.org2013-01-1615-7/+582
| | | | | | | | | | | | | Provides a means for keeping the top controls in sync with the currently renderered frame, which will allow us to move the top controls around the screen. BUG=161303 Review URL: https://chromiumcodereview.appspot.com/11552009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177081 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Implement DelegatingRender::drawFrame() method.danakj@chromium.org2013-01-1639-77/+384
| | | | | | | | | | | | | | | | | | 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: Fix lost context handling when using impl-side painting.reveman@chromium.org2013-01-165-4/+59
| | | | | | | | | | | | | | Make sure all tile references are dropped from active and pending tree before the tile manager is destroyed. Also call CheckForCompletedSetPixels() in tile manager destructor to ensure all tiles with pending set pixels are deleted. BUG=169919 Review URL: https://chromiumcodereview.appspot.com/11883030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177056 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Move tile sorting into separate function and add trace event.reveman@chromium.org2013-01-162-2/+9
| | | | | | | | | | BUG=155209 R=nduca@chromium.org Review URL: https://chromiumcodereview.appspot.com/11879007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177050 0039d316-1c4b-4281-b951-d872f2087c98
* cc: fix HudLayer's RGB ordering on Androidegraether@chromium.org2013-01-151-2/+3
| | | | | | | | | | | This change deactivates the RGBA to BGRA swizzling on the HudLayer for builds using RGBA shaders (Android). BUG=169345 Review URL: https://chromiumcodereview.appspot.com/11885022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176919 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Add tiling data unittestsenne@chromium.org2013-01-152-0/+594
| | | | | | | | | | | | | | | | | | These are moved / chromified from the WebKit source. The only other authors and reviewers (other than myself) were jamesr and reveman, so this is fine from a license reassignment perspective. The only modifications from the WebKit tests are that the negative width / negative height cases have been removed, as they are not valid in Chromium. R=jamesr@chromium.org BUG=167213 Review URL: https://chromiumcodereview.appspot.com/11880033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176904 0039d316-1c4b-4281-b951-d872f2087c98
* Remove duplicate pushPropertiesTo call for mask/replica layersjamesr@chromium.org2013-01-151-5/+0
| | | | | | | | | | | | | TreeSynchronizer iterates through mask and replica children and calls pushPropertiesTo() on them. Layer::pushProperties() doesn't need to make these calls as well, they're redundant. BUG= Review URL: https://chromiumcodereview.appspot.com/11889023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176862 0039d316-1c4b-4281-b951-d872f2087c98
* Fix masks when scaling is in the treepiman@chromium.org2013-01-152-2/+141
| | | | | | | | | | | | | Because the render surface is sized according to the screen-space footprint, there is a scaling factor introduced between the RS and the owning layer, that was not taken into account for masks. This fixes that. BUG=163045 Review URL: https://chromiumcodereview.appspot.com/11883027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176850 0039d316-1c4b-4281-b951-d872f2087c98
* cc: remove continuous painting invalidations from LayerTreeHostegraether@chromium.org2013-01-152-19/+0
| | | | | | | | | | | This change removes the setNeedsDisplay invalidation on each layer in continuous painting mode from LayerTreeHost. The invalidations are done in WebKit instead, because it is easier to exclude overlay layers: http://trac.webkit.org/changeset/139531 BUG= Review URL: https://chromiumcodereview.appspot.com/11876024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176835 0039d316-1c4b-4281-b951-d872f2087c98
* Migrate more functions from MathUtil to gfx::Transformshawnsingh@chromium.org2013-01-1515-1293/+51
| | | | | | | | | | | | | 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
* Revert 176739reveman@google.com2013-01-153-15/+24
| | | | | | | | | | | | | | | | | | Caused an unexpected change in behavior. > cc: Move anti-aliasing decision to parent compositor. > > This moves the final anti-aliasing decision to the renderer where > the exact tile transformation is known. > > BUG=169163 > > > Review URL: https://chromiumcodereview.appspot.com/11829047 TBR=reveman@chromium.org Review URL: https://codereview.chromium.org/11876034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176765 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Sort impl-side painting tiles by content rectenne@chromium.org2013-01-151-3/+8
| | | | | | | | | | | | | This will let tiles be rastered in a more reasonable order, i.e. left to right, top to bottom. R=nduca@chromium.org BUG=169837 Review URL: https://chromiumcodereview.appspot.com/11885023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176761 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Move anti-aliasing decision to parent compositor.reveman@chromium.org2013-01-143-24/+15
| | | | | | | | | | | | This moves the final anti-aliasing decision to the renderer where the exact tile transformation is known. BUG=169163 Review URL: https://chromiumcodereview.appspot.com/11829047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176739 0039d316-1c4b-4281-b951-d872f2087c98
* Move pending tile priorities to active on tree activationbrianderson@chromium.org2013-01-1310-0/+42
| | | | | | | | | | | | This prevents our tile priorites from being stale when the pending tree becomes active. BUG=166780 Review URL: https://chromiumcodereview.appspot.com/11856003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176601 0039d316-1c4b-4281-b951-d872f2087c98
* Decouple texture upload checks, tree activation, and drawing.brianderson@chromium.org2013-01-1212-42/+55
| | | | | | | | | | | | | | | | | | | | | This prevents us from drawing more often than we need to when impl-side-painting is enabled. It removes the concept of scheduling checkForCompletedSetPixels, instead checking for completed uploads 1) before determining whether or not to make the pending tree active and 2) before drawing. Tree activation is handled in two places now: 1) before calculating animations and 2) before a vsync tick. When a pending tree is activated, a request to draw is made. BUG=168724 Review URL: https://chromiumcodereview.appspot.com/11823043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176596 0039d316-1c4b-4281-b951-d872f2087c98