[PATCH weston v2] shell: set the popup grab button as pressed only if it actually is
Kristian Høgsberg
hoegsberg at gmail.com
Wed Mar 27 10:11:21 PDT 2013
On Wed, Mar 27, 2013 at 06:05:26PM +0100, Giulio Camuffo wrote:
> This ensures the popup_grab.initial_up field isn't reset to 0
> if the popup was not opened because of a mouse press but because
> of moving the mouse with a popup already open. Not doing so will
> make the first click outside the client area go ignored.
> ---
> src/shell.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
Thanks, pushed.
Kristian
> diff --git a/src/shell.c b/src/shell.c
> index da9193c..c6ff300 100644
> --- a/src/shell.c
> +++ b/src/shell.c
> @@ -2008,7 +2008,11 @@ add_popup_grab(struct shell_surface *shsurf, struct shell_seat *shseat)
> if (wl_list_empty(&shseat->popup_grab.surfaces_list)) {
> shseat->popup_grab.client = shsurf->surface->surface.resource.client;
> shseat->popup_grab.grab.interface = &popup_grab_interface;
> - shseat->popup_grab.initial_up = 0;
> + /* We must make sure here that this popup was opened after
> + * a mouse press, and not just by moving around with other
> + * popups already open. */
> + if (shseat->seat->pointer.button_count > 0)
> + shseat->popup_grab.initial_up = 0;
>
> wl_pointer_start_grab(seat->pointer, &shseat->popup_grab.grab);
> }
> --
> 1.8.2
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
More information about the wayland-devel
mailing list