Fix #126513: VSE: Handle tweaking does not work with Select Box tool

Select handles of strip available below the cursor when
`selection.seq1/seq2` exists in `sequencer_box_select_invoke`.
Also fixed the condition in `sequencer_main_cursor` so the new
WM_CURSOR_HANDLE is visible.

Pull Request: https://projects.blender.org/blender/blender/pulls/126548
This commit is contained in:
Pratik Borhade
2024-09-12 13:43:13 +02:00
committed by Pratik Borhade
parent 8f86a04c72
commit d2091b4b15
2 changed files with 14 additions and 1 deletions

View File

@@ -2190,6 +2190,19 @@ static int sequencer_box_select_invoke(bContext *C, wmOperator *op, const wmEven
StripSelection selection = ED_sequencer_pick_strip_and_handle(scene, v2d, mouse_co);
if (selection.seq1 != nullptr) {
if (selection.handle != SEQ_HANDLE_NONE) {
SpaceSeq *sseq = CTX_wm_space_seq(C);
sseq->flag |= SPACE_SEQ_DESELECT_STRIP_HANDLE;
ED_sequencer_deselect_all(scene);
selection.seq1->flag |= (SELECT) | ((selection.handle == SEQ_HANDLE_RIGHT) ? SEQ_RIGHTSEL :
SEQ_LEFTSEL);
if (selection.seq2 != nullptr) {
selection.seq2->flag |= (SELECT) |
((selection.handle == SEQ_HANDLE_RIGHT) ? SEQ_LEFTSEL :
SEQ_RIGHTSEL);
}
}
return OPERATOR_CANCELLED | OPERATOR_PASS_THROUGH;
}
}

View File

@@ -660,7 +660,7 @@ static void sequencer_main_cursor(wmWindow *win, ScrArea *area, ARegion *region)
int wmcursor = WM_CURSOR_DEFAULT;
const bToolRef *tref = area->runtime.tool;
if (!STREQ(tref->idname, "builtin.select")) {
if (!STRPREFIX(tref->idname, "builtin.select")) {
WM_cursor_set(win, wmcursor);
return;
}