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:
Diffstat (limited to 'source/blender/editors/transform/transform_convert_sequencer.c')
-rw-r--r--source/blender/editors/transform/transform_convert_sequencer.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/source/blender/editors/transform/transform_convert_sequencer.c b/source/blender/editors/transform/transform_convert_sequencer.c
index ce93cf1a7fa..690d1ee8ca3 100644
--- a/source/blender/editors/transform/transform_convert_sequencer.c
+++ b/source/blender/editors/transform/transform_convert_sequencer.c
@@ -645,6 +645,11 @@ void createTransSeqData(TransInfo *t)
return;
}
+ /* Disable cursor wrapping for edge pan. */
+ if (t->mode == TFM_TRANSLATION) {
+ t->flag |= T_NO_CURSOR_WRAP;
+ }
+
tc->custom.type.free_cb = freeSeqData;
t->frame_side = transform_convert_frame_side_dir_get(t, (float)CFRA);
@@ -741,15 +746,10 @@ static void view2d_edge_pan_loc_compensate(TransInfo *t, float loc_in[2], float
const rctf *rect_src = &ts->initial_v2d_cur;
const rctf *rect_dst = &t->region->v2d.cur;
- copy_v2_v2(r_loc, loc_in);
- /* Additional offset due to change in view2D rect. */
- BLI_rctf_transform_pt_v(rect_dst, rect_src, r_loc, r_loc);
-}
-
-static void flushTransSeq(TransInfo *t)
-{
- TransSeq *ts = (TransSeq *)TRANS_DATA_CONTAINER_FIRST_SINGLE(t)->custom.type.data;
if (t->options & CTX_VIEW2D_EDGE_PAN) {
+ SpaceSeq *sseq = CTX_wm_space_seq(t->context);
+ sseq->flag |= SPACE_SEQ_CLAMP_SMOOTH;
+
if (t->state == TRANS_CANCEL) {
UI_view2d_edge_pan_cancel(t->context, &ts->edge_pan);
}
@@ -763,6 +763,13 @@ static void flushTransSeq(TransInfo *t)
}
}
+ copy_v2_v2(r_loc, loc_in);
+ /* Additional offset due to change in view2D rect. */
+ BLI_rctf_transform_pt_v(rect_dst, rect_src, r_loc, r_loc);
+}
+
+static void flushTransSeq(TransInfo *t)
+{
/* Editing null check already done */
ListBase *seqbasep = seqbase_active_get(t);