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 = {

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to