Support xwayland resolution switching |
|||
Issue descriptionChrome doesn't implement interfaces that allows an Xwl managed instance of Xwayland to adjust resolution when Chrome changes resolution/density. We need to know about the UI scale factors that Chrome supports to handle this correctly. https://chromium-review.googlesource.com/804354 adds the interfaces needed to support this. They just need to be implemented.
,
Dec 5 2017
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/92041623687a1f43333508d1ffc84ce8bd97bf2d commit 92041623687a1f43333508d1ffc84ce8bd97bf2d Author: David Reveman <reveman@chromium.org> Date: Fri Dec 08 02:43:22 2017 exo: Implement aura shell version 2. Version 2 provides clients with an interface to keep track of scale factors used by the shell. It provides a full list of supported scale factors and flags to indicate what the current and preferred scale factor is. Version 2 also adds a new request for setting the parent of a top level shell surface and specifying an initial location relative to parent. This also adds a new 'info' client that can be used for testing. The client connects to a compositor and prints all output related properties. Example output: geometry: x: 0 y: 0 physical width: 423 mm physical height: 317 mm subpixel: unknown make: unknown model: unknown transform: normal modes: 1600x1200: 60.00 Hz current preferred device scale factor: 1 scales: 0.500: 0.800: 1.000: preferred 1.200: 1.600: current TBR=reveman@chromium.org (cherry picked from commit 32715093d78f468c77dc13324914ecbcb56f1219) Test: exo_unittests --gtest_filter=ShellSurfaceTest.SetParent Test: wayland_info_client Bug: 791672 , 791681 Change-Id: Iab6869f5b54a6b5970dea40025edea46d0113c2c Reviewed-on: https://chromium-review.googlesource.com/805358 Commit-Queue: Daniele Castagna <dcastagna@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#521752} Reviewed-on: https://chromium-review.googlesource.com/816514 Reviewed-by: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#90} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/shell_surface.cc [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/shell_surface.h [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/shell_surface_unittest.cc [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/sub_surface.h [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/surface.cc [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/surface.h [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/surface_delegate.h [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/surface_tree_host.h [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/wayland/BUILD.gn [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/wayland/clients/client_helper.cc [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/wayland/clients/client_helper.h [add] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/wayland/clients/info.cc [modify] https://crrev.com/92041623687a1f43333508d1ffc84ce8bd97bf2d/components/exo/wayland/server.cc
,
Dec 8 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/843d616e23985127e65eb603c79bb037e661d2cd commit 843d616e23985127e65eb603c79bb037e661d2cd Author: Qiang(Joe) Xu <warx@chromium.org> Date: Fri Dec 08 05:08:59 2017 Revert "exo: Implement aura shell version 2." This reverts commit 92041623687a1f43333508d1ffc84ce8bd97bf2d. Reason for revert: causing compile error in m64 builders, see crbug.com/793193 Original change's description: > exo: Implement aura shell version 2. > > Version 2 provides clients with an interface to keep track > of scale factors used by the shell. It provides a full list > of supported scale factors and flags to indicate what the > current and preferred scale factor is. > > Version 2 also adds a new request for setting the parent > of a top level shell surface and specifying an initial > location relative to parent. > > This also adds a new 'info' client that can be used for testing. The > client connects to a compositor and prints all output related > properties. Example output: > > geometry: > x: 0 > y: 0 > physical width: 423 mm > physical height: 317 mm > subpixel: unknown > make: unknown > model: unknown > transform: normal > > modes: > 1600x1200: 60.00 Hz current preferred > > device scale factor: 1 > > scales: > 0.500: > 0.800: > 1.000: preferred > 1.200: > 1.600: current > > TBR=reveman@chromium.org > > (cherry picked from commit 32715093d78f468c77dc13324914ecbcb56f1219) > > Test: exo_unittests --gtest_filter=ShellSurfaceTest.SetParent > Test: wayland_info_client > Bug: 791672 , 791681 > Change-Id: Iab6869f5b54a6b5970dea40025edea46d0113c2c > Reviewed-on: https://chromium-review.googlesource.com/805358 > Commit-Queue: Daniele Castagna <dcastagna@chromium.org> > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > Cr-Original-Commit-Position: refs/heads/master@{#521752} > Reviewed-on: https://chromium-review.googlesource.com/816514 > Reviewed-by: David Reveman <reveman@chromium.org> > Cr-Commit-Position: refs/branch-heads/3282@{#90} > Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} TBR=reveman@chromium.org,dcastagna@chromium.org Change-Id: I8724288a5837f2c994585170b2831a05520722e8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 791672 , 791681 Bug: 793193 Reviewed-on: https://chromium-review.googlesource.com/816614 Reviewed-by: Qiang(Joe) Xu <warx@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#92} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/shell_surface.cc [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/shell_surface.h [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/shell_surface_unittest.cc [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/sub_surface.h [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/surface.cc [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/surface.h [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/surface_delegate.h [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/surface_tree_host.h [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/wayland/BUILD.gn [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/wayland/clients/client_helper.cc [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/wayland/clients/client_helper.h [delete] https://crrev.com/298fb263f122250540bcb69dcc00531f2e95bcba/components/exo/wayland/clients/info.cc [modify] https://crrev.com/843d616e23985127e65eb603c79bb037e661d2cd/components/exo/wayland/server.cc
,
Dec 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/204edd66ce06112f85fe70a0502c796f03f73330 commit 204edd66ce06112f85fe70a0502c796f03f73330 Author: David Reveman <reveman@chromium.org> Date: Tue Dec 12 01:11:21 2017 exo: Aura shell version 2. Version 2 additions: - set_parent request that can be used to provide an initial position relative to parent for shell surfaces. - zaura_output extension to wl_output that provides detailed information about supported scale factors. TBR=reveman@chromium.org (cherry picked from commit fe1dd7780f6713d4e4518bad931dcadfd80f9985) Test: compile Bug: 791672 , 791681 Change-Id: I00aebee4475a7004db84f6f0e2cb5d41d8a823da Reviewed-on: https://chromium-review.googlesource.com/804354 Commit-Queue: David Reveman <reveman@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#521077} Reviewed-on: https://chromium-review.googlesource.com/821371 Reviewed-by: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#160} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} [modify] https://crrev.com/204edd66ce06112f85fe70a0502c796f03f73330/components/exo/wayland/aura-shell-client-protocol.h [modify] https://crrev.com/204edd66ce06112f85fe70a0502c796f03f73330/components/exo/wayland/aura-shell-protocol.c [modify] https://crrev.com/204edd66ce06112f85fe70a0502c796f03f73330/components/exo/wayland/aura-shell-server-protocol.h [modify] https://crrev.com/204edd66ce06112f85fe70a0502c796f03f73330/components/exo/wayland/protocol/aura-shell.xml
,
Dec 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4 commit c9d9d4bd244c0e166781f9224fabbdf6b5c390c4 Author: David Reveman <reveman@chromium.org> Date: Tue Dec 12 03:02:38 2017 Revert "Revert "exo: Implement aura shell version 2."" This reverts commit 843d616e23985127e65eb603c79bb037e661d2cd. Reason for revert: Dependency CL (https://chromium-review.googlesource.com/c/chromium/src/+/821371) has now been merge to branch. Original change's description: > Revert "exo: Implement aura shell version 2." > > This reverts commit 92041623687a1f43333508d1ffc84ce8bd97bf2d. > > Reason for revert: causing compile error in m64 builders, > see crbug.com/793193 > > Original change's description: > > exo: Implement aura shell version 2. > > > > Version 2 provides clients with an interface to keep track > > of scale factors used by the shell. It provides a full list > > of supported scale factors and flags to indicate what the > > current and preferred scale factor is. > > > > Version 2 also adds a new request for setting the parent > > of a top level shell surface and specifying an initial > > location relative to parent. > > > > This also adds a new 'info' client that can be used for testing. The > > client connects to a compositor and prints all output related > > properties. Example output: > > > > geometry: > > x: 0 > > y: 0 > > physical width: 423 mm > > physical height: 317 mm > > subpixel: unknown > > make: unknown > > model: unknown > > transform: normal > > > > modes: > > 1600x1200: 60.00 Hz current preferred > > > > device scale factor: 1 > > > > scales: > > 0.500: > > 0.800: > > 1.000: preferred > > 1.200: > > 1.600: current > > > > TBR=reveman@chromium.org > > > > (cherry picked from commit 32715093d78f468c77dc13324914ecbcb56f1219) > > > > Test: exo_unittests --gtest_filter=ShellSurfaceTest.SetParent > > Test: wayland_info_client > > Bug: 791672 , 791681 > > Change-Id: Iab6869f5b54a6b5970dea40025edea46d0113c2c > > Reviewed-on: https://chromium-review.googlesource.com/805358 > > Commit-Queue: Daniele Castagna <dcastagna@chromium.org> > > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > > Cr-Original-Commit-Position: refs/heads/master@{#521752} > > Reviewed-on: https://chromium-review.googlesource.com/816514 > > Reviewed-by: David Reveman <reveman@chromium.org> > > Cr-Commit-Position: refs/branch-heads/3282@{#90} > > Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} > > TBR=reveman@chromium.org,dcastagna@chromium.org > > Change-Id: I8724288a5837f2c994585170b2831a05520722e8 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 791672 , 791681 > Bug: 793193 > Reviewed-on: https://chromium-review.googlesource.com/816614 > Reviewed-by: Qiang(Joe) Xu <warx@chromium.org> > Cr-Commit-Position: refs/branch-heads/3282@{#92} > Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} TBR=reveman@chromium.org,dcastagna@chromium.org,warx@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 791672 , 791681 , 793193 Change-Id: Ie0a0b4db78693e0ecaef8eee9a8b21806a38fae5 Reviewed-on: https://chromium-review.googlesource.com/821571 Reviewed-by: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/branch-heads/3282@{#166} Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840} [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/shell_surface.cc [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/shell_surface.h [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/shell_surface_unittest.cc [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/sub_surface.h [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/surface.cc [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/surface.h [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/surface_delegate.h [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/surface_tree_host.h [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/wayland/BUILD.gn [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/wayland/clients/client_helper.cc [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/wayland/clients/client_helper.h [add] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/wayland/clients/info.cc [modify] https://crrev.com/c9d9d4bd244c0e166781f9224fabbdf6b5c390c4/components/exo/wayland/server.cc
,
Apr 12 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/21e2236ddc8edb47426dc040eb6952735679aaea commit 21e2236ddc8edb47426dc040eb6952735679aaea Author: David Reveman <reveman@chromium.org> Date: Thu Apr 12 06:01:10 2018 exo: Implement version 5 of aura shell. This adds two new events to aura_output interface that makes it easier for clients to calculate an ideal contents scale. This also adds a new request that can be used to set a unique application ID for a surface. The application ID identifies the general class of applications to which the surface belongs. The compositor can use this to group multiple surfaces together. For example, "org.chromium.FooViewer". Note that the application ID set here takes precedence over the app id set through XDG shell interface. To keep it simple, we just remove the implementation of xdg surface set_app_id. If that turns out to be useful in the future, then we can always re-implement that and make it available as an alternative ID. Bug: 824449 , 791672 Test: wayland_client_info Change-Id: I3219cedbd7d9ce65e73ca33127ea976acc8c4163 Reviewed-on: https://chromium-review.googlesource.com/1008664 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Commit-Queue: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/heads/master@{#550038} [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/shell_surface_base.cc [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/shell_surface_base.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/sub_surface.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/surface.cc [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/surface.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/surface_delegate.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/surface_tree_host.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/clients/client_base.cc [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/clients/info.cc [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/protocol/aura-shell.xml [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/public/aura-shell-client-protocol.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/public/aura-shell-protocol.c [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/public/aura-shell-server-protocol.h [modify] https://crrev.com/21e2236ddc8edb47426dc040eb6952735679aaea/components/exo/wayland/server.cc |
|||
►
Sign in to add a comment |
|||
Comment 1 by bugdroid1@chromium.org
, Dec 5 2017