Page MenuHome

VSE: Change handle to bracket shape and minor handle adjustments
AbandonedPublic

Authored by Peter Fog (tintwotin) on Feb 3 2021, 10:37 PM.
Subscribers
None
Tokens
"Love" token, awarded by abdo25."Burninate" token, awarded by nacioss."Love" token, awarded by mal_cando."Like" token, awarded by AndyCuccaro."Like" token, awarded by Pipeliner.

Details

Summary

The current handles are hiding too much of the strip so it becomes difficult to locate the exact spot for ex. waveforms or display hold/hard splits, also currently there isn't any indication of direction of the selected. Both things can be improved by changing the handle shape to square brackets.

A vote on Twitter: https://twitter.com/tintwotin/status/1356894741011562499
Brackets(new): 29 votes.
Rectangles(current): 3 votes.

[EDIT: The outlines were colliding visually with the bracket handles, and it didn't work for me. I've now changed it, so with a handle selected, the stip will not get an outline. This will focus the attention on the handle. Additionally I removed color variations of selected and active states and made them consistent with the colors of the 3d view in a similar situation.]

Selection etc.:

Minor changes:

  • Lower the limit where it is still possible to select handles. Currently, it is annoying not being able to select handles even though there is plenty of space to select between left, right and center. Also, it works fine with a lower value.
  • Remove the highlight of outlines when transforming, it is not necessary.
  • Made texts visible to a tiny size, since, text highlighting is the only way to see the unselected active strip.

If this one is committed, this other one can be closed:
https://developer.blender.org/D10317

Diff Detail

Event Timeline

Peter Fog (tintwotin) requested review of this revision.Feb 3 2021, 10:37 PM
Peter Fog (tintwotin) created this revision.

I feel the square brackets is adding visual noise, and therefore I'm closing it. The minor tweaks have been added here: D10317

Peter Fog (tintwotin) updated this revision to Diff 33827.EditedFeb 10 2021, 12:28 PM
Peter Fog (tintwotin) edited the summary of this revision. (Show Details)

The outlines were colliding visually with the bracket handles, and it didn't work for me, and I gave up the patch for a while. I've now changed it, so with a handle selected, the stip will not get an outline. This will focus the attention on the handle. Additionally I removed color variations of selected and active states and made them consistent with the colors of the 3d view in a similar situation. I also ensure the handles are visible when the strips are very small.

Peter Fog (tintwotin) edited the summary of this revision. (Show Details)Feb 14 2021, 9:42 AM
Richard Antalik (ISS) requested changes to this revision.Mar 1 2021, 7:24 AM

I agree with all changes done here.

There are some issues though:

  • When zoomed out, to the edge where handle is selectable, it can be very thin or even invisible.
  • When zoomed in it becomes square.
  • When timeline Y range is zoomed out to max, so strips are thin handles are square again. This is probably OK in this case, but handle is larger than strip. That's not great.

First 2 cases I would resolve by simply not changing handle width at all. 3rd just by slightly adjusting line width. Also these things react to UI scale so please test this as well.

This revision now requires changes to proceed.Mar 1 2021, 7:24 AM
Peter Fog (tintwotin) edited the summary of this revision. (Show Details)

Made brackets visible when very small.
Made brackets smaller(but still much larger than a vertex ;-) ).
Fixed some calculation mistakes.
Made texts visible to a tiny size, since, text highlighting is the only way to see the unselected active strip.

Peter Fog (tintwotin) edited the summary of this revision. (Show Details)Mar 3 2021, 7:14 PM

Made texts visible to a tiny size, since, text highlighting is the only way to see the unselected active strip.

Not sure if I understand, wasn't this case even before?

Still I see issue when zooming out (X axis), handle can become even invisible. 1px is super tiny size, I would really prefer if it didn't change size. It doesn't look very good when you have small strip next to big strip with handles selected.

source/blender/editors/space_sequencer/sequencer_draw.c
463

U.pixelsize factor was requested to be used for high DPI screens, so selectable area is not too small which especially now could be an issue. Handle visibility could be bad on these screens as well. I would really keep it there.

472

This looks like unrelated change

589

Instead of (seq->flag & SELECT) && !(seq->flag & SEQ_LEFTSEL) && !(seq->flag & SEQ_RIGHTSEL)
you can use (seq->flag & SEQ_ALLSEL) == SELECT

In other places as well

620–623

This is unrelated change as well

Adjusted according to comments, however the bug which makes handles disappear when scaling relates to this line(values of pixelx):

return min_ff(maxhandle, ((float)(seq->enddisp - seq->startdisp) / 2.0f) / pixelx);

Currently, it only facilitates scaling when zoomed in correct, and not when zoomed out(pixelx under and over the value of 1). If you instead ex. multiply pixelx, when zoomed out, the handles will keep their size, but also when strips are very narrow and the handle will be drawn on the adjoined strip.

As there already is a bug report on this, I'll leave this out of this patch(though removing the min_ff(no size scaling of handles), and live with the overlap, would be my prefered short-term fix)

Peter Fog (tintwotin) marked 2 inline comments as done.Mar 4 2021, 10:59 AM
Peter Fog (tintwotin) edited the summary of this revision. (Show Details)

Currently, it only facilitates scaling when zoomed in correct, and not when zoomed out(pixelx under and over the value of 1). If you instead ex. multiply pixelx, when zoomed out, the handles will keep their size, but also when strips are very narrow and the handle will be drawn on the adjoined strip.

As there already is a bug report on this, I'll leave this out of this patch(though removing the min_ff(no size scaling of handles), and live with the overlap, would be my prefered short-term fix)

I am not sure if I understand the problem, can you link the report here?

I think this really should be resolved before comitting, I will check this on high DPI screen as well if I will be able to make it work...

This patch didn't make it into 2.93. As I do not have anymore time or motivation for a continued investment in the Blender project, I'm giving up on this patch for now.