From 3e200c81d7571bdeb715346765ce5da6af0b5967 Mon Sep 17 00:00:00 2001 From: Alx Sa Date: Tue, 6 Feb 2024 18:20:36 +0000 Subject: [PATCH] widgets: Don't merge filters on pixel locked layers Resolves #10767 Since you can't merge other layers onto a pixel locked layer, it makes sense to prevent that with NDE filters as well. --- app/widgets/gimpitemtreeview.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/app/widgets/gimpitemtreeview.c b/app/widgets/gimpitemtreeview.c index 5da2c61bbe..b6de81f849 100644 --- a/app/widgets/gimpitemtreeview.c +++ b/app/widgets/gimpitemtreeview.c @@ -2556,8 +2556,8 @@ gimp_item_tree_view_effects_merged_clicked (GtkWidget *widget, ! strcmp (gimp_object_get_name (active_tool), "gimp-warp-tool")) { view->priv->effects_filter = NULL; - gimp_message_literal ( view->priv->image->gimp, G_OBJECT (view), - GIMP_MESSAGE_ERROR, + gimp_message_literal (view->priv->image->gimp, G_OBJECT (view), + GIMP_MESSAGE_ERROR, _("Effects from active tools can not be merged.")); return; @@ -2568,6 +2568,15 @@ gimp_item_tree_view_effects_merged_clicked (GtkWidget *widget, GimpImage *image = view->priv->image; GeglNode *op = gimp_drawable_filter_get_operation (view->priv->effects_filter); + /* Don't merge if the layer is currently locked */ + if (gimp_item_get_lock_content (GIMP_ITEM (view->priv->effects_drawable))) + { + gimp_message_literal (view->priv->image->gimp, G_OBJECT (view), + GIMP_MESSAGE_WARNING, + _("The layer to merge down to is locked.")); + return; + } + if (op) { gimp_drawable_merge_filters (GIMP_DRAWABLE (view->priv->effects_drawable));