diff --git a/release/scripts/ui/properties_data_armature.py b/release/scripts/ui/properties_data_armature.py index 566cf1dc3cc..793b75d6d5a 100644 --- a/release/scripts/ui/properties_data_armature.py +++ b/release/scripts/ui/properties_data_armature.py @@ -193,12 +193,12 @@ class DATA_PT_pose_library(ArmatureButtonsPanel, bpy.types.Panel): col.operator_context = 'EXEC_DEFAULT' # exec not invoke, so that menu doesn't need showing col.operator("poselib.pose_remove", icon='ZOOMOUT', text="").pose = activePoseName - # TODO: - # - show selected pose in 3d-view using browse op... - # - rename selected pose... + #col.operator_context = 'EXEC_DEFAULT' # exec not invoke, so modal preview loop doesn't run + col.operator("poselib.browse_interactive", icon='ZOOM_SELECTED', text="").pose_index = activePoseIndex # TODO: "validate action" operator to be restored + # TODO: this panel will soon be depreceated too class DATA_PT_ghost(ArmatureButtonsPanel, bpy.types.Panel): bl_label = "Ghost" diff --git a/source/blender/editors/armature/poselib.c b/source/blender/editors/armature/poselib.c index 22aca8014cd..bab19bb02bf 100644 --- a/source/blender/editors/armature/poselib.c +++ b/source/blender/editors/armature/poselib.c @@ -1477,11 +1477,8 @@ static void poselib_preview_cleanup (bContext *C, wmOperator *op) if (IS_AUTOKEY_MODE(scene, NORMAL)) { //remake_action_ipos(ob->action); } - else { - /* need to trick depgraph, action is not allowed to execute on pose */ + else where_is_pose(scene, ob); - ob->recalc= 0; - } } /* free memory used for backups and searching */ @@ -1497,11 +1494,12 @@ static void poselib_preview_cleanup (bContext *C, wmOperator *op) static int poselib_preview_exit (bContext *C, wmOperator *op) { tPoseLib_PreviewData *pld= op->customdata; + int exit_state = pld->state; /* finish up */ poselib_preview_cleanup(C, op); - if (ELEM(pld->state, PL_PREVIEW_CANCEL, PL_PREVIEW_ERROR)) + if (ELEM(exit_state, PL_PREVIEW_CANCEL, PL_PREVIEW_ERROR)) return OPERATOR_CANCELLED; else return OPERATOR_FINISHED;