"Fix T92953: Tool Settings: Drag on Tweak fails with LMB select" overrides default keymap entries #95349

Closed
opened 2022-01-31 10:49:29 +01:00 by Reiner Prokein · 23 comments

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 497.29

Blender Version
Broken: version: 3.2.0 Alpha, branch: master, commit date: 2022-01-30 06:07, hash: a58592885c
Worked: (newest version of Blender that worked as expected)

Short description of error

The fix #92953: Tool Settings: Drag on Tweak fails with LMB select has some unwanted side effects. It overrides the regular entry. This is especially of interest for custom keymaps where you have modified the parts in question. Which happend to me. I couldn't explain why my keymap has quit working in the way i had it set up until i had a look at this patch.

What we have here with this fix is now two entries where formerly just one existed. And the fallback entry always overrides the regular entry. Instead of just showing up when you are in fallback mode.

SHA-1: f1a488d0f2

  • Fix #92953: Tool Settings: Drag on Tweak fails with LMB select

Exact steps for others to reproduce the error
[Please describe the exact steps needed to reproduce the issue]
[Based on the default startup or an attached .blend file (as simple as possible)]

  • Open Keymap Manager
  • Go to Image > UV Editor
  • Scroll down until you see the Tool entries, and watch all the fallback entries. Which now overrides the default entries.

legacyproblem.jpg

Second screenshot to show that it is the Blender keymap with the factory defaults: And to show that the fallback entries shows in the factory defaults.

default.jpg

Added a video with further explanation. It explains the problem with the tweak tool in the 3d view, which has now also a legacy keymap item. Also here, factory defaults and Blender keymap.

2022-02-02 07-50-31.mp4

**System Information** Operating system: Windows-10-10.0.19041-SP0 64 Bits Graphics card: NVIDIA GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 497.29 **Blender Version** Broken: version: 3.2.0 Alpha, branch: master, commit date: 2022-01-30 06:07, hash: `a58592885c` Worked: (newest version of Blender that worked as expected) **Short description of error** The fix #92953: Tool Settings: Drag on Tweak fails with LMB select has some unwanted side effects. It overrides the regular entry. This is especially of interest for custom keymaps where you have modified the parts in question. Which happend to me. I couldn't explain why my keymap has quit working in the way i had it set up until i had a look at this patch. What we have here with this fix is now two entries where formerly just one existed. And the fallback entry always overrides the regular entry. Instead of just showing up when you are in fallback mode. SHA-1: f1a488d0f2d3736482d68b96d7b4edecdae2beda * Fix #92953: Tool Settings: Drag on Tweak fails with LMB select **Exact steps for others to reproduce the error** [Please describe the exact steps needed to reproduce the issue] [Based on the default startup or an attached .blend file (as simple as possible)] - Open Keymap Manager - Go to Image > UV Editor - Scroll down until you see the Tool entries, and watch all the fallback entries. Which now overrides the default entries. ![legacyproblem.jpg](https://archive.blender.org/developer/F12836960/legacyproblem.jpg) Second screenshot to show that it is the Blender keymap with the factory defaults: And to show that the fallback entries shows in the factory defaults. ![default.jpg](https://archive.blender.org/developer/F12839893/default.jpg) Added a video with further explanation. It explains the problem with the tweak tool in the 3d view, which has now also a legacy keymap item. Also here, factory defaults and Blender keymap. [2022-02-02 07-50-31.mp4](https://archive.blender.org/developer/F12841298/2022-02-02_07-50-31.mp4)
Author

Added subscriber: @tiles

Added subscriber: @tiles

#95350 was marked as duplicate of this issue

#95350 was marked as duplicate of this issue
Author

Ah, accidentally created the task twice. Sorry for double post -.-

https://developer.blender.org/T95350

Ah, accidentally created the task twice. Sorry for double post -.- https://developer.blender.org/T95350
Member

Added subscriber: @PratikPB2123

Added subscriber: @PratikPB2123

Added subscriber: @mano-wii

Added subscriber: @mano-wii

This is what I see with LMB select's default settings.
image.png

So I assume the keymap needs to be customized, right?

This is what I see with LMB select's default settings. ![image.png](https://archive.blender.org/developer/F12839735/image.png) So I assume the keymap needs to be customized, right?
Author

No. The shot from above is a new compiled version from sunday, with factory settings and the default keymap. As you can see, it shows the legacy entries below the regular entries. And these legacy entries overrides the regular ones.

No. The shot from above is a new compiled version from sunday, with factory settings and the default keymap. As you can see, it shows the legacy entries below the regular entries. And these legacy entries overrides the regular ones.
Author

I have added a second screenshot.

I have added a second screenshot.

Ooops, I swapped LBM selection for RBM.

