summaryrefslogtreecommitdiffstats
path: root/views/layer_helper.cc
diff options
context:
space:
mode:
authorpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-29 16:17:55 +0000
committerpkotwicz@chromium.org <pkotwicz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-29 16:17:55 +0000
commitc155c2541dc88c972115d28be7b66b152a1bedc3 (patch)
tree4a089075a7d510a4c6d5ce03e11bd8e62095576f /views/layer_helper.cc
parentea04e3db379d4ad27938969b2dc4b59f9e1db557 (diff)
downloadchromium_src-c155c2541dc88c972115d28be7b66b152a1bedc3.zip
chromium_src-c155c2541dc88c972115d28be7b66b152a1bedc3.tar.gz
chromium_src-c155c2541dc88c972115d28be7b66b152a1bedc3.tar.bz2
First pass for eliminating double painting
A simple 3D CSS benchmark shows a 20% improvement in framerate on T25 hardware: an increase from about 30 fps to 36 fps. This is a first pass to getting rid of double painting by introducing a hole in layers Currently a layer which wants its parent not to paint under it will call SetParentLayerHoley There are a number of questions in terms of implementation: 1) We are doing this with layers. We are currently setting all layers to be holey if the touch_ui flag is enabled. Another option is to merge the holey functionality into regular layers. (Get rid of the holey layer subclass) 2) We are always generating vertices matrix, even in the ui::Layer case, is this ok? 3) We are wasting video memory. We are still uploading a full bitmap. I wasn't able to find a function call which would be able to efficiently slice the bigger bitmap, notably changing the origin of where the painting starts (texture upload) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91848 0039d316-1c4b-4281-b951-d872f2087c98 BUG= TEST= Review URL: http://codereview.chromium.org/7330025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94677 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/layer_helper.cc')
-rw-r--r--views/layer_helper.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/views/layer_helper.cc b/views/layer_helper.cc
index 46cf791..96385fd 100644
--- a/views/layer_helper.cc
+++ b/views/layer_helper.cc
@@ -14,6 +14,7 @@ namespace internal {
LayerHelper::LayerHelper()
: bitmap_needs_updating_(true),
+ fills_bounds_opaquely_(false),
layer_updated_externally_(false),
paint_to_layer_(false),
property_setter_explicitly_set_(false),