app: update the GimpFgBgEditor when image colormap is updated.

This commit is contained in:
Jehan
2019-03-06 23:51:23 +01:00
parent ac98d7c021
commit 8e8b4e82c1

View File

@ -882,9 +882,20 @@ gimp_fg_bg_editor_image_changed (GimpFgBgEditor *editor,
gtk_widget_queue_draw (GTK_WIDGET (editor));
if (editor->active_image)
g_signal_handlers_disconnect_by_func (editor->active_image,
G_CALLBACK (gtk_widget_queue_draw),
editor);
{
g_signal_handlers_disconnect_by_func (editor->active_image,
G_CALLBACK (gtk_widget_queue_draw),
editor);
if (gimp_image_get_base_type (editor->active_image) == GIMP_INDEXED)
{
GimpPalette *palette;
palette = gimp_image_get_colormap_palette (editor->active_image);
g_signal_handlers_disconnect_by_func (palette,
G_CALLBACK (gtk_widget_queue_draw),
editor);
}
}
editor->active_image = image;
if (image)
{
@ -894,5 +905,15 @@ gimp_fg_bg_editor_image_changed (GimpFgBgEditor *editor,
g_signal_connect_swapped (image, "colormap-changed",
G_CALLBACK (gtk_widget_queue_draw),
editor);
if (gimp_image_get_base_type (image) == GIMP_INDEXED)
{
GimpPalette *palette;
palette = gimp_image_get_colormap_palette (editor->active_image);
g_signal_connect_swapped (palette, "dirty",
G_CALLBACK (gtk_widget_queue_draw),
editor);
}
}
}