Flint wrote:Imagine that after creating such a button you install a program named "my.exe" that happens to be in your PATH — the real action of the button will immediately change, which is impossible to find out without checking the real disk contents, and I'm quite positive this must be avoided at all costs.
Too late. Execution of the button command already depends on disk contents and people maybe are already using it. Changing this behavior would mean that some people's buttonbar may no longer work right after updating TC.
MVV wrote:So, what do YOU suggest to do?
It is always hard to detect if user is lazy enough to skip quotes around path containing spaces, especially if there are more than one space. I think TC shouldn't check more than one path in such case.
TC may do checks with some delay (e.g. one per second or two) using some kind of a timer message (or simply after a delay since previous check, or w/o delays at all, just when command field loses focus - probably the best case).
TC should do the same checks as when the command is executed. However that means IO-checks. It could be done when the command field loses focus, but is this also wanted behavior when right clicking a button?
My suggestion was to not have a fully consistent subbar checking, but to give the users the possibility to explicitly tell TC when something is a subbar for cases when auto-detection is off.
As an alternative for the proposed tri-state subbar checkbox, you could also make a more general solution for disabling auto-detection. Below the Command field, a new field "Command type" could be added. This could be a dropdown field with values like:
Code: Select all
Command type: Auto-detect (default)
External command
Internal command
Button bar
Or an entry "Change command type" could be added to the menu under the Change button.
In any case, it would be a nice if users could have full control by turning off auto-detection and control things manually.