diff --git a/src/main/java/bdv/viewer/render/MultiResolutionRenderer.java b/src/main/java/bdv/viewer/render/MultiResolutionRenderer.java
index 3fa0227dec204a594c76a768722caa98faf044b8..b9ca971cd43d7ab3f69e62e1787c0f23e4d09a3f 100644
--- a/src/main/java/bdv/viewer/render/MultiResolutionRenderer.java
+++ b/src/main/java/bdv/viewer/render/MultiResolutionRenderer.java
@@ -453,6 +453,8 @@ public class MultiResolutionRenderer
 				bufferedImage = null;
 				p = projector;
 			}
+
+			requestedScreenScaleIndex = 0;
 		}
 
 		// try rendering
@@ -530,7 +532,8 @@ public class MultiResolutionRenderer
 	{
 		if ( renderingMayBeCancelled && projector != null )
 			projector.cancel();
-		requestedScreenScaleIndex = screenScaleIndex;
+		if ( screenScaleIndex > requestedScreenScaleIndex )
+			requestedScreenScaleIndex = screenScaleIndex;
 		painterThread.requestRepaint();
 	}