diff options
author | Lukas Tönne <lukas.toenne@gmail.com> | 2014-12-17 15:47:14 +0300 |
---|---|---|
committer | Lukas Tönne <lukas.toenne@gmail.com> | 2014-12-17 15:50:31 +0300 |
commit | cd4d5dcb468a710ea0c688c884379d25c5d6bd66 (patch) | |
tree | 6fa4c7ba14598accf7b880033e1817dd1d23ae9a /source/blender/editors/object/object_add.c | |
parent | a56e31c89c8a539e8726f5060eff3445064114a8 (diff) |
Fix T42932: Drag&Drop of groups from the outliner was using undefined
event->mval.
Calculating from event->x/y like object drag/drop does works. Also fixed
a missing notifier of the object instancing operator.
Diffstat (limited to 'source/blender/editors/object/object_add.c')
-rw-r--r-- | source/blender/editors/object/object_add.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/editors/object/object_add.c b/source/blender/editors/object/object_add.c index 8ab9feb5b0a..c3edd63b2d4 100644 --- a/source/blender/editors/object/object_add.c +++ b/source/blender/editors/object/object_add.c @@ -977,8 +977,11 @@ static int group_instance_add_exec(bContext *C, wmOperator *op) if (0 == RNA_struct_property_is_set(op->ptr, "location")) { wmEvent *event = CTX_wm_window(C)->eventstate; + ARegion *ar = CTX_wm_region(C); + const int mval[2] = {event->x - ar->winrct.xmin, + event->y - ar->winrct.ymin}; ED_object_location_from_view(C, loc); - ED_view3d_cursor3d_position(C, loc, event->mval); + ED_view3d_cursor3d_position(C, loc, mval); RNA_float_set_array(op->ptr, "location", loc); } } @@ -2309,7 +2312,7 @@ static int add_named_exec(bContext *C, wmOperator *op) MEM_freeN(base); - WM_event_add_notifier(C, NC_SCENE | ND_OB_SELECT, scene); + WM_event_add_notifier(C, NC_SCENE | ND_OB_SELECT | ND_OB_ACTIVE, scene); return OPERATOR_FINISHED; } |