diff --git a/ChangeLog b/ChangeLog index e60ee5d9bf..fe0b03b45a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Apr 01 04:07:29 EST 1998 Matthew Wilson + + * app/disp_callbacks.c: Only destroy the current tool if you change + gdisplays and the tool caches image data. + Wed Apr 01 03:40:15 EST 1998 Matthew Wilson * app/disp_callbacks.c: If the current gdisp->ID does not match diff --git a/app/disp_callbacks.c b/app/disp_callbacks.c index db09e8601d..b152cbebca 100644 --- a/app/disp_callbacks.c +++ b/app/disp_callbacks.c @@ -150,7 +150,7 @@ gdisplay_canvas_events (GtkWidget *canvas, /* Reset the current tool if we're changing displays... */ tool_gdisp = active_tool->gdisp_ptr; if (tool_gdisp) - if (tool_gdisp->ID != gdisp->ID) + if (tool_gdisp->ID != gdisp->ID && !active_tool->preserve) tools_select(active_tool->type); (* active_tool->button_press_func) (active_tool, bevent, gdisp); } diff --git a/app/display/gimpdisplay-callbacks.c b/app/display/gimpdisplay-callbacks.c index db09e8601d..b152cbebca 100644 --- a/app/display/gimpdisplay-callbacks.c +++ b/app/display/gimpdisplay-callbacks.c @@ -150,7 +150,7 @@ gdisplay_canvas_events (GtkWidget *canvas, /* Reset the current tool if we're changing displays... */ tool_gdisp = active_tool->gdisp_ptr; if (tool_gdisp) - if (tool_gdisp->ID != gdisp->ID) + if (tool_gdisp->ID != gdisp->ID && !active_tool->preserve) tools_select(active_tool->type); (* active_tool->button_press_func) (active_tool, bevent, gdisp); } diff --git a/app/display/gimpdisplayshell-callbacks.c b/app/display/gimpdisplayshell-callbacks.c index db09e8601d..b152cbebca 100644 --- a/app/display/gimpdisplayshell-callbacks.c +++ b/app/display/gimpdisplayshell-callbacks.c @@ -150,7 +150,7 @@ gdisplay_canvas_events (GtkWidget *canvas, /* Reset the current tool if we're changing displays... */ tool_gdisp = active_tool->gdisp_ptr; if (tool_gdisp) - if (tool_gdisp->ID != gdisp->ID) + if (tool_gdisp->ID != gdisp->ID && !active_tool->preserve) tools_select(active_tool->type); (* active_tool->button_press_func) (active_tool, bevent, gdisp); }