diff --git a/source/blender/editors/space_sequencer/sequencer_retiming_draw.cc b/source/blender/editors/space_sequencer/sequencer_retiming_draw.cc index 9002f3a89e9..b6627ca7be5 100644 --- a/source/blender/editors/space_sequencer/sequencer_retiming_draw.cc +++ b/source/blender/editors/space_sequencer/sequencer_retiming_draw.cc @@ -244,6 +244,10 @@ static bool can_draw_retiming(const TimelineDrawContext *timeline_ctx, return false; } + if (!SEQ_retiming_is_active(strip_ctx.seq)) { + return false; + } + return true; } @@ -305,8 +309,6 @@ void sequencer_retiming_draw_continuity(const TimelineDrawContext *timeline_ctx, return; } - wmOrtho2_region_pixelspace(timeline_ctx->region); - const Sequence *seq = strip_ctx.seq; const View2D *v2d = timeline_ctx->v2d; const Scene *scene = timeline_ctx->scene; diff --git a/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc b/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc index d0258a4e596..643bbcabc8c 100644 --- a/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc +++ b/source/blender/editors/space_sequencer/sequencer_timeline_draw.cc @@ -34,6 +34,8 @@ #include "ED_space_api.hh" #include "ED_time_scrub_ui.hh" +#include "GPU_matrix.hh" + #include "RNA_prototypes.hh" #include "SEQ_channels.hh" @@ -1466,6 +1468,20 @@ static void draw_strips_foreground(TimelineDrawContext *timeline_ctx, GPU_blend(GPU_BLEND_ALPHA); } +static void draw_retiming_continuity_ranges(TimelineDrawContext *timeline_ctx, + const Vector &strips) +{ + GPU_matrix_push_projection(); + wmOrtho2_region_pixelspace(timeline_ctx->region); + + for (const StripDrawContext &strip_ctx : strips) { + sequencer_retiming_draw_continuity(timeline_ctx, strip_ctx); + } + timeline_ctx->quads->draw(); + + GPU_matrix_pop_projection(); +} + static void draw_seq_strips(TimelineDrawContext *timeline_ctx, StripsDrawBatch &strips_batch, const Vector &strips) @@ -1500,9 +1516,9 @@ static void draw_seq_strips(TimelineDrawContext *timeline_ctx, timeline_ctx->pixelx, timeline_ctx->pixely, round_radius); - sequencer_retiming_draw_continuity(timeline_ctx, strip_ctx); } - timeline_ctx->quads->draw(); + /* Draw retiming continuity ranges. */ + draw_retiming_continuity_ranges(timeline_ctx, strips); /* Draw parts of strips above thumbnails. */ GPU_blend(GPU_BLEND_ALPHA);