gimp r26789 - in trunk: . app/tools



Author: neo
Date: Wed Aug 27 09:56:46 2008
New Revision: 26789
URL: http://svn.gnome.org/viewvc/gimp?rev=26789&view=rev

Log:
2008-08-27  Sven Neumann  <sven gimp org>

	* app/tools/gimptransformtool.c: moved hiding the dialog from 
	gimp_transform_tool_real_transform() to 
gimp_transform_tool_doit().
	Delay undrawing the preview in doit() until the transformation 
is
	done. This removes the annoying flicker at the end.



Modified:
   trunk/ChangeLog
   trunk/app/tools/gimptransformtool.c

Modified: trunk/app/tools/gimptransformtool.c
==============================================================================
--- trunk/app/tools/gimptransformtool.c	(original)
+++ trunk/app/tools/gimptransformtool.c	Wed Aug 27 09:56:46 2008
@@ -1066,10 +1066,7 @@
   TileManager          *ret  = NULL;
 
   if (tr_tool->dialog)
-    {
-      gtk_widget_set_sensitive (tr_tool->dialog, FALSE);
-      gimp_dialog_factory_hide_dialog (tr_tool->dialog);
-    }
+    gtk_widget_set_sensitive (tr_tool->dialog, FALSE);
 
   progress = gimp_progress_start (GIMP_PROGRESS (display),
                                   tr_tool->progress_text, FALSE);
@@ -1184,15 +1181,9 @@
       return;
     }
 
-  mask_empty = gimp_channel_is_empty (gimp_image_get_mask (display->image));
+  gimp_dialog_factory_hide_dialog (tr_tool->dialog);
 
-  if (gimp_display_shell_get_show_transform (shell))
-    {
-      gimp_display_shell_set_show_transform (shell, FALSE);
-
-      /* get rid of preview artifacts left outside the drawable's area */
-      gtk_widget_queue_draw (shell->canvas);
-    }
+  mask_empty = gimp_channel_is_empty (gimp_image_get_mask (display->image));
 
   gimp_set_busy (display->image->gimp);
 
@@ -1299,6 +1290,14 @@
    */
   gimp_tool_control_set_preserve (tool->control, FALSE);
 
+  if (gimp_display_shell_get_show_transform (shell))
+    {
+      gimp_display_shell_set_show_transform (shell, FALSE);
+
+      /* get rid of preview artifacts left outside the drawable's area */
+      gtk_widget_queue_draw (shell->canvas);
+    }
+
   gimp_unset_busy (display->image->gimp);
 
   gimp_image_flush (display->image);
@@ -1357,7 +1356,9 @@
        options->preview_type == GIMP_TRANSFORM_PREVIEW_TYPE_IMAGE_GRID) &&
       options->type         == GIMP_TRANSFORM_TYPE_LAYER &&
       options->direction    == GIMP_TRANSFORM_FORWARD)
-    gimp_transform_tool_force_expose_preview (tr_tool);
+    {
+      gimp_transform_tool_force_expose_preview (tr_tool);
+    }
 }
 
 static void



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