Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Issue 1080633009: ui: Clean up damaged rects and clear them after painting. (Closed)

Created:
5 years, 8 months ago by danakj
Modified:
5 years, 8 months ago
Reviewers:
sky, piman
CC:
chromium-reviews, Ian Vollick, jam, sievers+watch_chromium.org, jbauman+watch_chromium.org, darin-cc_chromium.org, kalyank, piman+watch_chromium.org, danakj+watch_chromium.org, cc-bugs_chromium.org, enne (OOO), piman, sadrul, sky
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

ui: Clean up damaged rects and clear them after painting. This cleans up some of the damage rects code by converting the SkRegion to a cc::Region, allowing use of gfx::Rects. It moves the recursion over the Layer tree out to Compositor instead of on Layer. And we keep the damaged_region_ valid until the layer is painted. This will allow us to pass that damaged_region_ to the painting code with impl-side slimming paint, because with impl-side painting, the paint clip rect can be larger than the invalidations (as large as the whole layer). R=piman@chromium.org, sky BUG=466426 Committed: https://crrev.com/a5e585868e16ce53c990f764d4943592f11749aa Cr-Commit-Position: refs/heads/master@{#326547} Committed: https://crrev.com/0b5eae6c645b9b25e34322d328eaef00d14aef0f Cr-Commit-Position: refs/heads/master@{#326912}

Patch Set 1 #

Total comments: 5

Patch Set 2 : damagedregion: fixtest #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+44 lines, -41 lines) Patch
M content/browser/compositor/reflector_impl_unittest.cc View 3 chunks +6 lines, -7 lines 0 comments Download
M ui/compositor/compositor.cc View 1 chunk +9 lines, -2 lines 2 comments Download
M ui/compositor/layer.h View 3 chunks +6 lines, -4 lines 0 comments Download
M ui/compositor/layer.cc View 1 4 chunks +23 lines, -28 lines 0 comments Download

Messages

Total messages: 25 (3 generated)
danakj
5 years, 8 months ago (2015-04-21 22:35:02 UTC) #1
sky
https://codereview.chromium.org/1080633009/diff/1/content/browser/compositor/reflector_impl_unittest.cc File content/browser/compositor/reflector_impl_unittest.cc (right): https://codereview.chromium.org/1080633009/diff/1/content/browser/compositor/reflector_impl_unittest.cc#newcode92 content/browser/compositor/reflector_impl_unittest.cc:92: const gfx::Rect kSubRect(0, 0, 64, 64); Style guide says ...
5 years, 8 months ago (2015-04-21 23:56:55 UTC) #2
piman
https://codereview.chromium.org/1080633009/diff/1/content/browser/compositor/reflector_impl_unittest.cc File content/browser/compositor/reflector_impl_unittest.cc (right): https://codereview.chromium.org/1080633009/diff/1/content/browser/compositor/reflector_impl_unittest.cc#newcode92 content/browser/compositor/reflector_impl_unittest.cc:92: const gfx::Rect kSubRect(0, 0, 64, 64); On 2015/04/21 23:56:54, ...
5 years, 8 months ago (2015-04-22 03:32:14 UTC) #3
danakj
PTAL https://codereview.chromium.org/1080633009/diff/1/ui/compositor/layer.cc File ui/compositor/layer.cc (right): https://codereview.chromium.org/1080633009/diff/1/ui/compositor/layer.cc#newcode745 ui/compositor/layer.cc:745: ClearDamagedRects(); On 2015/04/22 03:32:13, piman (Very slow to ...
5 years, 8 months ago (2015-04-22 16:32:21 UTC) #4
danakj
On 2015/04/22 16:32:21, danakj wrote: > The ui::Layer isn't the thing holding the cache, it ...
5 years, 8 months ago (2015-04-22 16:33:30 UTC) #5
danakj
ping
5 years, 8 months ago (2015-04-22 21:08:54 UTC) #6
sky
https://codereview.chromium.org/1080633009/diff/20001/ui/compositor/compositor.cc File ui/compositor/compositor.cc (right): https://codereview.chromium.org/1080633009/diff/20001/ui/compositor/compositor.cc#newcode331 ui/compositor/compositor.cc:331: for (auto* child : layer->children()) Why are you moving ...
5 years, 8 months ago (2015-04-23 15:53:25 UTC) #8
danakj
https://codereview.chromium.org/1080633009/diff/20001/ui/compositor/compositor.cc File ui/compositor/compositor.cc (right): https://codereview.chromium.org/1080633009/diff/20001/ui/compositor/compositor.cc#newcode331 ui/compositor/compositor.cc:331: for (auto* child : layer->children()) On 2015/04/23 15:53:25, sky ...
5 years, 8 months ago (2015-04-23 16:02:57 UTC) #9
sky
Ok, LGTM
5 years, 8 months ago (2015-04-23 16:38:55 UTC) #10
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1080633009/20001
5 years, 8 months ago (2015-04-23 16:41:44 UTC) #12
commit-bot: I haz the power
Committed patchset #2 (id:20001)
5 years, 8 months ago (2015-04-23 16:46:06 UTC) #13
commit-bot: I haz the power
Patchset 2 (id:??) landed as https://crrev.com/a5e585868e16ce53c990f764d4943592f11749aa Cr-Commit-Position: refs/heads/master@{#326547}
5 years, 8 months ago (2015-04-23 16:47:20 UTC) #14
danakj
This patch somehow breaks 4 ash unit tests /only in debug builds/: WindowSelectorTest.MultipleDisplays ShelfViewTest.CheckDragInsertBoundsWithMultiMonitor PanelLayoutManagerTest.PanelMoveBetweenMultipleDisplays ...
5 years, 8 months ago (2015-04-23 20:19:44 UTC) #15
danakj
On 2015/04/23 20:19:44, danakj wrote: > This patch somehow breaks 4 ash unit tests /only ...
5 years, 8 months ago (2015-04-23 20:49:14 UTC) #16
danakj
On 2015/04/23 20:49:14, danakj wrote: > On 2015/04/23 20:19:44, danakj wrote: > > This patch ...
5 years, 8 months ago (2015-04-23 20:50:56 UTC) #17
Justin Donnelly
A revert of this CL (patchset #2 id:20001) has been created in https://codereview.chromium.org/1101103004/ by jdonnelly@chromium.org. ...
5 years, 8 months ago (2015-04-23 20:53:20 UTC) #18
danakj
OK I think I see. A layer that isn't part of the scene doesn't clear ...
5 years, 8 months ago (2015-04-23 21:26:38 UTC) #19
danakj
Fix is over here: https://codereview.chromium.org/1061993009/
5 years, 8 months ago (2015-04-23 22:19:36 UTC) #20
danakj
That landed so going to reland this.
5 years, 8 months ago (2015-04-24 21:45:19 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1080633009/20001
5 years, 8 months ago (2015-04-24 21:46:06 UTC) #23
commit-bot: I haz the power
Committed patchset #2 (id:20001)
5 years, 8 months ago (2015-04-24 22:35:23 UTC) #24
commit-bot: I haz the power
5 years, 8 months ago (2015-04-24 22:37:13 UTC) #25
Message was sent while issue was closed.
Patchset 2 (id:??) landed as
https://crrev.com/0b5eae6c645b9b25e34322d328eaef00d14aef0f
Cr-Commit-Position: refs/heads/master@{#326912}

Powered by Google App Engine
This is Rietveld 408576698