| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
BUG=154451
TEST=cc_unittests
R=enne@chromium.org,jamesr@chromium.org
Review URL: https://codereview.chromium.org/11094059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161408 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This transitively involved cleaning up RateLimiter and the types that CCProxy,
CCPrioritizedTextureManager, and CCPrioritizedTexture are stored in.
This is a relanding of https://chromiumcodereview.appspot.com/11035071.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11091028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@161002 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a rebased version of twiz's patch in 10916279.
Corresponding WK change: https://bugs.webkit.org/show_bug.cgi?id=93292
BUG=148816
Review URL: https://chromiumcodereview.appspot.com/11094004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160730 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=151428
Review URL: https://chromiumcodereview.appspot.com/11070007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160722 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This transitively involved cleaning up RateLimiter and the types that CCProxy,
CCPrioritizedTextureManager, and CCPrioritizedTexture are stored in.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11035071
TBR=enne@chromium.org
Review URL: https://codereview.chromium.org/11047034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160636 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This transitively involved cleaning up RateLimiter and the types that CCProxy,
CCPrioritizedTextureManager, and CCPrioritizedTexture are stored in.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11035071
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160623 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11031079
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160589 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pulling on this string ends up touching a lot of code, but it's all fairly
mechanical. The only unfortunate part of this patch that it's not easy to pass
a scoped_ptr through CCThreadTask (so it just sends a raw pointer), but this
can get fixed after CCThreadTask switches to using base/.
BUG=154451
Review URL: https://chromiumcodereview.appspot.com/11065046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160580 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=151428
Review URL: https://chromiumcodereview.appspot.com/11047003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159786 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=151428
Review URL: https://chromiumcodereview.appspot.com/10987102
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159546 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This improves resource update throughput while still maintaining minimal
jank during impl side animations. Also allows us to remove resource update
state from scheduler as vsync ticks are now only required when a redraw
is pending.
BUG=145825
TEST=cc_unittests
Review URL: https://chromiumcodereview.appspot.com/10990037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159173 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of doubles.
Instead of using double seconds, this converts the update controller logic
to use base::TimeTicks and base::TimeDelta.
BUG=
TEST=cc_unittests
Review URL: https://chromiumcodereview.appspot.com/10982067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159094 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This data is preserved in minidumps. Once I have some samples, I will revert this checkin.
BUG=151428
Review URL: https://chromiumcodereview.appspot.com/10993051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158980 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=151456
Review URL: https://chromiumcodereview.appspot.com/10914304
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158950 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
After stopping to throttle partial uploads this option is no longer needed.
BUG=
TEST=cc_unittests
Review URL: https://chromiumcodereview.appspot.com/10961008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158192 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
Review URL: https://codereview.chromium.org/10947047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158005 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of using double seconds, this converts the scheduler and timer logic
in libcc to use base::TimeTicks and base::TimeDelta. This puts the units in
the type system instead of variable names and comments making second/millisecond
confusion less likely and integrates better with the rest of chromium.
BUG=
Review URL: https://chromiumcodereview.appspot.com/10956006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157783 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enable removing uploads to evicted textures from texture upload queues. Track whether not a CCPrioritizedTexture::Backing has been evicted in the structure itself. Purge texture upload queues of evicted backings instead of clearing the entire queue.
Added CCTextureUpdateControllerTest.ClearUploadsToEvictedResources to test the new eviction logic.
BUG=134750
Review URL: https://chromiumcodereview.appspot.com/10947017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157662 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Synopsis of changes below:
[chromium] Evict textures through the texture manager instead of the resource provider
https://bugs.webkit.org/show_bug.cgi?id=96463
Reviewed by NOBODY (OOPS!).
When deleting contents textures' resources on the impl thread, do the
deletion through the CCPrioritizedTextureManager instead of the
CCResourceProvider.
This requires traversing the backings list on the impl thread while
the main thread is running, so remove the one remaining traversal of
the backings list by the main thread. This traversal happens when
unlinking textures that were evicted by the impl thread, so explicitly
send the list of evicted backings from the impl thread to the main thread.
Unify all resource deletion paths in the CCPrioritizedTextureManager.
Always perform the sequence of eviction (deleting the GL resource) and
then destruction of evicted backings (deleting the objects). Also,
use the same function (evictBackingsToReduceMemory) to reduce memory
consumption both during commit and when done by the impl thread in response
to a request by the GPU memory manager.
Note that destroying only some of the resources at a time during texture
eviction (as opposed all resources) is still not supported because the
texture upload queues cannot be only-partially invalidated yet.
Updated tests to take this behavior into account.
[chromium] Make prioritized texture manager not touch backings array on the main thread
https://bugs.webkit.org/show_bug.cgi?id=96114
Reviewed by NOBODY (OOPS!).
Take a snapshot of the textures' priorities from the main thread,
and save it in their backings for access by the impl thread.
Update functions that access the sorted backings array to use the
snapshotted values instead of the values that the main thread may
have computed for the next frame.
Make the main thread not touch the m_backings array. Split
prioritizeTextures into a updateBackingsPriorities function.
In places where the main thread would have touched m_backings,
set a flag specifying that m_backings needs to be re-sorted
before any function that requires it be sorted by priority be
executed.
Update the two functions that require sorted order (acquireBacking
and reduceMemory) to sort the backings array (if needed) before
traversing it.
Updated tests to set correct thread during asserts. Add a test to
verify that requestLate is correctly incorporated into the backing
sorting.
Review URL: https://chromiumcodereview.appspot.com/10919320
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157412 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
These don't really belong to the CCRenderer, and this way we share a bit more between renderers.
BUG=None
Review URL: https://chromiumcodereview.appspot.com/10917251
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157289 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The texture update controller now completes when all full size texture
uploads are done and the texture uploader isn't busy. All partial
texture updates are now done at the same time as commit.
BUG=149194
TEST=cc_unittests
Review URL: https://codereview.chromium.org/10917265
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157220 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These files no longer are part of WebCore, so it doesn't make any sense to keep
that namespace.
Due to being unable to forward declare typedefs in C++, the stubs files (like
FloatSize) now define cc::FloatSize as being derived from WebCore::FloatSize.
With enough constructors, this lets them be used interchangably in the short
term until those geometry classes become real and not dependent on WebCore
files. This allows (nearly) all the forward declarations and uses of these
types in cc stay as-is with minimal churn.
BUG=none
Review URL: https://codereview.chromium.org/10914268
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156905 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add updateResourcesComplete callback to CCScheduler and use this to
indicate completion of texture updates instead of calling
CCSchedulerClient::hasMoreResourceUpdates when receiving a vsync tick.
WebKit bug: https://bugs.webkit.org/show_bug.cgi?id=94721
BUG=123399,147651
TEST=Added CCTextureUpdateControllerTest.UpdateMoreTextures, CCTextureUpdateControllerTest.HasMoreUpdates and CCTextureUpdateControllerTest.UpdatesCompleteInFiniteTime to cc_unittests.
Review URL: https://chromiumcodereview.appspot.com/10911262
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156669 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLES imlementation now handles this case properly and returns the correct
value from glGetQueryObjectuivEXT when the context is lost.
BUG=
TEST=cc_unittests
Review URL: https://chromiumcodereview.appspot.com/10914236
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156623 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Specifically this brings in r128196 and 128005
BUG=
Review URL: https://chromiumcodereview.appspot.com/10919227
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156412 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=148610
Review URL: https://chromiumcodereview.appspot.com/10905231
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156410 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=nduca@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10917153
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155554 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TBR=nduca@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10907075
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155034 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
With this, webkit_compositor_unittests successfully runs+builds and it's
possible to start implemented WebCompositorSupport
BUG=
Review URL: https://chromiumcodereview.appspot.com/10920059
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154559 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These are unit tests of the webkit compositor bindings that bind the
WebKit Platform Web*Layer* family of APIs to cc. They currently depend
on some test utilities in cc.
Also updates snapshot to WebKit r127194
BUG=
Review URL: https://chromiumcodereview.appspot.com/10909020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154307 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TBR=nduca@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10889048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154239 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=
TBR=nduca@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10898023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153839 0039d316-1c4b-4281-b951-d872f2087c98
|
|
bindings in chromium. Everything is guarded behind the off-by-default use_libcc_for_compositor gyp variable. I haven't included the actual code here, but there are scripts to sync. I plan to land + manually sync the code into place until we're ready to flip the gyp switch.
Snapshot from r126652
BUG=
Review URL: https://chromiumcodereview.appspot.com/10828381
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153354 0039d316-1c4b-4281-b951-d872f2087c98
|