Re: [PATCH weston] desktop-shell: Don’t reconfigure an already fullscreen surface

Yong Bakos junk at humanoriented.com
Tue May 10 15:18:14 UTC 2016


On May 9, 2016, at 8:22 PM, Emmanuel Gil Peyrot <linkmauve at linkmauve.fr> wrote:
> 
> When we receive an wl_shell_surface::set_fullscreen request for a
> surface that was already fullscreen, don’t do anything if the
> parameters are the same as the initial request.
> 
> This prevents bogus or malicious clients from being able to always stay
> on front by flooding the compositor with set_fullscreen requests after
> the user has put them in the background with a mod+tab.
> 
> Signed-off-by: Emmanuel Gil Peyrot <linkmauve at linkmauve.fr>

Makes sense, and I can't immediately think of a use case where this wouldn't
make sense. So fwiw,
Reviewed-by: Yong Bakos <ybakos at humanoriented.com>

yong


> ---
> desktop-shell/shell.c | 7 +++++++
> 1 file changed, 7 insertions(+)
> 
> diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
> index 1c39a12..7d5bca9 100644
> --- a/desktop-shell/shell.c
> +++ b/desktop-shell/shell.c
> @@ -2561,6 +2561,13 @@ shell_surface_set_fullscreen(struct wl_client *client,
> 	struct shell_surface *shsurf = wl_resource_get_user_data(resource);
> 	struct weston_output *output;
> 
> +	if (shsurf->fullscreen_output == shsurf->output &&
> +	    shsurf->fullscreen.type == method &&
> +	    shsurf->fullscreen.framerate == framerate) {
> +		send_configure_for_surface(shsurf);
> +		return;
> +	}
> +
> 	if (output_resource)
> 		output = wl_resource_get_user_data(output_resource);
> 	else
> -- 
> 2.8.2
> 
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel



More information about the wayland-devel mailing list