From 09abf0c7abe189f549dc6a8e8f81c1d5c94a4790 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Tue, 11 Feb 2025 14:52:36 +0500 Subject: [PATCH] bim.override_paste_buffer - fix issue when ctrl-v might unlink currently selected ifc elements --- src/bonsai/bonsai/bim/module/geometry/operator.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/bonsai/bonsai/bim/module/geometry/operator.py b/src/bonsai/bonsai/bim/module/geometry/operator.py index 1b43ae82b8..3eecb06d95 100644 --- a/src/bonsai/bonsai/bim/module/geometry/operator.py +++ b/src/bonsai/bonsai/bim/module/geometry/operator.py @@ -1852,8 +1852,16 @@ class OverridePasteBuffer(bpy.types.Operator): bl_options = {"REGISTER", "UNDO"} def execute(self, context): + previously_selected_objects = set(context.selected_objects) bpy.ops.view3d.pastebuffer() + + # If object selection did not change, then there were no objects to paste. + # Then exist early to prevent unlinking previously selected objects. pasted_objects = context.selected_objects + if previously_selected_objects == set(pasted_objects): + self.report({"INFO"}, "No objects to paste.") + return {"FINISHED"} + for obj in pasted_objects: # Pasted objects may come from another Blender session, or even # from the same session where the original object has since