New issue
Advanced search Search tips

Issue 756680 link

Starred by 1 user

Issue metadata

Status: Archived
Owner: ----
Closed: Sep 13
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows
Pri: 2
Type: Bug

Blocking:
issue 806501



Sign in to add a comment

Split non-views-dependent parts of DesktopScreenX11, DesktopScreenWin into //ui/display

Project Member Reported by michae...@chromium.org, Aug 18 2017

Issue description

The 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)

 
Blocking: 806501
Status: Archived (was: Available)
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!
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