mash: Remove ash::Shell access from chrome/browser/resource_coordinator |
||||||||||||
Issue descriptionReplace with mojo apis. See ash/README.md and go/mustash.
,
Sep 12 2017
James, do you have any pointers to code or docs for what's happening to windows in mash? The tldr is that the resource coordinator is listening for window activation.[1] [1] https://cs.chromium.org/chromium/src/chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc?rcl=5136cc20c3980f201853b975a9d3c25527c2b837&l=71
,
Sep 12 2017
Hrm, this is a little tricky. Conceptually, only the window manager (ash) has knowledge of all windows in the system. For example, an arbitrary mojo app may not be known to the chrome process, so chrome can't see its activation changes. If that code is just looking at browser windows, it might be possible to use BrowserList observers: https://cs.chromium.org/chromium/src/chrome/browser/ui/browser_list.h?q=browserlist&sq=package:chromium&l=71
,
Feb 26 2018
,
Mar 13 2018
It's looking for [de]activation of ARC++ windows.
,
Mar 27 2018
Issue 826366 has been merged into this issue.
,
Mar 27 2018
See //chrome/browser/resource_coordinator/tab_manager_delegate_chromeos.cc This sets process priorities and OOM scores based on window activation and window Z-sort order. It reaches into ash to do this. It also needs to know about tabs and ARC++ apps.
,
Apr 19 2018
,
Aug 13
,
Aug 15
This is needed for single-process mash. I suggest we get it working in single-process-mash, and once working there retarget to multi-process-mash for the longer term solution. The issue for single-process mash is that this code uses Shell's activation client. That will work, but then Windows returned are in the window-service side. We aren't mirroring aura::client::kAppType, which means none of the windows passed to the activation client will have aura::client::kAppType. The easy short solution for single-process-mash is to mirror aura::client::kAppType via the property mirror. Then I think this code will just work.
,
Sep 24
Ryan, could you look into the fix I outlined in comment # 11 for single-process-mash.
,
Sep 25
,
Sep 25
There is currently a bug where the registration for window activation events never occurs because the TabManagerDelegate is instantiated before Ash. Filed bug crbug.com/889178 to track the fix for that issue, or possibly removing the code if the metric isn't useful anymore. We'll want/need to wait until that's resolved before making more progress here.
,
Sep 25
,
Nov 8
Given resource_coordinator doesn't really work right now, I'm removing this from the single-process-mash list. We may need to reevaluate if 889178 is fixed.
,
Nov 8
|
||||||||||||
►
Sign in to add a comment |
||||||||||||
Comment 1 by est...@chromium.org
, Aug 18 2017