[Bf-blender-cvs] [3c30d3bcbd9] blender2.8: Outliner: only drag element under mouse if it was not selected before

Jacques Lucke noreply at git.blender.org
Fri Oct 19 11:00:21 CEST 2018


Commit: 3c30d3bcbd93da4e4cded76c3fc3a30152a43cb4
Author: Jacques Lucke
Date:   Fri Oct 19 10:59:53 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB3c30d3bcbd93da4e4cded76c3fc3a30152a43cb4

Outliner: only drag element under mouse if it was not selected before

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3811

===================================================================

M	source/blender/editors/space_outliner/outliner_dragdrop.c

===================================================================

diff --git a/source/blender/editors/space_outliner/outliner_dragdrop.c b/source/blender/editors/space_outliner/outliner_dragdrop.c
index 978a2cc4af4..293c1d5f29c 100644
--- a/source/blender/editors/space_outliner/outliner_dragdrop.c
+++ b/source/blender/editors/space_outliner/outliner_dragdrop.c
@@ -875,7 +875,12 @@ static int outliner_item_drag_drop_invoke(bContext *C, wmOperator *UNUSED(op), c
 
 	if (ELEM(GS(data.drag_id->name), ID_OB, ID_GR)) {
 		/* For collections and objects we cheat and drag all selected. */
-		TREESTORE(te)->flag |= TSE_SELECTED;
+
+		/* Only drag element under mouse if it was not selected before. */
+		if ((TREESTORE(te)->flag & TSE_SELECTED) == 0) {
+			outliner_flag_set(&soops->tree, TSE_SELECTED, 0);
+			TREESTORE(te)->flag |= TSE_SELECTED;
+		}
 
 		/* Gather all selected elements. */
 		struct IDsSelectedData selected = {



More information about the Bf-blender-cvs mailing list