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

Issue 2042903002: Support app window draggable areas in mash. (Closed)

Created:
4 years, 6 months ago by msw
Modified:
4 years, 6 months ago
CC:
chromium-reviews, tfarina, extensions-reviews_chromium.org, chromium-apps-reviews_chromium.org, sky
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Support app window draggable areas in mash. Some Chrome app windows use custom frames, with draggable regions. Support NonClientView-powered window dragging without a standard frame. Add a new 'RemoveStandardFrame' mus window property and helper function. Add a new EmptyDraggableNonClientFrameView for hit testing without painting. (parallels existing behavior w/Widget::InitParams::remove_standard_frame) (avoids painting a frame, still handles non-client events/captures/drags) Override UpdateDraggableRegions for mash app windows to: - Specify insets that cover all draggable regions. - Invert the region to specify "additional client areas". BUG=617302 TEST=Wallpaper picker extensions window can be dragged in mash. R=jamescook@chromium.org Committed: https://crrev.com/b8d01e3bfa7e5febe399d48709805adf1259b800 Cr-Commit-Position: refs/heads/master@{#400305}

Patch Set 1 #

Patch Set 2 : First crack at implementing region struct and traits. #

Patch Set 3 : Sync and rebase. #

Patch Set 4 : Compiling with WindowRegion struct change... #

Patch Set 5 : Wallpaper app dragging is working. #

Patch Set 6 : Partial cleanup. #

Patch Set 7 : Favor std::vector over mojo::Array. #

Patch Set 8 : Use insets and inverted draggable region with a stub frame view. #

Patch Set 9 : Cleanup. #

Total comments: 13

Patch Set 10 : Address comments. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+81 lines, -5 lines) Patch
M ash/mus/non_client_frame_controller.cc View 1 2 3 4 5 6 7 8 9 3 chunks +28 lines, -5 lines 0 comments Download
M ash/mus/property_util.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M ash/mus/property_util.cc View 1 2 3 4 5 6 7 8 1 chunk +7 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc View 1 2 3 4 5 6 7 8 9 3 chunks +39 lines, -0 lines 4 comments Download
M components/mus/public/interfaces/window_manager.mojom View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -0 lines 0 comments Download

Messages

Total messages: 37 (15 generated)
msw
Hey James, please take a look; thanks!
4 years, 6 months ago (2016-06-14 23:06:56 UTC) #3
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2042903002/160001
4 years, 6 months ago (2016-06-14 23:07:47 UTC) #5
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_compile_dbg_ng/builds/110085)
4 years, 6 months ago (2016-06-14 23:40:09 UTC) #7
James Cook
https://codereview.chromium.org/2042903002/diff/160001/ash/mus/non_client_frame_controller.cc File ash/mus/non_client_frame_controller.cc (right): https://codereview.chromium.org/2042903002/diff/160001/ash/mus/non_client_frame_controller.cc#newcode88 ash/mus/non_client_frame_controller.cc:88: // This class supports draggable regions for windows with ...
4 years, 6 months ago (2016-06-14 23:44:57 UTC) #8
msw
Hey James, please take another look; thanks! +tapted for c/b/ui/views/apps/OWNERS +ben for components/mus/OWNERS https://codereview.chromium.org/2042903002/diff/160001/ash/mus/non_client_frame_controller.cc File ...
4 years, 6 months ago (2016-06-15 17:06:41 UTC) #10
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2042903002/180001
4 years, 6 months ago (2016-06-15 17:13:20 UTC) #12
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 6 months ago (2016-06-15 18:05:09 UTC) #14
James Cook
LGTM. Nice patch. https://codereview.chromium.org/2042903002/diff/160001/ash/mus/non_client_frame_controller.cc File ash/mus/non_client_frame_controller.cc (right): https://codereview.chromium.org/2042903002/diff/160001/ash/mus/non_client_frame_controller.cc#newcode90 ash/mus/non_client_frame_controller.cc:90: class StubNonClientFrameView : public views::NonClientFrameView { ...
4 years, 6 months ago (2016-06-15 23:21:14 UTC) #15
tapted
c/b/ui/views/apps lgtm (only a CL description nit - it still mentions the old name, StubNonClientFrameView)
4 years, 6 months ago (2016-06-15 23:49:50 UTC) #16
Ben Goodger (Google)
mus lgtm
4 years, 6 months ago (2016-06-16 01:56:24 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2042903002/180001
4 years, 6 months ago (2016-06-16 06:30:24 UTC) #20
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/201640)
4 years, 6 months ago (2016-06-16 06:37:38 UTC) #22
msw
+dcheng for window_manager.mojom security review.
4 years, 6 months ago (2016-06-16 06:47:49 UTC) #23
msw
+dcheng for window_manager.mojom security review.
4 years, 6 months ago (2016-06-16 06:48:14 UTC) #25
dcheng
https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc File chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc (right): https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc#newcode154 chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc:154: mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame); How does a bool turn into a vector ...
4 years, 6 months ago (2016-06-16 09:04:36 UTC) #26
msw
https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc File chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc (right): https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc#newcode154 chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc:154: mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame); On 2016/06/16 09:04:36, dcheng wrote: > How does ...
4 years, 6 months ago (2016-06-16 16:54:21 UTC) #27
sky
https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc File chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc (right): https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc#newcode154 chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc:154: mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame); On 2016/06/16 09:04:36, dcheng wrote: > How does ...
4 years, 6 months ago (2016-06-16 20:03:07 UTC) #29
dcheng
https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc File chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc (right): https://codereview.chromium.org/2042903002/diff/180001/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc#newcode154 chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc:154: mojo::ConvertTo<std::vector<uint8_t>>(init_params->remove_standard_frame); On 2016/06/16 16:54:21, msw wrote: > On 2016/06/16 ...
4 years, 6 months ago (2016-06-16 20:13:54 UTC) #30
dcheng
lgtm
4 years, 6 months ago (2016-06-16 20:40:35 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2042903002/180001
4 years, 6 months ago (2016-06-16 20:48:20 UTC) #33
commit-bot: I haz the power
Committed patchset #10 (id:180001)
4 years, 6 months ago (2016-06-16 23:48:20 UTC) #35
commit-bot: I haz the power
4 years, 6 months ago (2016-06-16 23:50:56 UTC) #37
Message was sent while issue was closed.
Patchset 10 (id:??) landed as
https://crrev.com/b8d01e3bfa7e5febe399d48709805adf1259b800
Cr-Commit-Position: refs/heads/master@{#400305}

Powered by Google App Engine
This is Rietveld 408576698