ui/gtk/image.c

changeset 1242
7f142ba9fd5f
parent 1240
3e2516e7a957
equal deleted inserted replaced
1241:a23d6609e70e 1242:7f142ba9fd5f
204 return toplevel; 204 return toplevel;
205 } 205 }
206 206
207 static void imageviewer_reset(UiImageViewer *imgviewer) { 207 static void imageviewer_reset(UiImageViewer *imgviewer) {
208 imgviewer->isautoscaled = FALSE; 208 imgviewer->isautoscaled = FALSE;
209 imgviewer->autoscaled_for_width = 0;
210 imgviewer->autoscaled_for_height = 0;
209 imgviewer->transx = 0; 211 imgviewer->transx = 0;
210 imgviewer->transy; 212 imgviewer->transy;
211 imgviewer->begin_transx = 0; 213 imgviewer->begin_transx = 0;
212 imgviewer->begin_transy = 0; 214 imgviewer->begin_transy = 0;
213 imgviewer->scale = 1; 215 imgviewer->scale = 1;
298 double dheight = height; 300 double dheight = height;
299 double scale = 1; 301 double scale = 1;
300 // if autoscale is enabled, scale the image to fill available space 302 // if autoscale is enabled, scale the image to fill available space
301 // if useradjustable is also enabled, the autoscaling is only done once 303 // if useradjustable is also enabled, the autoscaling is only done once
302 if(imgviewer->autoscale && imgviewer->scale != 0) { 304 if(imgviewer->autoscale && imgviewer->scale != 0) {
303 if(!imgviewer->isautoscaled) { 305 if(!imgviewer->isautoscaled ||
306 width != imgviewer->autoscaled_for_width ||
307 height != imgviewer->autoscaled_for_height)
308 {
304 scale = dwidth / dpixwidth; 309 scale = dwidth / dpixwidth;
305 if(dpixheight * scale > dheight) { 310 if(dpixheight * scale > dheight) {
306 scale = dheight / dpixheight; 311 scale = dheight / dpixheight;
307 } 312 }
308 313

mercurial