[PATCH weston V2] desktop-shell: Add support for touch unlock

Kristian Høgsberg hoegsberg at gmail.com
Mon Aug 26 22:11:33 PDT 2013


On Mon, Aug 26, 2013 at 03:58:22PM -0700, Brian Lovin wrote:
> From: Brian J Lovin <brian.j.lovin at intel.com>
> 
> Add support for unlocking on touch up using the
> green button on the unlock dialog

Looks good now, thanks.

Kristian

> Signed-off-by: Brian J Lovin <brian.j.lovin at intel.com>
> ---
>  clients/desktop-shell.c | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
> 
> diff --git a/clients/desktop-shell.c b/clients/desktop-shell.c
> index 319382d..c62c845 100644
> --- a/clients/desktop-shell.c
> +++ b/clients/desktop-shell.c
> @@ -833,6 +833,31 @@ unlock_dialog_button_handler(struct widget *widget,
>  }
>  
>  static void
> +unlock_dialog_touch_down_handler(struct widget *widget, struct input *input,
> +		   uint32_t serial, uint32_t time, int32_t id,
> +		   float x, float y, void *data)
> +{
> +	struct unlock_dialog *dialog = data;
> +
> +	dialog->button_focused = 1;
> +	widget_schedule_redraw(widget);
> +}
> +
> +static void
> +unlock_dialog_touch_up_handler(struct widget *widget, struct input *input,
> +				uint32_t serial, uint32_t time, int32_t id,
> +				void *data)
> +{
> +	struct unlock_dialog *dialog = data;
> +	struct desktop *desktop = dialog->desktop;
> +
> +	dialog->button_focused = 0;
> +	widget_schedule_redraw(widget);
> +	display_defer(desktop->display, &desktop->unlock_task);
> +	dialog->closing = 1;
> +}
> +
> +static void
>  unlock_dialog_keyboard_focus_handler(struct window *window,
>  				     struct input *device, void *data)
>  {
> @@ -886,6 +911,10 @@ unlock_dialog_create(struct desktop *desktop)
>  				 unlock_dialog_widget_leave_handler);
>  	widget_set_button_handler(dialog->button,
>  				  unlock_dialog_button_handler);
> +	widget_set_touch_down_handler(dialog->button,
> +				      unlock_dialog_touch_down_handler);
> +	widget_set_touch_up_handler(dialog->button,
> +				      unlock_dialog_touch_up_handler);
>  
>  	desktop_shell_set_lock_surface(desktop->shell,
>  				       window_get_wl_surface(dialog->window));
> -- 
> 1.7.11.7
> 
> _______________________________________________
> 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