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

Issue 1991973003: mash: Preliminary support for widget hit test masks (Closed)

Created:
4 years, 7 months ago by James Cook
Modified:
4 years, 7 months ago
Reviewers:
sky, dcheng
CC:
Aaron Boodman, abarth-chromium, ben+mojo_chromium.org, chromium-reviews, darin (slow to review), qsr+mojo_chromium.org, rjkroege, tfarina, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

mash: Preliminary support for widget hit test masks This plumbs widget hit test masks through to the window server and uses them for hit testing. It has the following limitations: * Like "additional client areas" the mask is a rectangle, not a path. * The mask is only updated on window bounds and client area change. This fixes the system tray bubble not closing when you click in its bottom border region, in particular the part that overlaps the tray button. BUG=612566 TEST=added to mus_ws_unittests and views_mus_unittests Committed: https://crrev.com/265527f8745b9d36e277d7c93ed7818204baf323 Cr-Commit-Position: refs/heads/master@{#395133}

Patch Set 1 #

Patch Set 2 : remove input event workaround #

Patch Set 3 : add bug link for SkPath conversion #

Total comments: 6

Patch Set 4 : allow null mask #

Total comments: 2

Patch Set 5 : skip underlay #

Total comments: 2

Patch Set 6 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+254 lines, -18 lines) Patch
M components/mus/public/cpp/lib/window.cc View 1 2 3 1 chunk +24 lines, -0 lines 0 comments Download
M components/mus/public/cpp/lib/window_tree_client_impl.h View 1 2 3 1 chunk +2 lines, -0 lines 0 comments Download
M components/mus/public/cpp/lib/window_tree_client_impl.cc View 1 2 3 1 chunk +10 lines, -0 lines 0 comments Download
M components/mus/public/cpp/tests/test_window_tree.h View 1 chunk +1 line, -0 lines 0 comments Download
M components/mus/public/cpp/tests/test_window_tree.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M components/mus/public/cpp/window.h View 1 2 3 4 5 2 chunks +7 lines, -0 lines 0 comments Download
M components/mus/public/interfaces/window_tree.mojom View 1 2 3 1 chunk +5 lines, -0 lines 0 comments Download
M components/mus/ws/access_policy.h View 1 chunk +1 line, -0 lines 0 comments Download
M components/mus/ws/default_access_policy.h View 1 chunk +1 line, -0 lines 0 comments Download
M components/mus/ws/default_access_policy.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M components/mus/ws/event_dispatcher_unittest.cc View 1 2 3 4 5 1 chunk +39 lines, -0 lines 0 comments Download
M components/mus/ws/server_window.h View 1 2 3 2 chunks +8 lines, -0 lines 0 comments Download
M components/mus/ws/server_window.cc View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M components/mus/ws/window_finder.cc View 1 2 3 1 chunk +11 lines, -6 lines 0 comments Download
M components/mus/ws/window_finder_unittest.cc View 1 2 3 1 chunk +28 lines, -0 lines 0 comments Download
M components/mus/ws/window_manager_access_policy.h View 2 chunks +2 lines, -0 lines 0 comments Download
M components/mus/ws/window_manager_access_policy.cc View 5 chunks +22 lines, -11 lines 0 comments Download
M components/mus/ws/window_tree.h View 1 chunk +1 line, -0 lines 0 comments Download
M components/mus/ws/window_tree.cc View 1 2 3 1 chunk +14 lines, -0 lines 0 comments Download
M ui/views/mus/native_widget_mus.h View 1 chunk +5 lines, -0 lines 0 comments Download
M ui/views/mus/native_widget_mus.cc View 1 2 3 4 5 5 chunks +23 lines, -0 lines 0 comments Download
M ui/views/mus/native_widget_mus_unittest.cc View 1 2 3 4 5 4 chunks +35 lines, -1 line 0 comments Download

Messages

