Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <campbell@blender.org>2022-04-22 10:35:37 +0300
committerCampbell Barton <campbell@blender.org>2022-04-22 10:36:09 +0300
commit048c769774ac7f2be32ecb354f0416bd13b632e6 (patch)
treeb656dc85b2195555ed33738bb7c274222ade7020 /source/blender/editors/mask/mask_select.c
parentb226236b017f5f84c5ce029689b0707f639299dc (diff)
Fix T97277: Tweak drag transforming is broken for masks (RMB select)
Regression in 4d0f846b936c9101ecb76a6db962aac2d74a460a, passing selection through to drag relied on tweak events running even when the press event was handled which is not the case for drag.
Diffstat (limited to 'source/blender/editors/mask/mask_select.c')
-rw-r--r--source/blender/editors/mask/mask_select.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/editors/mask/mask_select.c b/source/blender/editors/mask/mask_select.c
index e3c3f1c38a0..0bd054e1b89 100644
--- a/source/blender/editors/mask/mask_select.c
+++ b/source/blender/editors/mask/mask_select.c
@@ -319,7 +319,7 @@ static int select_exec(bContext *C, wmOperator *op)
ED_mask_view_lock_state_restore_no_jump(C, &lock_state);
- return OPERATOR_FINISHED;
+ return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
MaskSplinePointUW *uw;
@@ -361,14 +361,14 @@ static int select_exec(bContext *C, wmOperator *op)
ED_mask_view_lock_state_restore_no_jump(C, &lock_state);
- return OPERATOR_FINISHED;
+ 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_FINISHED;
+ return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
}
@@ -386,7 +386,9 @@ static int select_invoke(bContext *C, wmOperator *op, const wmEvent *event)
RNA_float_set_array(op->ptr, "location", co);
- return select_exec(C, op);
+ const int retval = select_exec(C, op);
+
+ return WM_operator_flag_only_pass_through_on_press(retval, event);
}
void MASK_OT_select(wmOperatorType *ot)