[PATCH weston 4/8] shell: Update bindings to conform to pointer axis protocol

Tiago Vignatti tiago.vignatti at linux.intel.com
Thu Sep 27 09:50:33 PDT 2012


On 09/27/2012 07:40 PM, Jonas Ådahl wrote:
> Signed-off-by: Jonas Ådahl <jadahl at gmail.com>
> ---
>   src/shell.c |   10 ++++++----
>   1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/src/shell.c b/src/shell.c
> index 06d8684..ceea607 100644
> --- a/src/shell.c
> +++ b/src/shell.c
> @@ -1860,9 +1860,10 @@ shell_map_popup(struct shell_surface *shsurf)
>   	}
>   	wl_list_insert(es->geometry.transformation_list.prev,
>   		       &shsurf->popup.parent_transform.link);
> -	weston_surface_set_position(es, shsurf->popup.x, shsurf->popup.y);
>
>   	shsurf->popup.initial_up = 0;
> +	weston_surface_set_position(es, shsurf->popup.x, shsurf->popup.y);
> +	weston_surface_update_transform(es);

is this snip really belongs to patch? I can't see how.


>   	/* We don't require the grab to still be active, but if another
>   	 * grab has started in the meantime, we end the popup now. */
> @@ -2361,7 +2362,7 @@ static void
>   surface_opacity_binding(struct wl_seat *seat, uint32_t time, uint32_t axis,
>   			wl_fixed_t value, void *data)
>   {
> -	float step = 0.05;
> +	float step = 0.005;
>   	struct shell_surface *shsurf;
>   	struct weston_surface *surface =
>   		(struct weston_surface *) seat->pointer->focus;
> @@ -2373,7 +2374,7 @@ surface_opacity_binding(struct wl_seat *seat, uint32_t time, uint32_t axis,
>   	if (!shsurf)
>   		return;
>
> -	surface->alpha += wl_fixed_to_double(value) * step;
> +	surface->alpha -= wl_fixed_to_double(value) * step;
>
>   	if (surface->alpha > 1.0)
>   		surface->alpha = 1.0;
> @@ -2403,8 +2404,9 @@ do_zoom(struct wl_seat *seat, uint32_t time, uint32_t key, uint32_t axis,
>   			else if (key == KEY_PAGEDOWN)
>   				increment = -output->zoom.increment;
>   			else if (axis == WL_POINTER_AXIS_VERTICAL_SCROLL)
> +				/* For every pixel zoom 20th of a step */
>   				increment = output->zoom.increment *
> -					    wl_fixed_to_double(value);
> +					    -wl_fixed_to_double(value) / 20.0;
>   			else
>   				increment = 0;
>
>



More information about the wayland-devel mailing list