Split non-views-dependent parts of DesktopScreenX11, DesktopScreenWin into //ui/display |
||
Issue descriptionThe views::CreateDesktopScreen() function in ui/views/widget/desktop_aura/desktop_screen.h creates a useful display::Screen for the desktop environment. It's implemented as DesktopScreenX11 and DesktopScreenWin: - ui/views/widget/desktop_aura/desktop_screen_x11.h - ui/views/widget/desktop_aura/desktop_screen_win.h These actually don't make much use of views, and they're useful with vanilla aura::WindowTreeHosts, not just views subclasses like views::DesktopWindowTreeHostX11. Since DesktopScreen will be used in AppShell, the non-views-specific parts of its implementations should be moved outside of //ui/views in order to a) reduce unnecessary dependencies on views, and b) ensure DesktopScreen implementations don't accidentally assume that an aura window is an instance of a views subclass. From sadrul@ in https://chromium-review.googlesource.com/c/614460/6/extensions/shell/browser/shell_desktop_controller_aura.cc#262: > My only concern is that the views implementation may assume things to be of > certain types (e.g. always expect a WindowTreeHost to be a > DesktopWindowTreeHost, etc.), even if not right now, in some unfortunate > future change. So I would encourage you to split out the relevant parts of > DesktopScreenX11/DesktopScreenWin out of views, and into //ui/display/[x11|win], > so we don't have to worry about this. (please file a crbug and a TODO here > referencing that)
,
Sep 13
Archiving old bugs that haven't been actively assigned in over 180 days. If you feel this issue should still be addressed, feel free to reopen it or to file a new issue. Thanks!
,
Sep 13
Archiving old bugs that haven't been actively assigned in over 180 days. If you feel this issue should still be addressed, feel free to reopen it or to file a new issue. Thanks! |
||
►
Sign in to add a comment |
||
Comment 1 by michae...@chromium.org
, Jan 27 2018