]> git.rm.cloudns.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Properly limit zooming at mouse position
authorterencehill <piuntn@gmail.com>
Sun, 14 Aug 2011 16:39:06 +0000 (18:39 +0200)
committerterencehill <piuntn@gmail.com>
Sun, 14 Aug 2011 16:39:06 +0000 (18:39 +0200)
qcsrc/menu/item/image.c

index f05826d9d72c0c21a74a13f06b08bb4553e2ea36..7730741329646a07be9604294643918ca89a418f 100644 (file)
@@ -100,6 +100,8 @@ void Image_updateAspect(entity me)
                        me.zoomOffset_x = bound(0, me.zoomOffset_x, 1);
                        me.zoomOffset_y = bound(0, me.zoomOffset_y, 1);
                }
+               else
+                       me.zoomOffset = '0.5 0.5 0';
 
                me.imgOrigin_x = 0.5 - me.zoomOffset_x * me.imgSize_x;
                me.imgOrigin_y = 0.5 - me.zoomOffset_y * me.imgSize_y;
@@ -157,9 +159,7 @@ void Image_setZoom(entity me, float z, float atMousePosition)
        else // directly set
                me.zoomFactor = z;
        me.zoomFactor = bound(1/16, me.zoomFactor, 16);
-       if (me.zoomFactor <= 1)
-               me.zoomOffset = '0.5 0.5 0';
-       else if (atMousePosition && prev_zoomFactor != me.zoomFactor)
+       if (atMousePosition && prev_zoomFactor != me.zoomFactor)
                me.zoomOffset = me.start_zoomOffset + (me.start_coords - '0.5 0.5 0') * (1/prev_zoomFactor);
        if (prev_zoomFactor != me.zoomFactor)
                me.zoomTime = time;