From aa628d0a7ca486cb9b28dc6bc4cb26a22382c7e2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ville=20Syrj=C3=A4l=C3=A4?= Date: Fri, 16 Nov 2012 11:48:47 +0200 Subject: [PATCH] shell/zoom: Increment/decrement disable_planes only when zoom.active changes MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit disable_planes should only be incremented when zoom.active actually toggles. Otherwise the counter will be incremented too many times, and planes will no longer get used. Signed-off-by: Ville Syrjälä Signed-off-by: Ander Conselvan de Oliveira --- src/shell.c | 2 +- src/zoom.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/shell.c b/src/shell.c index cccfe66..6bd89ec 100644 --- a/src/shell.c +++ b/src/shell.c @@ -2438,7 +2438,7 @@ do_zoom(struct wl_seat *seat, uint32_t time, uint32_t key, uint32_t axis, output->zoom.level = 0.0; else if (output->zoom.level > output->zoom.max_level) output->zoom.level = output->zoom.max_level; - else { + else if (!output->zoom.active) { output->zoom.active = 1; output->disable_planes++; } diff --git a/src/zoom.c b/src/zoom.c index 674a80e..3be27f6 100644 --- a/src/zoom.c +++ b/src/zoom.c @@ -123,7 +123,7 @@ weston_zoom_frame_z(struct weston_animation *animation, output->zoom.spring_z.current = 0.0; if (weston_spring_done(&output->zoom.spring_z)) { - if (output->zoom.level <= 0.0) { + if (output->zoom.active && output->zoom.level <= 0.0) { output->zoom.active = 0; output->disable_planes--; } -- 2.7.4