Total messages: 24 (5 generated)
James Cook
sky, please take a look.
4 years, 7 months ago (2016-05-19 17:02:48 UTC) #2
sky
https://codereview.chromium.org/1991973003/diff/40001/components/mus/public/interfaces/window_tree.mojom File components/mus/public/interfaces/window_tree.mojom (right): https://codereview.chromium.org/1991973003/diff/40001/components/mus/public/interfaces/window_tree.mojom#newcode135 components/mus/public/interfaces/window_tree.mojom:135: SetHitTestMask(uint32 window_id, mojo.Rect mask); Add support for a null ...
4 years, 7 months ago (2016-05-19 18:13:18 UTC) #3
James Cook
sky, please take another look https://codereview.chromium.org/1991973003/diff/40001/components/mus/public/interfaces/window_tree.mojom File components/mus/public/interfaces/window_tree.mojom (right): https://codereview.chromium.org/1991973003/diff/40001/components/mus/public/interfaces/window_tree.mojom#newcode135 components/mus/public/interfaces/window_tree.mojom:135: SetHitTestMask(uint32 window_id, mojo.Rect mask); ...
4 years, 7 months ago (2016-05-19 21:47:46 UTC) #4
sky
https://codereview.chromium.org/1991973003/diff/60001/ui/views/mus/native_widget_mus.cc File ui/views/mus/native_widget_mus.cc (right): https://codereview.chromium.org/1991973003/diff/60001/ui/views/mus/native_widget_mus.cc#newcode1308 ui/views/mus/native_widget_mus.cc:1308: void NativeWidgetMus::UpdateHitTestMask() { Do you need to make this ...
4 years, 7 months ago (2016-05-19 22:03:27 UTC) #5
sky
Also, +dcheng for mojom change
4 years, 7 months ago (2016-05-19 22:03:45 UTC) #7
James Cook
https://codereview.chromium.org/1991973003/diff/60001/ui/views/mus/native_widget_mus.cc File ui/views/mus/native_widget_mus.cc (right): https://codereview.chromium.org/1991973003/diff/60001/ui/views/mus/native_widget_mus.cc#newcode1308 ui/views/mus/native_widget_mus.cc:1308: void NativeWidgetMus::UpdateHitTestMask() { On 2016/05/19 22:03:27, sky wrote: > ...
4 years, 7 months ago (2016-05-19 22:35:41 UTC) #8
sky
On Thu, May 19, 2016 at 3:35 PM, <jamescook@chromium.org> wrote: > > https://codereview.chromium.org/1991973003/diff/60001/ui/views/mus/native_widget_mus.cc > File ...
4 years, 7 months ago (2016-05-19 22:53:59 UTC) #9
James Cook
sky, please take another look Yes, that makes sense. I agree explicitly checking for the ...
4 years, 7 months ago (2016-05-19 23:15:23 UTC) #10
sky
LGTM
4 years, 7 months ago (2016-05-20 15:49:53 UTC) #11
James Cook
dcheng, can I get OWNERS/security review for components/mus/public/interfaces/window_tree.mojom ?
4 years, 7 months ago (2016-05-20 17:27:33 UTC) #12
dcheng
https://codereview.chromium.org/1991973003/diff/80001/components/mus/ws/window_tree.cc File components/mus/ws/window_tree.cc (right): https://codereview.chromium.org/1991973003/diff/80001/components/mus/ws/window_tree.cc#newcode1304 components/mus/ws/window_tree.cc:1304: void WindowTree::SetHitTestMask(Id transport_window_id, mojo::RectPtr mask) { Once we have ...
4 years, 7 months ago (2016-05-20 17:44:19 UTC) #13
James Cook
https://codereview.chromium.org/1991973003/diff/80001/components/mus/ws/window_tree.cc File components/mus/ws/window_tree.cc (right): https://codereview.chromium.org/1991973003/diff/80001/components/mus/ws/window_tree.cc#newcode1304 components/mus/ws/window_tree.cc:1304: void WindowTree::SetHitTestMask(Id transport_window_id, mojo::RectPtr mask) { On 2016/05/20 17:44:19, ...
4 years, 7 months ago (2016-05-20 17:59:48 UTC) #14
dcheng
this particularly change is pretty trivial and lgtm is there any documentation about how mus ...
4 years, 7 months ago (2016-05-20 18:02:10 UTC) #15
James Cook
On 2016/05/20 18:02:10, dcheng wrote: > this particularly change is pretty trivial and lgtm > ...
4 years, 7 months ago (2016-05-20 18:12: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/1991973003/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1991973003/100001
4 years, 7 months ago (2016-05-20 18:23:28 UTC) #19
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 7 months ago (2016-05-20 19:18:08 UTC) #20
commit-bot: I haz the power
Patchset 6 (id:??) landed as https://crrev.com/265527f8745b9d36e277d7c93ed7818204baf323 Cr-Commit-Position: refs/heads/master@{#395133}
4 years, 7 months ago (2016-05-20 19:20:29 UTC) #22
dcheng
On 2016/05/20 at 18:12:01, jamescook wrote: > On 2016/05/20 18:02:10, dcheng wrote: > > this ...
4 years, 7 months ago (2016-05-20 20:13:51 UTC) #23
James Cook
4 years, 7 months ago (2016-05-20 20:23:33 UTC) #24
Message was sent while issue was closed.
On 2016/05/20 20:13:51, dcheng wrote:
> On 2016/05/20 at 18:12:01, jamescook wrote:
> > On 2016/05/20 18:02:10, dcheng wrote:
> > > this particularly change is pretty trivial and lgtm
> > > 
> > > is there any documentation about how mus is structured overall? It will
help
> > > security reviewers to have a picture of the different components in mus,
how
> > > they talk to each other (e.g. who talks to WindowTree, what process does
it
> live
> > > in).
> > 
> > Replied off thread.
> 
> Hmm, I don't see the email?

Re-sent to your corp email address.

Powered by Google App Engine
This is Rietveld 408576698