New issue
Advanced search Search tips

Issue 664625 link

Starred by 1 user

Issue metadata

Status: Archived
Owner:
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

Get views working for wm clients

Project Member Reported by sky@chromium.org, Nov 11 2016

Issue description

At a minimum a different config of views::AuraInit needs to be used. Hopefully there isn't much else beyond that.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Nov 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/91b6ee4b99b61dd10d741328a1a548a745cf4ffe

commit 91b6ee4b99b61dd10d741328a1a548a745cf4ffe
Author: sky <sky@chromium.org>
Date: Tue Nov 22 02:53:53 2016

Propagates window type properties during aura-mus window creation

There are two types used to identify windows:
. aura::Window::type(), which is ui::wm::WindowType.
. ui::mojom::WindowType. This corresponds to the types defined in
  views::Widget::InitParams::Type. This is a superset of
  ui::wm::WindowType.

As ui::mojom::WindowType is a superset it is really the only one
needed. This patch makes it so during window creation a property is
passed to the server giving the type. The windowmanager can then use
this type when creating the corresponding window so that it knows the
type. As this property can't change after creation it doesn't go
through PropertyConverter.

Really the two types should be combined, but to keep this patch to a
minimum I'm not doing that here.

BUG= 664625 
TEST=covered by tests
R=msw@chromium.org, tsepez@chromium.org

