app: layers edit actions are only meant to work on single layers.

This commit is contained in:
Jehan 2023-01-10 20:12:15 +01:00
parent 35ef93be03
commit 563744934a
1 changed files with 19 additions and 5 deletions

View File

@ -185,12 +185,15 @@ layers_edit_cmd_callback (GimpAction *action,
gpointer data) gpointer data)
{ {
GimpImage *image; GimpImage *image;
GimpLayer *layer; GList *layers;
GtkWidget *widget; GtkWidget *widget;
return_if_no_layer (image, layer, data); return_if_no_layers (image, layers, data);
return_if_no_widget (widget, data); return_if_no_widget (widget, data);
if (gimp_item_is_text_layer (GIMP_ITEM (layer))) if (g_list_length (layers) != 1)
return;
if (gimp_item_is_text_layer (GIMP_ITEM (layers->data)))
{ {
layers_edit_text_cmd_callback (action, value, data); layers_edit_text_cmd_callback (action, value, data);
} }
@ -207,11 +210,16 @@ layers_edit_text_cmd_callback (GimpAction *action,
{ {
GimpImage *image; GimpImage *image;
GimpLayer *layer; GimpLayer *layer;
GList *layers;
GtkWidget *widget; GtkWidget *widget;
GimpTool *active_tool; GimpTool *active_tool;
return_if_no_layer (image, layer, data); return_if_no_layers (image, layers, data);
return_if_no_widget (widget, data); return_if_no_widget (widget, data);
if (g_list_length (layers) != 1)
return;
layer = layers->data;
g_return_if_fail (gimp_item_is_text_layer (GIMP_ITEM (layer))); g_return_if_fail (gimp_item_is_text_layer (GIMP_ITEM (layer)));
active_tool = tool_manager_get_active (image->gimp); active_tool = tool_manager_get_active (image->gimp);
@ -247,11 +255,17 @@ layers_edit_attributes_cmd_callback (GimpAction *action,
{ {
GimpImage *image; GimpImage *image;
GimpLayer *layer; GimpLayer *layer;
GList *layers;
GtkWidget *widget; GtkWidget *widget;
GtkWidget *dialog; GtkWidget *dialog;
return_if_no_layer (image, layer, data); return_if_no_layers (image, layers, data);
return_if_no_widget (widget, data); return_if_no_widget (widget, data);
if (g_list_length (layers) != 1)
return;
layer = layers->data;
#define EDIT_DIALOG_KEY "gimp-layer-edit-attributes-dialog" #define EDIT_DIALOG_KEY "gimp-layer-edit-attributes-dialog"
dialog = dialogs_get_dialog (G_OBJECT (layer), EDIT_DIALOG_KEY); dialog = dialogs_get_dialog (G_OBJECT (layer), EDIT_DIALOG_KEY);