mirror of https://github.com/GNOME/gimp.git
Bug 783108 - Make paint tools draw in all open views
Committed with minor fixes by the reviewer (Jehan).
This commit is contained in:
parent
be513e04ef
commit
2aa246f5e9
|
@ -24,6 +24,7 @@
|
|||
#include "libgimpmath/gimpmath.h"
|
||||
|
||||
#include "tools-types.h"
|
||||
#include "core/gimp.h"
|
||||
|
||||
#include "config/gimpdisplayconfig.h"
|
||||
|
||||
|
@ -257,6 +258,7 @@ gimp_paint_tool_button_press (GimpTool *tool,
|
|||
GimpCoords curr_coords;
|
||||
gint off_x, off_y;
|
||||
GError *error = NULL;
|
||||
GList *list;
|
||||
|
||||
if (gimp_color_tool_is_enabled (GIMP_COLOR_TOOL (tool)))
|
||||
{
|
||||
|
@ -364,7 +366,14 @@ gimp_paint_tool_button_press (GimpTool *tool,
|
|||
}
|
||||
|
||||
gimp_projection_flush_now (gimp_image_get_projection (image));
|
||||
gimp_display_flush_now (display);
|
||||
|
||||
/* Update all views this image is in. */
|
||||
for (list = gimp_get_display_iter (image->gimp);
|
||||
list;
|
||||
list = g_list_next (list))
|
||||
{
|
||||
gimp_display_flush_now (GIMP_DISPLAY (list->data));
|
||||
}
|
||||
|
||||
gimp_draw_tool_start (draw_tool, display);
|
||||
}
|
||||
|
@ -429,6 +438,7 @@ gimp_paint_tool_motion (GimpTool *tool,
|
|||
GimpDrawable *drawable = gimp_image_get_active_drawable (image);
|
||||
GimpCoords curr_coords;
|
||||
gint off_x, off_y;
|
||||
GList *list;
|
||||
|
||||
GIMP_TOOL_CLASS (parent_class)->motion (tool, coords, time, state, display);
|
||||
|
||||
|
@ -457,7 +467,14 @@ gimp_paint_tool_motion (GimpTool *tool,
|
|||
&curr_coords, time);
|
||||
|
||||
gimp_projection_flush_now (gimp_image_get_projection (image));
|
||||
gimp_display_flush_now (display);
|
||||
|
||||
/* Update all views this image is in. */
|
||||
for (list = gimp_get_display_iter (image->gimp);
|
||||
list;
|
||||
list = g_list_next (list))
|
||||
{
|
||||
gimp_display_flush_now (GIMP_DISPLAY (list->data));
|
||||
}
|
||||
|
||||
gimp_draw_tool_resume (GIMP_DRAW_TOOL (tool));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue