Issue metadata
Sign in to add a comment
|
mash: ChromeNativeAppWindowViewsAuraAsh uses ash::wm::WindowState |
||||||||||||||||||||||||
Issue descriptionChromeNativeAppWindowViewsAuraAsh depends on CustomFrameViewAsh which lives in ash/frame. We will need to do something like: * Move CustomFrameViewAsh to src/ui and re-factor the existing ash dependencies to work in Ash and (if needed) Chrome. * Create a separate NonClientFrameView for native apps created by Chrome. * Restructure how app windows are created in mash?
,
Jun 22 2018
The frame part already works fine. CustomFrameViewAsh is only used in classic mode; mash early-outs[1] which allows Ash to create the frame for it. The WindowState part might need reworking. [1] https://cs.chromium.org/chromium/src/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc?rcl=92958ccd0c4caf57408bf960713364fb963bedc6&l=306
,
Jun 26 2018
Right. The remaining dependency is:
ChromeNativeAppWindowViewsAuraAsh::CreateNonClientFrameView() calls
ash::wm::GetWindowState(GetNativeWindow())
->SetDelegate(std::unique_ptr<ash::wm::WindowStateDelegate>(
new NativeAppWindowStateDelegate(app_window(), this)));
,
Jun 28 2018
Looked at this today. The WindowState delegate part is just there to handle entering fullscreen as apps have special behavior for that. We'll need to do something like adding a WindowStateDelegate on the ash side which proxies the request to Chrome. I don't know the plan for immersive mode ( bug 640365 ), and I also think this falls under the scope of bug 780160. So, duping.
,
Aug 13
|
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by sky@chromium.org
, Jun 22 2018Status: Assigned (was: Untriaged)