The editing of the "every" value for recurrences always keeps a digit in the field, presumably to ensure there is always a valid value. This causes some strange editing.
Example 1: Put "123" in the field, move to the end, and type Backspace three times. The third Backspace moves the cursor before the "1" instead of removing it. My expectation is that after typing Backspace I would still be at the end of the string instead of at the start.
Example 2: Enter multiple digits in the field, select the field, and press Delete or Backspace. No characters are removed. (In addition, location is moved to the start of the field.) Selecting most of the characters and typing Delete or Backspace works as expected.
Example 3: Select the entire value and type a digit. My expectation from other programs is that the old value would be replaced with the new digit. Instead the new digit is placed at the start of the field followed by the previous value. Selecting some of the characters works as expected.
Proposed solution:
Given that the code currently accepts a "0" and silently converts it to a "1" when the task is closed, I would suggest allowing an empty field (allow the last character or all characters to be deleted) and also converting that to a "1" on close. Then remove the special cases for editing that cause the behavior above.
Thanks, B.J.
You are exactly right about the cause of the weirdness. I brought this up in a past discussion but we never figured out a good solution. I think your solution of allowing normal data entry but fixing any invalid numbers on window close is good. Perhaps it needs to be fixed as soon as any other field is made active though, or as soon as the field loses its focus.
This solution, if feasible, is also relevant to similar issues in other places in the program, such as the priority setting.
Hi, it's many years later, and I'm excited to tell you that https://github.com/taskcoach/taskcoach now has updated Python3 Task Coach codebase! Packages are available for some common Linux systems and we can add more.
If you are on Linux, we invite you to check it out. Other OS's may come later
I moved this still-outstanding bug report to this new ticket:
https://github.com/taskcoach/taskcoach/issues/53