Review-Url: https://codereview.chromium.org/2514243002
Cr-Commit-Position: refs/heads/master@{#433756}

[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ash/mus/property_util.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/services/ui/public/interfaces/window_manager_constants.mojom
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/BUILD.gn
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/client/aura_constants.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/client/aura_constants.h
[add] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/mus/property_utils.cc
[add] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/mus/property_utils.h
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/mus/window_manager_delegate.h
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/mus/window_tree_client.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/mus/window_tree_client_unittest.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/test/aura_test_base.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/aura/test/aura_test_base.h
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/views/mus/desktop_window_tree_host_mus.h
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/views/mus/mus_client.cc
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/views/mus/mus_client.h
[modify] https://crrev.com/91b6ee4b99b61dd10d741328a1a548a745cf4ffe/ui/views/test/native_widget_factory_aura_mus.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Nov 29 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0

commit c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0
Author: sky <sky@chromium.org>
Date: Tue Nov 29 04:14:06 2016

Adds NativeWidgetAura::is_parallel_widget_in_window_manager

This is needed to ensure some operations don't attempt to modify state
back on the underlying aura::Window when the window manager owns the
window.

BUG= 664625 
TEST=none
R=ben@chromium.org

Review-Url: https://codereview.chromium.org/2534823003
Cr-Commit-Position: refs/heads/master@{#434886}

[modify] https://crrev.com/c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0/ui/views/BUILD.gn
[modify] https://crrev.com/c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0/ui/views/DEPS
[modify] https://crrev.com/c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0/ui/views/widget/native_widget_aura.cc
[modify] https://crrev.com/c39c6e66c917ef43f4ce9e2a4a8ecd724de059a0/ui/views/widget/native_widget_aura.h

Project Member

Comment 5 by bugdroid1@chromium.org, Nov 29 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/153f6770e0347b20dc07c3d10bda3e82db01b7fc

commit 153f6770e0347b20dc07c3d10bda3e82db01b7fc
Author: sky <sky@chromium.org>
Date: Tue Nov 29 17:49:45 2016

Adds a couple more properties to the property converter

This also adds PropertyConverter::GetPropertyValueFromTransformValue()
which I need in ash for values used in creation of the window but
don't make their way into real properties.

BUG= 664625 
TEST=none
R=msw@chromium.org

Review-Url: https://codereview.chromium.org/2538633002
Cr-Commit-Position: refs/heads/master@{#435026}

[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/aura/client/aura_constants.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/aura/client/aura_constants.h
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/aura/mus/property_converter.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/aura/mus/property_converter.h
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/aura/mus/property_converter_unittest.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/mus/desktop_window_tree_host_mus.h
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/mus/mus_client.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/mus/native_widget_mus.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/test/native_widget_factory_aura_mus.cc
[modify] https://crrev.com/153f6770e0347b20dc07c3d10bda3e82db01b7fc/ui/views/widget/native_widget_aura.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 30 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dc03864a41f983a7b9194d7004f1824cc8050a41

commit dc03864a41f983a7b9194d7004f1824cc8050a41
Author: sky <sky@chromium.org>
Date: Wed Nov 30 16:46:00 2016

Registers client::kResizeBehaviorKey with PropertyConverter

BUG= 664625 
TEST=none
R=msw@chromium.org

Review-Url: https://codereview.chromium.org/2540033002
Cr-Commit-Position: refs/heads/master@{#435292}

[modify] https://crrev.com/dc03864a41f983a7b9194d7004f1824cc8050a41/ui/aura/mus/property_converter.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Nov 30 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3c73a146c760e785ad3715a253c1a637f24f1295

commit 3c73a146c760e785ad3715a253c1a637f24f1295
Author: sky <sky@chromium.org>
Date: Wed Nov 30 18:21:50 2016

Adds couple of functions to WindowManagerDelegate:

. OnWmWillCreateDisplay() called before creating the WindowTreeHost so
  that the display can be added to Screen.
. OnWmSetClientArea() so that window manager knows the client area of
  windows.

This also includes a couple of other random changes that are useful
for window managers:
. RequestClose has been moved to the WindowManagerClient. It never
  made sence on WindowTreeClient as only the WindowManager should be
  calling it.
. Moves Connector to constructor of WindowTreeClient so that it can be
  used elsewhere.
. Moves WasCreatedByThisClient() to the public section.

BUG= 664625 
TEST=none
R=ben@chromium.org

Review-Url: https://codereview.chromium.org/2536943005
Cr-Commit-Position: refs/heads/master@{#435340}

[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/services/ui/test_wm/test_wm.cc
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/mus/window_manager_delegate.h
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/mus/window_tree_client.cc
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/mus/window_tree_client.h
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/test/aura_test_base.cc
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/test/aura_test_base.h
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/aura/test/mus/test_window_tree_client_setup.cc
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/views/mus/mus_client.cc
[modify] https://crrev.com/3c73a146c760e785ad3715a253c1a637f24f1295/ui/views/mus/mus_client.h

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 30 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1

commit 189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1
Author: sky <sky@chromium.org>
Date: Wed Nov 30 19:49:15 2016

Makes sure bounds and visibilty are updated correctly for new displays

When WindowTreeClient is told about a new display it was not
fully configuring the WindowTreeHost. This patch makes the bounds and
visibility match.

BUG= 664625 
TEST=none
R=ben@chromium.org

Review-Url: https://codereview.chromium.org/2535983004
Cr-Commit-Position: refs/heads/master@{#435384}

[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/services/ui/test_wm/BUILD.gn
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/services/ui/test_wm/test_wm.cc
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/mus/window_tree_client.cc
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/mus/window_tree_client.h
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/mus/window_tree_client_unittest.cc
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/test/aura_test_base.cc
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/test/aura_test_base.h
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/test/mus/window_tree_client_private.cc
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/test/mus/window_tree_client_private.h
[modify] https://crrev.com/189712a4cd41d68fc08c4b054d3ed2d6a6b1e3a1/ui/aura/test/test_screen.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Dec 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2e855ae5b7a081bc374880e100fe4b00887c0f48

commit 2e855ae5b7a081bc374880e100fe4b00887c0f48
Author: sky <sky@chromium.org>
Date: Thu Dec 01 20:19:32 2016

Couple of changes for client area

Makes DesktopWindowTreeHostMus update the client area on the server
any time the bounds change.
Makes DesktopNativeWidgetAura not update the
transparency and fills-bounds-completely of the content_window_. This
way DesktopNativeWidgetAura won't fill the client area and you can see
the client decorations from the window manager. Also
DesktopWindowTreeHostMus makes sure to mark the content_window_ layer
as not fills bounds opaquely for same reason.
Lastly makes it so the client that changes the client area isn't told
about the change, and a bit of logging that fits in with other logging
in the file.

BUG= 664625   663525 
TEST=none
R=erg@chromium.org

Review-Url: https://codereview.chromium.org/2535753009
Cr-Commit-Position: refs/heads/master@{#435696}

[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/services/ui/ws/operation.h
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/services/ui/ws/window_tree.cc
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/mus/desktop_window_tree_host_mus.h
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_window_tree_host.h
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
[modify] https://crrev.com/2e855ae5b7a081bc374880e100fe4b00887c0f48/ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h

Project Member

Comment 10 by bugdroid1@chromium.org, Dec 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3663991e5d08bfa67d6c673bb46fb4e4f2875aac

commit 3663991e5d08bfa67d6c673bb46fb4e4f2875aac
Author: sky <sky@chromium.org>
Date: Fri Dec 02 03:34:38 2016

Makes WindowTreeHostMus supply properties directly to window creation

This way properties that don't make there way to Window properties can
be passed to the wm. For example,
ui::mojom::WindowManager::kInitialBounds_Property is only needed at
creation time and need not be stored in the aura::Window.

BUG= 664625   669964 
TEST=covered by test
R=msw@chromium.org

Review-Url: https://codereview.chromium.org/2539263005
Cr-Commit-Position: refs/heads/master@{#435845}

[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_client.cc
[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_client.h
[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_client_unittest.cc
[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_host_mus.cc
[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_host_mus.h
[modify] https://crrev.com/3663991e5d08bfa67d6c673bb46fb4e4f2875aac/ui/aura/mus/window_tree_host_mus_delegate.h

Comment 11 by sky@chromium.org, Jan 4 2017

Status: Fixed (was: Started)
I'm calling this done. There are still some issues, but they are filed under the uber bug for getting views to work with aura-mus here: 660994

Comment 12 by dchan@google.com, Mar 4 2017

Labels: VerifyIn-58

Comment 13 by dchan@google.com, Apr 17 2017

Labels: VerifyIn-59

Comment 14 by dchan@google.com, May 30 2017

Labels: VerifyIn-60
Labels: VerifyIn-61

Comment 16 by dchan@chromium.org, Oct 14 2017

Status: Archived (was: Fixed)
Components: -Internals>MUS Internals>Services>WindowService

Sign in to add a comment