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

Issue 1328953003: Mandoline: Support transforms and clipping of OOPIFs and events (Closed)

Created:
5 years, 3 months ago by Fady Samuel
Modified:
5 years, 3 months ago
Reviewers:
rjkroege, sky
CC:
chromium-reviews, cc-bugs_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Mandoline: Support transforms and clipping of OOPIFs and events This CL enables basic transforms, clipping of iframe graphical output and hit testing by leveraging SurfaceAggregator, and SurfaceHittest. Previously, DisplayManager's DrawViewTree was creating a CompositorFrame with all the Surfaces in place. SurfaceAggregator tries to put all the Surfaces together but finds it has no work to do because all the SurfaceDrawQuads are already in one CompositorFrame. By not including subtrees of Views with Surfaces in the CompositorFrame DisplayManager generates, we left SurfaceAggregator do the heavy lifting for transforms/clipping/opacity/etc. BUG=496953 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/e0577a32bcd9ab47d30dbd51e0cc7003ab98b6d3 Cr-Commit-Position: refs/heads/master@{#349547}

Patch Set 1 #

Patch Set 2 : Fix hit test crash #

Patch Set 3 : Rebased #

Patch Set 4 : Rebase works! #

Total comments: 12

Patch Set 5 : Addressed Rob's comments #

Total comments: 12

Patch Set 6 : Addressed Rob's comments #

Total comments: 4

Patch Set 7 : Tweaked comments #

Total comments: 4

Patch Set 8 : Added TODO #

Unified diffs Side-by-side diffs Delta from patch set Stats (+134 lines, -51 lines) Patch
M components/mus/connection_manager.cc View 1 2 3 4 5 2 chunks +14 lines, -11 lines 0 comments Download
M components/mus/display_manager.h View 1 2 3 4 5 6 1 chunk +10 lines, -0 lines 0 comments Download
M components/mus/display_manager.cc View 1 2 3 4 5 6 5 chunks +64 lines, -20 lines 0 comments Download
M components/mus/display_manager_delegate.h View 1 2 3 4 2 chunks +2 lines, -1 line 0 comments Download
M components/mus/server_view.cc View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M components/mus/surfaces/surfaces_state.h View 1 2 3 4 3 chunks +5 lines, -0 lines 0 comments Download
M components/mus/surfaces/surfaces_state.cc View 1 2 3 4 1 chunk +4 lines, -1 line 0 comments Download
M components/mus/surfaces/top_level_display_client.h View 1 2 3 4 1 chunk +3 lines, -0 lines 0 comments Download
M components/mus/surfaces/top_level_display_client.cc View 1 2 3 4 3 chunks +14 lines, -7 lines 0 comments Download
M components/mus/view_tree_host_impl.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M components/mus/view_tree_host_impl.cc View 1 2 3 4 5 6 7 2 chunks +9 lines, -2 lines 0 comments Download
M components/mus/view_tree_unittest.cc View 1 2 3 4 4 chunks +6 lines, -6 lines 0 comments Download

Messages

