Chromium Code Reviews

Issue 1899323002: Add mash shelf application id support. (Closed)

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

Description

Add mash shelf application id support. Add an app_id mus window property; used to group shelf items, etc. Populate app_id from the identity name via WindowManagerConnection. Track multiple windows in ShelfDelegateMus & ShelfItemDelegateMus. Show new ShelfMenuModelMus with titles on multi-window item click. Rename ShelfController::[Pin|Unpin]Item (was [Add|Remove]Item). Plumb identity; remove incorrect window_property.h comment. TODO: Support dynamic app_id or custom init, for extensions, etc.? TODO: Support window application titles (eg. 'Chrome' vs. 'New Tab') BUG=557406 TEST=In "mojo_runner mojo:mash_session", type 'quick_launch' and hit CTRL+ENTER; a second quick launch window should open and share the existing shelf item. R=sky@chromium.org,jam@chromium.org Committed: https://crrev.com/5dce124e0dcc9e781378f48a3246ca5ede44dafb Cr-Commit-Position: refs/heads/master@{#389508}

Patch Set 1 #

Patch Set 2 : Add some basic multi-window support. #

Patch Set 3 : Trying to get app id as a window property... not set early enough. #

Patch Set 4 : Pass application identity to WindowManagerConnection. #

Patch Set 5 : Cleanup. #

Patch Set 6 : Sync and rebase. #

Total comments: 10

Patch Set 7 : Address simpler comments. #

Unified diffs Side-by-side diffs Stats (+248 lines, -114 lines)
M ash/mus/shelf_delegate_mus.h View 1 chunk +2 lines, -2 lines 0 comments
M ash/mus/shelf_delegate_mus.cc View 6 chunks +131 lines, -44 lines 0 comments
M ash/mus/sysui_application.cc View 2 chunks +4 lines, -3 lines 0 comments
M chrome/browser/ui/ash/launcher/chrome_mash_shelf_controller.cc View 1 chunk +3 lines, -3 lines 0 comments
M components/mus/public/cpp/window_property.h View 1 chunk +0 lines, -3 lines 0 comments
M components/mus/public/interfaces/window_manager.mojom View 1 chunk +2 lines, -0 lines 0 comments
M content/browser/browser_main_loop.cc View 1 chunk +4 lines, -2 lines 0 comments
M content/common/mojo/mojo_shell_connection_impl.h View 1 chunk +1 line, -0 lines 0 comments
M content/common/mojo/mojo_shell_connection_impl.cc View 1 chunk +5 lines, -0 lines 0 comments
M content/public/common/BUILD.gn View 1 chunk +1 line, -0 lines 0 comments
M content/public/common/mojo_shell_connection.h View 2 chunks +3 lines, -0 lines 0 comments
M mash/catalog_viewer/catalog_viewer.cc View 1 chunk +1 line, -1 line 0 comments
M mash/example/views_examples/views_examples_application_delegate.cc View 1 chunk +1 line, -1 line 0 comments
M mash/example/window_type_launcher/window_type_launcher.cc View 1 chunk +1 line, -1 line 0 comments
M mash/login/login.cc View 3 chunks +8 lines, -8 lines 0 comments
M mash/quick_launch/quick_launch_application.cc View 1 chunk +1 line, -1 line 0 comments
M mash/screenlock/screenlock.cc View 1 chunk +1 line, -1 line 0 comments
M mash/shelf/public/interfaces/shelf.mojom View 2 chunks +6 lines, -6 lines 0 comments
M mash/task_viewer/task_viewer.cc View 1 chunk +1 line, -1 line 0 comments
M mash/wm/property_util.h View 1 chunk +3 lines, -0 lines 0 comments
M mash/wm/property_util.cc View 1 chunk +13 lines, -0 lines 0 comments
M mash/wm/public/interfaces/user_window_controller.mojom View 2 chunks +6 lines, -5 lines 0 comments
M mash/wm/user_window_controller_impl.cc View 1 chunk +1 line, -0 lines 0 comments
M services/shell/public/cpp/lib/shell_connection.cc View 2 chunks +2 lines, -1 line 0 comments
M services/shell/public/cpp/shell_connection.h View 2 chunks +26 lines, -24 lines 0 comments
M ui/views/mus/platform_test_helper_mus.cc View 1 chunk +1 line, -1 line 0 comments
M ui/views/mus/window_manager_connection.h View 4 chunks +6 lines, -2 lines 0 comments
M ui/views/mus/window_manager_connection.cc View 3 chunks +14 lines, -4 lines 0 comments

Messages

Total messages: 40 (21 generated)
msw
Hey Scott, please take a look; thanks!
4 years, 8 months ago (2016-04-22 01:27:01 UTC) #4
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/100001
4 years, 8 months ago (2016-04-22 01:27:31 UTC) #6
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: ios_rel_device_gn on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_rel_device_gn/builds/23429) ios_rel_device_ninja on ...
4 years, 8 months ago (2016-04-22 01:29:57 UTC) #8
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/120001
4 years, 8 months ago (2016-04-22 01:37:41 UTC) #12
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_chromium_gn_compile_dbg/builds/55143) android_chromium_gn_compile_rel on ...
4 years, 8 months ago (2016-04-22 01:42:42 UTC) #14
sky
It seems like a security issue to allow clients to supply their own app_id. Could ...
4 years, 8 months ago (2016-04-22 15:51:19 UTC) #15
msw
On 2016/04/22 15:51:19, sky wrote: > It seems like a security issue to allow clients ...
4 years, 8 months ago (2016-04-22 19:02:18 UTC) #16
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/140001
4 years, 8 months ago (2016-04-22 19:03:32 UTC) #18
sky
LGTM
4 years, 8 months ago (2016-04-22 19:15:53 UTC) #19
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 8 months ago (2016-04-22 21:55:30 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/140001
4 years, 8 months ago (2016-04-22 22:04:45 UTC) #23
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/172296)
4 years, 8 months ago (2016-04-22 22:15:09 UTC) #25
msw
Hey John, please take a look at content/*; thanks!
4 years, 8 months ago (2016-04-22 22:21:43 UTC) #28
jam
lgtm
4 years, 8 months ago (2016-04-25 15:38:02 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/140001
4 years, 8 months ago (2016-04-25 16:43:54 UTC) #31
commit-bot: I haz the power
Failed to commit the patch.
4 years, 8 months ago (2016-04-25 17:44:16 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1899323002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1899323002/140001
4 years, 8 months ago (2016-04-25 18:08:18 UTC) #36
commit-bot: I haz the power
Committed patchset #7 (id:140001)
4 years, 8 months ago (2016-04-25 18:16:57 UTC) #38
commit-bot: I haz the power
4 years, 8 months ago (2016-04-25 18:18:03 UTC) #40
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/5dce124e0dcc9e781378f48a3246ca5ede44dafb
Cr-Commit-Position: refs/heads/master@{#389508}

Powered by Google App Engine