| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
BUG=None
Review URL: https://codereview.chromium.org/64123007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@234834 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
I suspect this cast/function call is the cause of the performance
issue in the associated bug. Keeping this in double precision is
unnecessary.
BUG=303811
Review URL: https://codereview.chromium.org/26594010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228330 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds the equivalent of std::partition to ScopedPtrVector.
This can be used to achieve a similar idiom to the following.
v.erase(std::remove_if(v.begin(), v.end(), Predicate), v.end())
remove_if isn't appropriate for ScopedPtrVector, since it doesn't
guarantee that all of the elements will still be in the container,
but partition can do roughly the same thing (with the exception
that the predicate has to be the negative version of remove_if one).
If v is a ScopedPtrVector, usage would be
v.erase(v.partition(WhatToKeepPredicate), v.end());
R=enne@chromium.org
Review URL: https://codereview.chromium.org/26497005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227796 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Plumb the flag to blink and the compositor.
Disable by default in Android webview for now.
Depends on blink CL: https://src.chromium.org/viewvc/blink?view=rev&revision=158956
BUG=303945
Review URL: https://codereview.chromium.org/25904004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227511 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch makes the region simplification happen after each union,
to make sure that if there are a lot of invalidations, the performance
doesn't degrade too much.
BUG=303757
R=enne@chromium.org
Review URL: https://codereview.chromium.org/25828004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226853 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tiles are actually being correctly cleaned up at the end of
the test, but it seems that it accumulates quite a few of them
and times out at the end. This patch ensures that all of the tiles
are cleaned up after each invalidate run.
R=reveman@chromium.org
BUG=298999
Review URL: https://codereview.chromium.org/24487007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225666 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is somewhat proof-of-concept to make ManageTiles be the only
spot where tiles can be deleted. This allows all function calls between
two ManageTiles calls to assume that the state has not changed.
BUG=
Review URL: https://codereview.chromium.org/24331009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225389 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change also cleans up the use of gfx::Transform::get/setDouble
(in favor of get/set) at callsites to prepare for changing SkMScalar
from double to float.
BUG=269817
Originally Committed/Reverted: https://src.chromium.org/viewvc/chrome?view=rev&revision=224725
Review URL: https://chromiumcodereview.appspot.com/23811009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225130 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reverting as caused perf regression because of new static
initializers.
> Fix compilation and ui_unittests with float transforms
>
> This change also cleans up the use of gfx::Transform::get/setDouble
> (in favor of get/set) at callsites to prepare for changing SkMScalar
> from double to float.
>
> BUG=269817
>
> Review URL: https://chromiumcodereview.appspot.com/23811009
TBR=enne@chromium.org
Review URL: https://codereview.chromium.org/23537065
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224732 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change also cleans up the use of gfx::Transform::get/setDouble
(in favor of get/set) at callsites to prepare for changing SkMScalar
from double to float.
BUG=269817
Review URL: https://chromiumcodereview.appspot.com/23811009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224725 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
had a bug in async_pixel_transfer_manager_egl.cc that wasn't directly related to the 4444 support. This patch includes the rest of the files in r223830. Changes to async_pixel_transfer_manager_egl.cc have been moved to the separate patch after fixing the bug: https://codereview.chromium.org/23533067/
BUG=272539
Review URL: https://chromiumcodereview.appspot.com/23447048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224040 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 8e6d15826280b9f11a28060b5b2d2bbef17d15bc (r223830; http://crrev.com/21159007).
Although the 4444 textures work on S4, they break on N7v2 and N10.
(We've got inconsistent reports about N4.)
Passing --disable-4444-textures isn't sufficient to fix the problems.
ilevy@ points out that the commit bot is using GN, so could easily have missed this breakage. We're hoping to switch to N4, but in this case there's no guarantee that that would have caught it either.
Perhaps the main patch can be landed in pieces next time?
From N7:
E/chromium(32513): [ERROR:gles2_cmd_decoder.cc(5770)] [.RenderCompositor-0x783c9880]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering or is not 'texture complete'
From N10:
I/chromium( 2104): [INFO:CONSOLE(0)] "[.WebGLRenderingContext]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering or is not 'texture complete'", source: file:///sdcard/clanktemp/index.html (0)
R=skyostil@chromium.org
TBR=kaanb@chromium.org
BUG=245774,272539
Review URL: https://codereview.chromium.org/24219002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223871 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=245774,272539
Review URL: https://chromiumcodereview.appspot.com/21159007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223830 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=287900
Review URL: https://chromiumcodereview.appspot.com/23578029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222903 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=269819
Review URL: https://chromiumcodereview.appspot.com/23043011
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222683 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=156199
Review URL: https://chromiumcodereview.appspot.com/23653002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220488 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
The software renderer should only try to draw portions of quads that are within visible_rect, which will reduce overdraw in the browser compositor.
BUG=276069
Review URL: https://chromiumcodereview.appspot.com/22815022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219763 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=261649
Review URL: https://chromiumcodereview.appspot.com/22870031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219666 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds AddValue support to FrameData, RenderPass, *DrawQuad, FilterOperations, etc.
It also adds an optional 'frame' field to the LTHI state which is the frame
being produced at this point, with everything mentioned above.
BUG=None
R=danakj@chromium.org, nduca@chromium.org, vmpstr@chromium.org
Review URL: https://codereview.chromium.org/20667002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216782 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Skia provides a point mapping method, so we don't need to roll
our own. This deletes some unnecessary code and with any luck compiles
to faster code.
NOTRY=true
BUG=none
Review URL: https://chromiumcodereview.appspot.com/21161004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214719 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This has helped a lot in finding the recent
issues with AA. It's also always disabled on
the Android browser compositor since we do our
own feathered edges there.
BUG=233101,256474,259154
Review URL: https://chromiumcodereview.appspot.com/19236005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212990 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Our invalidation regions can get very large in terms of the number
of containing rects, so unioning two of these regions causes a crash
(out of memory) on certain heavy pages. Using a simplified region
helps both performance in terms of time and in terms of memory.
BUG=260626
Review URL: https://chromiumcodereview.appspot.com/19395002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212494 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds the ability to interpolate between pairs of
cc::FilterOperations. This is needed for threading filter
animations.
BUG=181613
Review URL: https://chromiumcodereview.appspot.com/18690006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211937 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch gets rid of the cc-only trace-to-vlog stuff and replaces it with a
general trace-to-console approach that can be used everywhere, even the
browser.
BUG=None
Review URL: https://chromiumcodereview.appspot.com/18174006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211245 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Color estimator has been running for some time now, and it seems
to be stable. This change removes the piping of the flag down to
where it's used. The flag is still in the code for easy debugging.
R=reveman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18370002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209568 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This makes sync and net compile with no "using *Value".
BUG=
Review URL: https://codereview.chromium.org/17034006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207907 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CC currently has three (3) ways to dump layers: LayerTreeAsText,
LayerTreeAsJSON, and AsValue.
LayerTreeAsText is the least useful due to the fact that if you have
more than a few layers it falls off the bottom of the screen. Its layer
printing abilities have been entirely replaced (in my opinion) with
TraceViewer's ability to capture frames.
R=nduca@chromium.org
BUG=none
Review URL: https://chromiumcodereview.appspot.com/17351009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207596 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These classes are replaced by using base::SingleThreadTaskRunner
directly.
R=piman,jamesr
BUG=251134
Depends on: https://codereview.chromium.org/17362002/
Review URL: https://chromiumcodereview.appspot.com/17114008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207491 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=
Review URL: https://chromiumcodereview.appspot.com/17094004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207475 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes from using cc::Thread to base::SingleThreadTaskRunner in
FrameRateController, DelayBasedTimeSource, and ResourceUpdateController.
Then all unit tests for these classes are switched from using
cc::FakeThread to base::TestSimpleTaskRunner.
This is a step toward deleting cc::Thread and moving to using
MessageLoopProxy directly in cc.
R=piman
BUG=251134
Review URL: https://chromiumcodereview.appspot.com/17362002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207027 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
Disabling impl-side painting in general on GoogleTV
(https://codereview.chromium.org/14190008) is causing
a problem loading pages. This CL reverts the change.
Review URL: https://chromiumcodereview.appspot.com/16879005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206803 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
R=jamesr
BUG=
Review URL: https://chromiumcodereview.appspot.com/17004002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206263 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/16844016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206232 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes it easier to unit test the task graph construction code and
gives derived worker pool classes the ability to more efficiently construct
the graph.
BUG=247922
TEST=cc_unittests --gtest_filter=WorkerPoolTest.*
Review URL: https://chromiumcodereview.appspot.com/16378006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206070 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This is the result of running the rewrite_scoped_ptr_ctor_null tool
across all files built on Linux in the cc/ directory.
BUG=173286
Review URL: https://chromiumcodereview.appspot.com/16355009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205810 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Remove forwarding header
BUG=
R=avi@chromium.org
Review URL: https://codereview.chromium.org/16667019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205584 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This upates calls to bound temporary objects to also use get().
While it has the same semantic equivalence to the existing code, this generally
represents a dangerous pattern - indeed, part of the whole motivation for this
change is to make this anti-pattern very visible to authors.
This change simply updates all of the call sites, to allow the "operator T*"
to be removed and preventing new instances. The existing instances will then be
reviewed for "suspicious" changes and updated to use/pass scoped_refptr<T>
rather than T*, as appropriate.
BUG=110610
TBR=darin
Review URL: https://codereview.chromium.org/15984016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205560 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=247723
TEST=none
TBR=ben@chromium.org
Review URL: https://chromiumcodereview.appspot.com/15981007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205325 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This keeps the forwarding header, just updates all current callers.
BUG=
R=avi@chromium.org
Review URL: https://codereview.chromium.org/16514006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205306 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This moves the task completion check interval into the
PixelBufferRasterWorkerPool and allows ImageRasterWorkerPool
to run at full speed.
BUG=246185
TEST=
Review URL: https://chromiumcodereview.appspot.com/16527005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205064 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Idle detection is easy to do outside the worker pool now that we
have a task graph. This moves idle detection to the RasterWorkerPool
class.
BUG=246175
TEST=cc_unittest --gtest_filter=BasicRasterWorkerPoolTest.*
Review URL: https://chromiumcodereview.appspot.com/15969008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204201 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Refactor RasterWorkerPool interface such that it can be used
to implement different type of resource updates mechanisms.
The result is that the tile manager is no longer aware of
the need to perform uploads. This cleans up the tile manager
code significantly and allow zero copy resource updates to
be properly supported.
BUG=241644
TEST=cc_unittest --gtest_filter=BasicRasterWorkerPoolTest.*
Review URL: https://chromiumcodereview.appspot.com/16190002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203670 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Linux fixes
BUG=110610
TBR=enne
Review URL: https://chromiumcodereview.appspot.com/15984004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203584 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a task graph interface to the worker pool and
implements a simple queue instance of this interface for
use by the tile manager.
The task graph interface can be used describe more
complicated task dependencies in the future and
provides the immediate benefit of seamlessly being
able to cancel and re-prioritize tasks.
BUG=178974,244642
TEST=cc_unittests --gtest_filter=WorkerPoolTest.Dependencies
Review URL: https://chromiumcodereview.appspot.com/14689004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203041 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new scheduling approach consists of both changes to how frames are scheduled
and when input events are processed. This patch renames a switch for the former
and adds a switch for the latter, to be used for ongoing development.
BUG=240945
Review URL: https://chromiumcodereview.appspot.com/16043002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202993 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> cc: Cancel and re-prioritize worker pool tasks.
>
> This adds a task graph interface to the worker pool and
> implements a simple queue instance of this interface for
> use by the tile manager.
>
> The task graph interface can be used describe more
> complicated task dependencies in the future and
> provides the immediate benefit of seamlessly being
> able to cancel and re-prioritize tasks.
>
> BUG=178974
>
> Review URL: https://chromiumcodereview.appspot.com/14689004
TBR=reveman@chromium.org
Review URL: https://codereview.chromium.org/16178002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202736 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This flag will protect the refactoring work for the pinch virtual viewport.
TBR=cevans@chromium.org
BUG=none
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/15567005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202453 0039d316-1c4b-4281-b951-d872f2087c98
|