[gthumb] emit the image_changed signal only when the zoom level is ready



commit 04b8593b8bccf2758886e30afe408004d411f30f
Author: Paolo Bacchilega <paobac src gnome org>
Date:   Sun Mar 16 16:50:04 2014 +0100

    emit the image_changed signal only when the zoom level is ready
    
    [bug #722631]

 gthumb/gth-image-viewer.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
---
diff --git a/gthumb/gth-image-viewer.c b/gthumb/gth-image-viewer.c
index 2bea628..15c730b 100644
--- a/gthumb/gth-image-viewer.c
+++ b/gthumb/gth-image-viewer.c
@@ -369,8 +369,10 @@ set_zoom (GthImageViewer *self,
 
        _gth_image_viewer_update_image_area (self);
        if (self->priv->update_image_after_zoom) {
+               g_signal_emit (G_OBJECT (self), gth_image_viewer_signals[IMAGE_CHANGED], 0);
                gth_image_viewer_tool_image_changed (self->priv->tool);
                self->priv->update_image_after_zoom = FALSE;
+               self->priv->skip_zoom_change = TRUE;
        }
        else
                gth_image_viewer_tool_zoom_changed (self->priv->tool);
@@ -1605,7 +1607,7 @@ _gth_image_viewer_content_changed (GthImageViewer *self,
 
        if (better_quality)
                g_signal_emit (G_OBJECT (self), gth_image_viewer_signals[BETTER_QUALITY], 0);
-       else
+       else if (! self->priv->zoom_enabled || (self->priv->zoom_change == GTH_ZOOM_CHANGE_KEEP_PREV))
                g_signal_emit (G_OBJECT (self), gth_image_viewer_signals[IMAGE_CHANGED], 0);
 
        if (! better_quality && self->priv->reset_scrollbars) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]