Explicit button to "Clear Assigned Hotkey"?

In the preferences for “Hotkeys”, I could not find a way to clear a hotkey.

After a bit of hunting, I found this thread that described how you must right-click to “Clear Assigned Hotkey”… Disable a hot key?

Screenshot 2023-07-04 at 12.10.43

From what I can see, the only way to clear a hotkey is by this right-click menu, which is difficult to discover, and more hidden than it ought to be considering how important of an action it is in this context.

I’ve tried to mock-up a minimally-invasive solution to this, where there is a button in the hotkey modification dialog that makes it more explicit how to clear a hotkey…

I disagree with your comment “it is difficult to discover”.
Kicad is fairly consistent with its mouse behavior.
Left mouse click selects something.
Right mouse click allows an operation to be performed… usually shows a list of operations available.

I agree with you that KiCAD is nicely consistent overall. I didn’t say anything about the right-click pattern being inconsistent. The right-click functionality as it is makes sense here.

I am reporting an observation that clearing a hotkey (an action as important as setting a hotkey), should be made equally explicit with some kind of visible affordance.

Can you offer an explanation/argument for why you disagree?

I would not suppose that you are arguing that all operations in KiCAD are exclusively performed by right clicking; often options in right-click menus are thoughtfully redundant with other ways of performing the same action.

In this particular case, I think it’s hard to argue that the action of ‘clearing a hotkey’ is as discoverable as ‘setting a hotkey to another key’ since one has instructional text at the top of the list and its own dialog window, while the other is only available via right-click, and has no immediate visual cue that the action is possible.

In my opinion, this, like most CAD programs, require the user to show some initiative.
I could understand that instructions would be required if “clearing” was buried several layers down, but a single right click is not difficult to find.

There are many more functions that are considerably more difficult to use, but lack detailed instructions. However, with a little initiative, they are easy to master. An example that comes to mind is “Position relative to” in Positioning Tools. Making this work properly requires a little trial and error to get the sequence of actions correct.

I suppose the real question is “How many pop-up text messages to use a programme are required for that programme?”
Who does the work?
Who does the translations?
Where does it stop?
Who benefits?
Who is irritated and/or insulted by continual pop-ups?
Etc.

If you are going to propose a clear button, I would prefer an X in a circle icon to the right of the Current key field. No translation needed.

I have no problem with duplication of function, it happens a lot with commonly used commands. Some functions are icons on the toolbars as well as entries in dropdown menus.

2 Likes

This is a good proposal, I tried to do a rough mock-up…

Screenshot 2023-07-05 at 12.15.41

The translation would be required anyhow though, since the current right-click functionality for this feature would be maintained and that already requires translation.

This is true. Right-click is often one of a few ways to execute common commands … and if right-click is the only way to access a command, then it’s for advanced or otherwise less-common ones.

Kicad would not be a real CAD programme if there were not many ways to do everything. :rofl:

This is a slippery slope that you can use to justify any UI decision.

Regardless, this is not a discussion of any CAD concept, or how to approach designing software for experts vs. novices; it’s a discussion about the basic usability of managing a table of hotkeys.

I’ve been using this wonderful program daily for some years now, and the other day this tiny need to clear a hotkey baffled me for a good while. I had to resort to digging in the forums, and discovered that I was not alone

This is a useful feature no-doubt, but not analogous since it is not as primary as ‘clearing a hotkey’ is in the context of managing hotkeys.

What new pop-up has been proposed? I didn’t mention any new pop-ups, only a new button in an existing pop-up.

If you show some initiative, and look a bit deeper at the GUI of most software that you use everyday (CAD or otherwise), you may be surprised to discover that there are often multiple ways to do the same thing.

Applications can be launched by double-clicking the icon, or by right-clicking the icon and choosing ‘open’. You can copy and paste using the application menu hierarchy, or via right-click, or you can use key commands. In Eeschema, you can place a wire in at least three ways: by pressing the ‘w’ key on your keyboard, clicking the ‘Add a wire’ toolbar button then clicking the page, or by right-clicking on the page and choosing “Add Wire”. Believe it or not, this kind of redundancy is usually a good thing.

Sorry @zambetti , I’m not sure if you missed some words or my comment was lost in translation.

I have used a double negative.
My statement translates to “Kicad is a real CAD program because there are many ways to do everything.”

I agree completely with your last post.

As a new user who has been working on a few designs over the past few weeks, I didn’t find it that difficult to find how to clear hotkeys. I agree with everyone that’s been saying that multiple ways of doing it would be nice though, to reduce how much people would have to hunt for it.

I did really like this suggestion, it would be an easily understandable way to clear hotkeys.

No worries at all. This is such a great forum because there’s so many people on here who genuinely care about the the project.

2 Likes

You mean there are people who pretend to care? :rofl:

Fie on thee of so little faith!

Ostracism!.. defenestration!!

You two are a hoot.

Anyway, I took a crack at implementing this, it was only a few minor changes to widget_hotkey_list.h and widget_hotkey_list.cpp and it seems to work fine.

Here’s a git diff patch file in case anyone reading this thread is a developer wants to try it in their source build…
widget_hotkey_list.patch (2.7 KB)

And the complete modified source files just in case…
widget_hotkey_list.h (6.1 KB)
widget_hotkey_list.cpp (20.8 KB)

I don’t know what the official process is for submitting a patch like this, perhaps someone on here can show me the way?

Here’s a screenshot of what it looks like…

Screenshot 2023-07-08 at 12.50.36

1 Like

https://www.kicad.org/contribute/

Kicad / Help / Get Involved / Contribute

There are some hoops to jump through. Good luck! :+1:

1 Like

Just a note in case someone stumbles on this thread in the future, I filed an issue about this a couple weeks ago with the patch…

1 Like

@Docara I don’t understand your comment or accusation. I said the exact opposite of what you are ascribing to me. Maybe you misread what I wrote?

I never suggested that it’s anyone’s ‘fault’; it’s just a dusty nook of the UI that I was confused by, and found another thread of someone else who was also confused by it … so I broached the topic and wrote/contributed a patch to maybe improve the project in a very small way.

I can only imagine that you must have somehow misunderstood this thread.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.