From f36565cba9dd0d9de3209774116227fa639c3aee Mon Sep 17 00:00:00 2001 From: Hombre Date: Fri, 18 Mar 2016 21:49:23 +0100 Subject: [PATCH] Fix issue #3182: "Preview image jumps around on canvas while zooming" --- rtgui/crophandler.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rtgui/crophandler.cc b/rtgui/crophandler.cc index b0c257101..a76f23717 100644 --- a/rtgui/crophandler.cc +++ b/rtgui/crophandler.cc @@ -131,6 +131,7 @@ void CropHandler::setZoom (int z, int centerx, int centery) { assert (ipc); + int oldZoom = zoom; float oldScale = zoom >= 1000 ? float(zoom / 1000) : 1.f / float(zoom); float newScale = z >= 1000 ? float(z / 1000) : 1.f / float(z); @@ -177,8 +178,9 @@ void CropHandler::setZoom (int z, int centerx, int centery) compDim (); - if (enabled && (oldcax != cax || oldcay != cay || oldCropX != cropX || oldCropY != cropY || oldCropW != cropW || oldCropH != cropH)) { + if (enabled && (oldZoom != zoom || oldcax != cax || oldcay != cay || oldCropX != cropX || oldCropY != cropY || oldCropW != cropW || oldCropH != cropH)) { if (needsFullRefresh) { + cropPixbuf.clear (); ipc->startProcessing(M_HIGHQUAL); } else { update ();