Fix (unreported): VSE: Strips not deselected on press

With #128051, the default timeline tool changed to
a `sequencer.select` on press with no associated
properties (before, it had `deselect_all`).

This meant that retiming key selection broke (as
reported in #129892) and strips would only deselect
on release if clicking into empty space (due to a separate
keymap item in the global sequencer keymap).

This patch reverts 97e44901b4 while keeping its fix,
in favor of a more robust solution (just add `deselect_all`
to the keymap item properties in the box select tool).
This commit is contained in:
John Kiril Swenson
2025-05-25 16:22:16 -05:00
parent 64a13f4be2
commit 6bd750bc01
2 changed files with 4 additions and 4 deletions

View File

@@ -8188,7 +8188,8 @@ def km_sequencer_tool_generic_select_rcs(params):
def km_sequencer_tool_generic_select_lcs(params):
return [
("sequencer.select", {"type": 'LEFTMOUSE', "value": 'PRESS'}, None),
("sequencer.select", {"type": 'LEFTMOUSE', "value": 'PRESS'},
{"properties": [("deselect_all", True)]}),
("sequencer.select", {"type": 'LEFTMOUSE', "value": 'PRESS',
"shift": True}, {"properties": [("toggle", True)]}),
("anim.change_frame", {"type": 'RIGHTMOUSE', "value": 'PRESS',
@@ -8201,7 +8202,7 @@ def km_sequencer_tool_generic_select_box(params, *, fallback):
_fallback_id("Sequencer Tool: Select Box", fallback),
{"space_type": 'SEQUENCE_EDITOR', "region_type": 'WINDOW'},
{"items": [
# Combine the tweak functionality into the select box tool.
# Add tweak functionality to the select box tool.
# This gives one standard tool for all selection and transform behavior.
*(km_sequencer_tool_generic_select_rcs(params)
if (params.select_mouse == 'RIGHTMOUSE') else

View File

@@ -847,10 +847,9 @@ wmOperatorStatus sequencer_retiming_key_select_exec(bContext *C,
Scene *scene = CTX_data_scene(C);
Editing *ed = seq::editing_get(scene);
const bool deselect_all = RNA_boolean_get(op->ptr, "deselect_all");
const bool wait_to_deselect_others = RNA_boolean_get(op->ptr, "wait_to_deselect_others");
const bool toggle = RNA_boolean_get(op->ptr, "toggle");
bool deselect_all = RNA_boolean_get(op->ptr, "deselect_all");
deselect_all |= !toggle;
/* Clicked on an unselected key. */
if (!seq::retiming_selection_contains(ed, key) && !toggle) {