Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/source/blender/editors/animation/anim_channels_edit.c b/source/blender/editors/animation/anim_channels_edit.c
- index 995ad861ec8..d98f99ae838 100644
- --- a/source/blender/editors/animation/anim_channels_edit.c
- +++ b/source/blender/editors/animation/anim_channels_edit.c
- @@ -380,7 +380,7 @@ static void anim_channels_select_set(bAnimContext *ac,
- FCurve *fcu = (FCurve *)ale->data;
- ACHANNEL_SET_FLAG(fcu, sel, FCURVE_SELECTED);
- - if ((fcu->flag & FCURVE_SELECTED) == 0) {
- + if (((fcu->flag & FCURVE_SELECTED) == 0) && (sel != ACHANNEL_SETFLAG_EXTEND_RANGE)) {
- /* Only erase the ACTIVE flag when deselecting. This ensures that "select all curves"
- * retains the currently active curve. */
- fcu->flag &= ~FCURVE_ACTIVE;
- @@ -3251,7 +3251,7 @@ static int click_select_channel_fcurve(bAnimContext *ac,
- fcu->flag ^= FCURVE_SELECTED;
- }
- else if (selectmode == SELECT_EXTEND_RANGE) {
- - animchannel_clear_selection(ac);
- + ANIM_anim_channels_select_set(ac, ACHANNEL_SETFLAG_EXTEND_RANGE);
- animchannel_select_range(ac, fcu);
- }
- else {
- diff --git a/source/blender/editors/include/ED_anim_api.h b/source/blender/editors/include/ED_anim_api.h
- index a436fa43989..09b85d0f4ef 100644
- --- a/source/blender/editors/include/ED_anim_api.h
- +++ b/source/blender/editors/include/ED_anim_api.h
- @@ -530,6 +530,7 @@ typedef enum eAnimChannels_SetFlag {
- ACHANNEL_SETFLAG_INVERT = 2,
- /** some on -> all off / all on */
- ACHANNEL_SETFLAG_TOGGLE = 3,
- + ACHANNEL_SETFLAG_EXTEND_RANGE = 4,
- } eAnimChannels_SetFlag;
- /* types of settings for AnimChannels */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement