From 175b1b449ec2d378fd08dd758da946c8ecdf412c Mon Sep 17 00:00:00 2001 From: Germano Cavalcante Date: Mon, 6 Mar 2023 19:38:14 -0300 Subject: [PATCH] Fix #105433: Offset Tracking Shortcut no longer working Regression caused by 03f17c42d0 The `TFM_MODAL_TRANSLATE` is used in a special way in the tracking transformation. --- source/blender/editors/transform/transform.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index 8d479b608fb..2ded01255c5 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -624,7 +624,9 @@ static bool transform_modal_item_poll(const wmOperator *op, int value) return false; } if (value == TFM_MODAL_TRANSLATE && t->mode == TFM_TRANSLATION) { - return false; + /* The tracking transform in MovieClip has an alternate translate that modifies the offset + * of the tracks. */ + return t->data_type == &TransConvertType_Tracking; } if (value == TFM_MODAL_ROTATE && t->mode == TFM_ROTATION) { return false; @@ -987,16 +989,16 @@ int transformEvent(TransInfo *t, const wmEvent *event) t->redraw |= TREDRAW_HARD; handled = true; } - else if (t->options & (CTX_MOVIECLIP | CTX_MASK)) { - restoreTransObjects(t); - - t->flag ^= T_ALT_TRANSFORM; - t->redraw |= TREDRAW_HARD; - handled = true; - } } else { if (t->mode == TFM_TRANSLATION) { + if (t->data_type == &TransConvertType_Tracking) { + restoreTransObjects(t); + + t->flag ^= T_ALT_TRANSFORM; + t->redraw |= TREDRAW_HARD; + handled = true; + } break; } restoreTransObjects(t);