Total messages: 21 (4 generated)
Fady Samuel
Hi Rob, Could you please take a look at this? This needs a bit of ...
5 years, 3 months ago (2015-09-16 20:45:21 UTC) #2
rjkroege
https://codereview.chromium.org/1328953003/diff/60001/cc/surfaces/surface_factory.h File cc/surfaces/surface_factory.h (right): https://codereview.chromium.org/1328953003/diff/60001/cc/surfaces/surface_factory.h#newcode64 cc/surfaces/surface_factory.h:64: SurfaceManager* manager() const { return manager_; } You can ...
5 years, 3 months ago (2015-09-16 21:31:37 UTC) #3
Fady Samuel
PTAL https://codereview.chromium.org/1328953003/diff/60001/cc/surfaces/surface_factory.h File cc/surfaces/surface_factory.h (right): https://codereview.chromium.org/1328953003/diff/60001/cc/surfaces/surface_factory.h#newcode64 cc/surfaces/surface_factory.h:64: SurfaceManager* manager() const { return manager_; } On ...
5 years, 3 months ago (2015-09-17 18:31:43 UTC) #4
rjkroege
Also, please wrap description. https://codereview.chromium.org/1328953003/diff/80001/components/mus/connection_manager.cc File components/mus/connection_manager.cc (right): https://codereview.chromium.org/1328953003/diff/80001/components/mus/connection_manager.cc#newcode453 components/mus/connection_manager.cc:453: // TODO(fsamuel): This shouldn't be ...
5 years, 3 months ago (2015-09-17 19:03:56 UTC) #5
rjkroege
https://codereview.chromium.org/1328953003/diff/80001/components/mus/display_manager.cc File components/mus/display_manager.cc (right): https://codereview.chromium.org/1328953003/diff/80001/components/mus/display_manager.cc#newcode65 components/mus/display_manager.cc:65: const float combined_opacity = opacity * view->opacity(); do we ...
5 years, 3 months ago (2015-09-17 19:08:05 UTC) #6
Fady Samuel
PTAL Rob https://codereview.chromium.org/1328953003/diff/80001/components/mus/connection_manager.cc File components/mus/connection_manager.cc (right): https://codereview.chromium.org/1328953003/diff/80001/components/mus/connection_manager.cc#newcode453 components/mus/connection_manager.cc:453: // TODO(fsamuel): This shouldn't be in the ...
5 years, 3 months ago (2015-09-17 20:00:22 UTC) #7
rjkroege
lgtm https://codereview.chromium.org/1328953003/diff/100001/components/mus/display_manager.cc File components/mus/display_manager.cc (right): https://codereview.chromium.org/1328953003/diff/100001/components/mus/display_manager.cc#newcode50 components/mus/display_manager.cc:50: // DrawViewTree recursively visits ServerViews, creating a SurfaceDrawQuad ...
5 years, 3 months ago (2015-09-17 20:21:20 UTC) #8
Fady Samuel
+sky@ for OWNER review. https://codereview.chromium.org/1328953003/diff/100001/components/mus/display_manager.cc File components/mus/display_manager.cc (right): https://codereview.chromium.org/1328953003/diff/100001/components/mus/display_manager.cc#newcode50 components/mus/display_manager.cc:50: // DrawViewTree recursively visits ServerViews, ...
5 years, 3 months ago (2015-09-17 21:44:18 UTC) #10
sky
https://codereview.chromium.org/1328953003/diff/120001/components/mus/display_manager.cc File components/mus/display_manager.cc (right): https://codereview.chromium.org/1328953003/diff/120001/components/mus/display_manager.cc#newcode291 components/mus/display_manager.cc:291: if (event->IsLocatedEvent() && !!top_level_display_client_) { As cc is updating ...
5 years, 3 months ago (2015-09-17 22:08:35 UTC) #11
Fady Samuel
https://codereview.chromium.org/1328953003/diff/120001/components/mus/display_manager.cc File components/mus/display_manager.cc (right): https://codereview.chromium.org/1328953003/diff/120001/components/mus/display_manager.cc#newcode291 components/mus/display_manager.cc:291: if (event->IsLocatedEvent() && !!top_level_display_client_) { On 2015/09/17 22:08:34, sky ...
5 years, 3 months ago (2015-09-17 22:13:11 UTC) #12
Fady Samuel
I've filed a bug to implement a UI scheduler: https://code.google.com/p/chromium/issues/detail?id=533120&thanks=533120&ts=1442528475 PTAL
5 years, 3 months ago (2015-09-17 22:34:33 UTC) #13
sky
https://codereview.chromium.org/1328953003/diff/120001/components/mus/view_tree_host_impl.cc File components/mus/view_tree_host_impl.cc (right): https://codereview.chromium.org/1328953003/diff/120001/components/mus/view_tree_host_impl.cc#newcode154 components/mus/view_tree_host_impl.cc:154: if (view) { How about a TODO here, as ...
5 years, 3 months ago (2015-09-17 22:36:05 UTC) #14
sky
LGTM
5 years, 3 months ago (2015-09-17 22:36:10 UTC) #15
Fady Samuel
Added TODO. CQ'ing! Thanks! https://codereview.chromium.org/1328953003/diff/120001/components/mus/view_tree_host_impl.cc File components/mus/view_tree_host_impl.cc (right): https://codereview.chromium.org/1328953003/diff/120001/components/mus/view_tree_host_impl.cc#newcode154 components/mus/view_tree_host_impl.cc:154: if (view) { On 2015/09/17 ...
5 years, 3 months ago (2015-09-17 23:58:01 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1328953003/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1328953003/140001
5 years, 3 months ago (2015-09-17 23:59:15 UTC) #19
commit-bot: I haz the power
Committed patchset #8 (id:140001)
5 years, 3 months ago (2015-09-18 00:14:13 UTC) #20
commit-bot: I haz the power
5 years, 3 months ago (2015-09-18 00:15:18 UTC) #21
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/e0577a32bcd9ab47d30dbd51e0cc7003ab98b6d3
Cr-Commit-Position: refs/heads/master@{#349547}

Powered by Google App Engine
This is Rietveld 408576698