Page MenuHome

Selection in Mask mode in Clip Editor does not work correctly
Closed, ResolvedPublic

Description

System Information
Operating system: Linux-4.4.0-146-generic-x86_64-with-debian-stretch-sid 64 Bits
Graphics card: GeForce GTX 1080/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 418.56

Blender Version
Broken: version: 2.80 (sub 71), branch: master (modified), commit date: 2019-05-23 08:02, hash: rB8389cc7e674b
Worked: 2.79

Short description of error
I am currently working on improving the keymap for masking in 2.80, and found that selection doesnt seem to work correctly, in a way which I don't know how to fix myself.
The mapping mask.select is set to select_mouse, so it should work with LMB select in factory settings. However, mask points are not selected when left clicking on them, but marker points are, even though they should only be selected with ctrl+LMB, according to the keymap.
Also, the operator mask.select has the "Deselect on Nothing" active, however, this also does not work.

Exact steps for others to reproduce the error
Open the attached file and try to select one of the mask points with LMB.
-> Does not work, however, if you try to select a marker with LMB, it is selected.

Event Timeline

@Brecht Van Lommel (brecht), think i'll bounce this one to you.

Here comes the developer note.

My guess is that in factory startup the order of keymaps is different, which makes Clip Editor keymap to run prior to the masking one. This makes it so LMB invokes mouse_select() from tracking_select.c, which always returns OPERATOR_FINISHED. This makes it so the mask editing keymaps never run.

Maybe we can prioritize making keymap somehow?
Or maybe should make it so selection returns OPERATOR_PASS_THROUGH instead? It makes things work with a simple one-line change, but it will have consequences.

The "Deselect on Nothing" is caused by mask editing keymap not running at all.

Any news on this? I would like to improve the masking keymap. Even though UI is frozen, but currently it is simply not functional.

Brecht Van Lommel (brecht) triaged this task as Confirmed, Medium priority.Tue, Jun 4, 3:03 PM

The order of keymaps is defined by the editor. clip_main_region_init has the Mask Editing keymap before Clip Editor, and checking the output of --debug-handlers it is handling them in that order.

There are two issue here:

  • Select for the mask editing happens on CLICK (mouse button release) and for the clip editing happens on PRESS. This means the clip operator runs before the mask operator.
  • If we fix this, click in empty space to deselect all for the mask will break the clip editor selection.