Mercurial > geeqie.yaz
diff src/pixbuf-renderer.c @ 29:8a8ec4b3e769
Sun Apr 3 00:36:22 2005 John Ellis <johne@verizon.net>
* image.c (image_options_set): Only enable PixbufRenderer 'window_fit'
when both the ImageWindow and global setting are both enabled.
* pan-view.c (pan_window_image_scroll_notify_cb): Add call to
gtk_adjustment_value_changed to fix performance hit when scrolling.
* pixbuf-renderer.c: Set tile render_todo flags to RENDER_ALL when
invalidating so that there is no chance it will be used with old data.
Only emit 'scroll-notify' signal when the value or range changes.
Fix copy of zoom value in pixbuf_renderer_move.
##### Note: GQview CVS on sourceforge is not always up to date, please use #####
##### an offical release when making enhancements and translation updates. #####
author | gqview |
---|---|
date | Sun, 03 Apr 2005 05:46:47 +0000 |
parents | 9c24765c2d3a |
children | c42544f31030 |
line wrap: on
line diff
--- a/src/pixbuf-renderer.c Sat Apr 02 22:59:31 2005 +0000 +++ b/src/pixbuf-renderer.c Sun Apr 03 05:46:47 2005 +0000 @@ -1766,7 +1766,7 @@ work = work->next; it->render_done = TILE_RENDER_NONE; - it->render_todo = TILE_RENDER_NONE; + it->render_todo = TILE_RENDER_ALL; it->blank = FALSE; it->w = MIN(pr->tile_width, pr->width - it->x); @@ -1798,7 +1798,7 @@ it->y < y2 && it->y + it->h > y1) { it->render_done = TILE_RENDER_NONE; - it->render_todo = TILE_RENDER_NONE; + it->render_todo = TILE_RENDER_ALL; } } } @@ -2371,7 +2371,6 @@ pr->x_scroll = 0; pr->y_scroll = 0; - pr_scroll_notify_signal(pr); return FALSE; } @@ -2396,8 +2395,6 @@ pr->y_scroll = CLAMP(pr->y_scroll, 0, pr->height - pr->vis_height); } - pr_scroll_notify_signal(pr); - return (old_xs != pr->x_scroll || old_ys != pr->y_scroll); } @@ -2609,6 +2606,7 @@ if (sized || clamped) pr_border_clear(pr); pr_redraw(pr, redrawn); + pr_scroll_notify_signal(pr); pr_zoom_signal(pr); pr_update_signal(pr); } @@ -2665,6 +2663,7 @@ pr_tile_sync(pr, pr->width, pr->height, FALSE); #endif + pr_scroll_notify_signal(pr); pr_update_signal(pr); } @@ -2715,6 +2714,8 @@ pr_scroll_clamp(pr); if (pr->x_scroll == old_x && pr->y_scroll == old_y) return; + pr_scroll_notify_signal(pr); + if (pr->overlay_list) { gint new_x, new_y; @@ -3097,7 +3098,7 @@ pr->source_tiles = source->source_tiles; source->source_tiles = NULL; - pr_zoom_sync(pr, pr->zoom, TRUE, FALSE, TRUE, FALSE, 0, 0); + pr_zoom_sync(pr, source->zoom, TRUE, FALSE, TRUE, FALSE, 0, 0); pr_redraw(pr, TRUE); } else