Fix #110821: Tracker resizing with S+S also resizes search area
Regression caused by 03f17c42d0
In that commit it was assumed that the hotkey modifier `S` had no
influence if we were already resizing.
But this is not the case in tracking. The second `S` has influence and
should not be filtered.
The solution is to add a conditional only to Trackers transformation.
This commit also fixed the canceling of this transformation which did
not revert the search area to its original value.
This commit is contained in:
@@ -650,7 +650,9 @@ static bool transform_modal_item_poll(const wmOperator *op, int value)
|
||||
return false;
|
||||
}
|
||||
if (value == TFM_MODAL_RESIZE && t->mode == TFM_RESIZE) {
|
||||
return false;
|
||||
/* The tracking transform in MovieClip has an alternate resize that only affects the
|
||||
* tracker size and not the search area. */
|
||||
return t->data_type == &TransConvertType_Tracking;
|
||||
}
|
||||
if (value == TFM_MODAL_VERT_EDGE_SLIDE &&
|
||||
(t->data_type != &TransConvertType_Mesh ||
|
||||
|
||||
@@ -481,7 +481,7 @@ static void flushTransTracking(TransInfo *t)
|
||||
|
||||
if (t->flag & T_ALT_TRANSFORM) {
|
||||
if (t->mode == TFM_RESIZE) {
|
||||
if (tdt->area != TRACK_AREA_PAT) {
|
||||
if (tdt->area != TRACK_AREA_PAT && !(t->state == TRANS_CANCEL)) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user