When chrome is in immersive mode it wants to define it's own top components, as well as define when reveal should be triggered. Because of this chrome really needs to control immersive mode and not use it from the window manager.
Currently, when entering immersive mode in mash, we crash in aura::WindowPortMus::SetFrameSinkIdFromServer() because the window we're trying to set the frame sink id on is a WindowMusType::LOCAL one.
Comment 1 by sky@chromium.org
, Aug 23 2016