summaryrefslogtreecommitdiffstats
path: root/cc/single_thread_proxy.cc
Commit message (Collapse)AuthorAgeFilesLines
* cc: Remove CC*.h temporary includes, part 6/4.tfarina@chromium.org2012-10-241-2/+2
| | | | | | | | | | | | 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
* cc: Remove CC*.h temporary includes, part 5/4.tfarina@chromium.org2012-10-231-1/+1
| | | | | | | | | | | | BUG=155413 TEST=cc_unittests R=enne@chromium.org,jamesr@chromium.org TBR=jamesr@chromium.org Review URL: https://chromiumcodereview.appspot.com/11225040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163479 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Rename cc classes and members to match filenamesenne@chromium.org2012-10-221-64/+64
| | | | | | | | | | | 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
* Conditionalize memory allocation limit based on visibilityccameron@chromium.org2012-10-221-2/+2
| | | | | | | | | | | | | | | | | | Replace the single value with a ManagedMemoryPolicy structure which has the limit in bytes when visible and when not visible, and also has a priority cutoff when visible and when not visible. In CCRendererClient, separate the methods for specifying and enforcing a memory policy. This is so that one may decrease the consumption of a renderer that has grown over time, without disallowing growth in the future. BUG=134750 Review URL: https://chromiumcodereview.appspot.com/11196038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163420 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
* Revert "cc: Rename cc classes and members to match filenames"enne@chromium.org2012-10-191-64/+64
| | | | | | This reverts commit 184fac5add06d5f4670fa6be4a4d3b39232d51bb. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163059 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Rename cc classes and members to match filenamesenne@chromium.org2012-10-191-64/+64
| | | | | | | | 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
* Reland "cc: Remove CC*.h temporary includes, part 1/4."tfarina@chromium.org2012-10-191-2/+2
| | | | | | | | | | | | | | | | 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
* Revert r162986 "cc: Remove CC*.h temporary includes, part 1/4."pfeldman@chromium.org2012-10-191-2/+2
| | | | | | | Build fails with "gclient hooks failed" error. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162988 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Remove CC*.h temporary includes, part 1/4.tfarina@chromium.org2012-10-191-2/+2
| | | | | | | | | | | 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: Remove all but one texture uploader class.reveman@chromium.org2012-10-191-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reduces the number of texture uploader classes from 4 to 1. - TextureUploader - ThrottledTextureUploader - UnthrottledTextureUploader - LayerTextureSubImage becomes - TextureUploader and it lives behind the CCResourceProvider interface where the LayerTextureSubImage instance used to be. This also makes the call stack when performing a texture upload less awkward. It used to look like this: CCTextureUpdateController::updateMoreTexturesNow() -> ThrottledTextureUploader::updateTexture() -> CCPrioritizedTexture::upload() -> CCResourceProvider::upload() -> LayerTextureSubImage::upload() -> glTexSubImage2D() but now looks like this: CCTextureUpdateController::updateMoreTexturesNow() -> CCPrioritizedTexture::upload() -> CCResourceProvider::upload() -> TextureUploader::upload() -> glTexSubImage2D() which makes a lot more sense considering that CCTextureUpdateController::updateMoreTexturesNow() should really be called CCResourceUpdateController::updateMoreResourcesNow() and CCPrioritizedTexture::upload() should be CCPrioritizedResource::update(). This is only refactoring and should not change the behavior of the compositor in any way. BUG= TEST=cc_unittests Review URL: https://chromiumcodereview.appspot.com/11188055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162951 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Switch to Chromium DCHECKs LOGsdanakj@chromium.org2012-10-181-24/+24
| | | | | | | | | | | | | | | 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
* cc: Remove wtf usage from test codeenne@chromium.org2012-10-181-2/+0
| | | | | | | | | | | This incidentally cleans up time source and layer sorter. R=jamesr@chromium.org BUG=154451 Review URL: https://codereview.chromium.org/11188011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162731 0039d316-1c4b-4281-b951-d872f2087c98
* Remove TraceEvent stub header from ccjamesr@chromium.org2012-10-181-1/+1
| | | | | | | | | | | | | | We can just use base/debug/trace_event.h directly. Unfortunately, this produces several more LOG macro collisions between wtf/Assertions.h and base/logging.h. I added a config.h stub to cc/stubs/ to undef LOG for all files in cc and removed the few other overrides we had in place. BUG=154451 Review URL: https://chromiumcodereview.appspot.com/11187035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162692 0039d316-1c4b-4281-b951-d872f2087c98
* Set memory allocation with visibility, instead of through manager.ccameron@chromium.org2012-10-171-3/+5
| | | | | | | | | | | | This change makes tabs drop their backbuffers and memory usage immediately upon receiving a visibility change notification, instead of going indirectly through the GPU memory manager. In the future there will be a separate bytes-and-priority limit for both visible and non-visible states (as opposed to the current bytes-only limit for when you're visible and 0 otherwise). The priority limit allow, say, drop everything but visible content. BUG=134750 Review URL: https://chromiumcodereview.appspot.com/11078017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162507 0039d316-1c4b-4281-b951-d872f2087c98
* Remove use of wtf/ListHashSet from CCPrioritizedTextureManager.ccameron@chromium.org2012-10-171-1/+1
| | | | | | | | | | | We actually don't need the O(1) lookup for backings, so just use a list. BUG=154451 Review URL: https://chromiumcodereview.appspot.com/11195015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162335 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "cc: Switch to Chromium DCHECKs LOGs"mattm@chromium.org2012-10-171-24/+24
| | | | | | | | | | 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
* cc: Switch to Chromium DCHECKs LOGsdanakj@chromium.org2012-10-171-24/+24
| | | | | | | | | | | | | | 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
* Revert 162284 - cc: Get rid of CC*.h temporary header files.mattm@chromium.org2012-10-171-2/+2
| | | | | | | | | | | | 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
* cc: Get rid of CC*.h temporary header files.tfarina@chromium.org2012-10-161-2/+2
| | | | | | | | | | 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
* cc: Remove wtf includes from base / thread / single_thread proxyenne@chromium.org2012-10-161-5/+5
| | | | | | | | | | R=jamesr@chromium.org BUG=154451 Review URL: https://chromiumcodereview.appspot.com/11154028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162077 0039d316-1c4b-4281-b951-d872f2087c98
* Fix issue where textures currently being drawn by the impl thread can be ↵ccameron@chromium.org2012-10-151-7/+5
| | | | | | | | | | | | | | | | | | | | recycled or evicted by the main thread. Explicitly push priorities to their backings when a commit begins, and then update the presence of backings' resources in the impl tree when the trees are synchronized. Note that in the worst case we can momentarily overshoot the texture budget by a factor of two because we keep around both the currently-drawing and the next frame. Make the CCProxy implementations call the PTM directly instead of maintaining a bunch of wrapper functions in CCLayerTreeHost. Make reduceMemory (called when synchronizing trees at the end of a commit) be the one true place where backings structures are deleted (they are just evicted in all other places). Also, we can cut the PTM into a CCPrioritizedTextureManager and CCPrioritizedBackingManager where the former is a main-thread structure and the latter is an impl-thread structure. This change make the PTM follow parts of the commit flow, which will be more explicit with the separate structures. BUG=152496 Review URL: https://chromiumcodereview.appspot.com/11079007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161949 0039d316-1c4b-4281-b951-d872f2087c98
* [cc] Rename all cc/ filenames to Chromium styleenne@chromium.org2012-10-121-0/+385
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