diff options
author | Mario Kleiner <mario.kleiner.de@gmail.com> | 2015-06-21 21:25:11 +0200 |
---|---|---|
committer | Bryce Harrington <bryce@osg.samsung.com> | 2015-06-30 12:19:58 -0700 |
commit | 808170452b237faf4d57968e1f1eb8615b0e2a2a (patch) | |
tree | d8e320ea84c4a3af6ad8b671f38fbf920e90b968 /src/compositor-drm.c | |
parent | 872797cdf5c23d85d9abf5531a3dc7141c693e62 (diff) | |
download | weston-808170452b237faf4d57968e1f1eb8615b0e2a2a.tar.gz |
compositor-drm: Allow weston_output_mode_switch_to_native() to work.
Initialize output->native_mode with the initially chosen
mode for an output, so weston_output_mode_switch_to_native()
has something to work with and can switch back from temporary
selected modes to the outputs native mode. Before, this was a
no-op.
This allows an output to switch back to its default mode if
a former toplevel fullscreen shell surface created via method
WL_SHELL_SURFACE_FULLSCREEN_METHOD_DRIVER gets destroyed, or
it gets demoted to non-fullscreen, or if modesetting on the
output failed for some reason.
v2: Modified and split into a separate patch from original
patch "Allow restore_output_mode() to work properly.",
as suggested by Derek Foreman.
Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com>
Cc: Derek Foreman <derekf@osg.samsung.com>
Reviewed-By: Derek Foreman <derekf@osg.samsung.com>
Diffstat (limited to 'src/compositor-drm.c')
-rw-r--r-- | src/compositor-drm.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compositor-drm.c b/src/compositor-drm.c index 58b2e5ac..ad708079 100644 --- a/src/compositor-drm.c +++ b/src/compositor-drm.c @@ -2202,6 +2202,10 @@ create_output_for_connector(struct drm_compositor *ec, connector->count_modes == 0 ? ", built-in" : ""); + /* Set native_ fields, so weston_output_mode_switch_to_native() works */ + output->base.native_mode = output->base.current_mode; + output->base.native_scale = output->base.current_scale; + return 0; err_output: |