I tested it and indeed it looks confusing.
There are three places for setting the "uv.select" shortcut:

  • {nav Image > UV Editor > UV Editor (Global) > Select}
  • {nav Image > UV Editor > Image Editor Tool: UV, Tweak > Select}

{nav Image > UV Editor > Image Editor Tool: UV, Tweak (fallback) > Select}

The 1st shortcut I don't know what it's used for. Is this the so-called "regular entry"?
The tools shortcuts work correctly.
To test the 2nd, I changed the shortcuts of the "Tweak" selection tool, and, with the tool activated, the shortcuts worked correctly.
To test the "Tweak (fallback)", in the 3D View I set the selection fallback to "Tweak" and in the UV editor I activated any non-selection tool. The shortcut worked as expected.

I'm not sure what you mean by "legacy entry" and "regular entry". Can you elaborate?

Ooops, I swapped LBM selection for RBM. I tested it and indeed it looks confusing. There are three places for setting the "uv.select" shortcut: - {nav Image > UV Editor > UV Editor (Global) > Select} - {nav Image > UV Editor > Image Editor Tool: UV, Tweak > Select} # {nav Image > UV Editor > Image Editor Tool: UV, Tweak (fallback) > Select} The 1st shortcut I don't know what it's used for. Is this the so-called "regular entry"? The tools shortcuts work correctly. To test the 2nd, I changed the shortcuts of the "Tweak" selection tool, and, with the tool activated, the shortcuts worked correctly. To test the "Tweak (fallback)", in the 3D View I set the selection fallback to "Tweak" and in the UV editor I activated any non-selection tool. The shortcut worked as expected. I'm not sure what you mean by "legacy entry" and "regular entry". Can you elaborate?
Author

With legacy i mean the keymap items with the (fallback) in the description.

Number two and three are the trouble makers. The fallback keymap entry number three overrides the one from number two.

It should be one entry visible at time. Either you are in regular mode. Or you are in fallback mode. This is what the fallback entry was added for in the code:

