Fix T98765: Regression: Unable to select mask points in clip editor

Re-organize de-selection so that there is less conflict between tracking
and masking operators.

Still not fully ideal: the LMB selection does not de-select everything
now since the `mask.select` with `deselect_all` is only added to the
keymap when the RMB is the select mouse. While this is sub-optimal, this
seems to be how mask selection behaved in the Image Editor in 3.1.

Not sure it worth looking into a more complete fix, as it will likely be
too big to be safe for a corrective release.

Differential Revision: https://developer.blender.org/D15183
This commit is contained in:
Sergey Sharybin 2022-06-13 16:17:32 +02:00
parent fc79b17dce
commit ea39d808b5
Notes: blender-bot 2023-02-14 05:52:32 +01:00
Referenced by issue #98765, Regression: Unable to select mask points in clip editor
Referenced by issue #98661, 3.2: Potential candidates for corrective releases
2 changed files with 3 additions and 8 deletions

View File

@ -364,12 +364,9 @@ static int select_exec(bContext *C, wmOperator *op)
return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
if (deselect_all) {
/* For clip editor tracks, leave deselect all to clip editor. */
if (!ED_clip_can_select(C)) {
ED_mask_deselect_all(C);
ED_mask_view_lock_state_restore_no_jump(C, &lock_state);
return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
ED_mask_deselect_all(C);
ED_mask_view_lock_state_restore_no_jump(C, &lock_state);
return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
return OPERATOR_PASS_THROUGH;

View File

@ -394,8 +394,6 @@ static int select_exec(bContext *C, wmOperator *op)
else if (deselect_all) {
ed_tracking_deselect_all_tracks(tracksbase);
ed_tracking_deselect_all_plane_tracks(plane_tracks_base);
/* Mask as well if we are in combined mask / track view. */
ED_mask_deselect_all(C);
}
ED_clip_view_lock_state_restore_no_jump(C, &lock_state);