if (fallback and (params.select_mouse == 'RIGHTMOUSE') ...

But it shows also with lmb select. And overrides the not fallback entry. Since you have now two similar entries that does the same. As it currently is you have to edit the fallback entry. Since the fallback entry overrides the regular entry. The regular entry is the one that existed before the patch already.

I will have a look to make a video to make the problem even more clear.

With legacy i mean the keymap items with the (fallback) in the description. Number two and three are the trouble makers. The fallback keymap entry number three overrides the one from number two. It should be one entry visible at time. Either you are in regular mode. Or you are in fallback mode. This is what the fallback entry was added for in the code: if (fallback and (params.select_mouse == 'RIGHTMOUSE') ... But it shows also with lmb select. And overrides the not fallback entry. Since you have now two similar entries that does the same. As it currently is you have to edit the fallback entry. Since the fallback entry overrides the regular entry. The regular entry is the one that existed before the patch already. I will have a look to make a video to make the problem even more clear.
Author

I have to admit that i am not able to reproduce the problem in a clear manner anymore. Now the trouble maker works fine with the Blender default keymap.

But it still fails in my custom keymap. I need a bit more time here to investigate further. I can for sure say that reverting the patch solved my issues with my custom keymap. I am just not able to really nail it down at the moment. Please be patient.

I have to admit that i am not able to reproduce the problem in a clear manner anymore. Now the trouble maker works fine with the Blender default keymap. But it still fails in my custom keymap. I need a bit more time here to investigate further. I can for sure say that reverting the patch solved my issues with my custom keymap. I am just not able to really nail it down at the moment. Please be patient.
Author

Found a way. In the added video i demonstrate the problem with the tweak tool in 3D view, which now also has a fallback entry in the keymap.

Found a way. In the added video i demonstrate the problem with the tweak tool in 3D view, which now also has a fallback entry in the keymap.
Author

One last thought regarding custom keymaps. The fallback entry imho shouldn't show there at all, and should not affect anything. Since with custom keymaps you cannot adjust the parameters from the Blender default keymap. There is no way to switch between left and right click select with a custom keymap.

One last thought regarding custom keymaps. The fallback entry imho shouldn't show there at all, and should not affect anything. Since with custom keymaps you cannot adjust the parameters from the Blender default keymap. There is no way to switch between left and right click select with a custom keymap.
Author

I just realized that the fallback entry is much older. It existed before the patch already. And so the problem is much older too. It's just, up to this patch i had no overriding problem with deselect on nothing.

I just realized that the fallback entry is much older. It existed before the patch already. And so the problem is much older too. It's just, up to this patch i had no overriding problem with deselect on nothing.

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'

Changed status from 'Needs Triage' to: 'Needs Developer To Reproduce'

Added subscriber: @ideasman42

Added subscriber: @ideasman42

Watching the video, there is a mistake when testing the shortcut of the 3D View Tool: Tweak ... this shortcut only works if the Tweak tool is activated. In the video you activated another tool so the fallback shortcut is used.

But I don't understand why disabling the 3D View Tool: Tweak (fallback) keyitem makes the 3D View Tool: Tweak shortcut work (in my opinion the {nav 3D View (Global) > Select } is what should be used instead).

Not sure if this is a bug, it looks more like a problem due to lack of documentation explaining it.

@ideasman42, you should understand better what is happening here, is there a bug?

The report description needs to be updated indicating the 3 existing shortcuts and what happens when disabling the fallback.

Watching the video, there is a mistake when testing the shortcut of the `3D View Tool: Tweak` ... this shortcut only works if the Tweak tool is activated. In the video you activated another tool so the fallback shortcut is used. But I don't understand why disabling the `3D View Tool: Tweak (fallback)` keyitem makes the `3D View Tool: Tweak` shortcut work (in my opinion the {nav 3D View (Global) > Select } is what should be used instead). Not sure if this is a bug, it looks more like a problem due to lack of documentation explaining it. @ideasman42, you should understand better what is happening here, is there a bug? *The report description needs to be updated indicating the 3 existing shortcuts and what happens when disabling the fallback.*
Author

Yes, as told i had some troubles to make a use case with the Blender keymap where the overriding behaviour shows. The case in the video is reproduceable. And is exactly the trouble that i have with my custom keymap. The deselect on Nothing part has quit working. I have it off. But the fallback key item has it on. And overrides my change.

I hope the behaviour is now clear enough to follow further what is going on here.

For me it is definitely a bug since changing one setting in the one key item overrides the other key item. Which should not happen. I should not be required to change a setting in another key item to change the current key item.

Yes, as told i had some troubles to make a use case with the Blender keymap where the overriding behaviour shows. The case in the video is reproduceable. And is exactly the trouble that i have with my custom keymap. The deselect on Nothing part has quit working. I have it off. But the fallback key item has it on. And overrides my change. I hope the behaviour is now clear enough to follow further what is going on here. For me it is definitely a bug since changing one setting in the one key item overrides the other key item. Which should not happen. I should not be required to change a setting in another key item to change the current key item.

I didn't see anything overwriting another key item.
As mentioned, the "fallback" key item is used when the selection tool (the first in the tool list) is NOT activated.
It is not overriding the selection tool's key item.
It would only be overridden if, even with the selection tool activated, the fallback key item is still used.

I didn't see anything overwriting another key item. As mentioned, the "fallback" key item is used when the selection tool (the first in the tool list) is **NOT** activated. It is not overriding the selection tool's key item. It would only be overridden if, even with the selection tool activated, the fallback key item is still used.
Author

But the "deselect on nothing" setting is in fact overwritten by the fallback tool. You have it twice in use. Else the behaviour would not change as shown. I have now to turn off the Deselect on nothing in two keymap items to get the move tool working in the way it was set up. And this tweak tool is just one of the fallback tools, one example. There are more.

Well, you already mentioned it, it is already odd that changing the tweak tool behaviour changes the behaviour of the move tool. But i am far away from understanding the keymap design anyways. I can just report what i find.

As told, my custom keymap has quit working regarding the "Deselect on Nothing" behaviour after this patch. I am still under the impression that this is a bug after looking at what causes it. And so i have reported it. It is of course your decision if you fix/change the trouble maker or not.

Many thanks for your patience.

But the "deselect on nothing" setting is in fact overwritten by the fallback tool. You have it twice in use. Else the behaviour would not change as shown. I have now to turn off the Deselect on nothing in two keymap items to get the move tool working in the way it was set up. And this tweak tool is just one of the fallback tools, one example. There are more. Well, you already mentioned it, it is already odd that changing the tweak tool behaviour changes the behaviour of the move tool. But i am far away from understanding the keymap design anyways. I can just report what i find. As told, my custom keymap has quit working regarding the "Deselect on Nothing" behaviour after this patch. I am still under the impression that this is a bug after looking at what causes it. And so i have reported it. It is of course your decision if you fix/change the trouble maker or not. Many thanks for your patience.

Thanks for the information, in fact I was able to identify the problem and created a report detailing it:
#95452 (Multiple calls of 'view3d.select' with LMB selection keymap)

Thanks for the information, in fact I was able to identify the problem and created a report detailing it: #95452 (Multiple calls of 'view3d.select' with LMB selection keymap)

Closed as duplicate of #95452

Closed as duplicate of #95452
Author

Excellent. Many thanks :)

Excellent. Many thanks :)
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#95349
No description provided.