'History (for undo)' window isn't intuitive. Example: I wanted to apply delay +200 ms to the selected subtitle and forward. I did it but I'm not sure if I have selected "Selected line(s) and forward". I go to Edit -> Show history (for undo) and see there: "Before show selected lines earlier/later: 00:00:00,200". It is completely unclear what does it mean. But okay. I press "Compare with current" and see that no, I didn't select the right option before applying the delay. I press 'Rollback'. The window closes; it is unexpected - I'd prefer it to stay open to give me the possibility to "Compare with current" again. But okay. For some reason I want to redo the action - I press Ctrl-Y. Then I press Ctrl-Z again. I perform these actions a couple of times as I'm sure that it doesnt' touch anything but the last action. But then I found out that I was wrong - now I can't undo anything that I've done before applying this delay!
That's how it should work according to my opinion:
- Undoing the action isn't an action itself and should not overwrite other actions in the undo stack. It's the most important thing.
- Actions in the history should be named natively. In my case above - "Delay +00:00:00,200 for all lines". If the delay was applied for the selected lines: "Delay +00:00:00,200 for lines ##10-14". And so on.
- Actions that are undone should be displayed as Italic.
- There should be two buttons in the dialog window: "Undo" and "Redo". If the selected action is undone the "Redo" button is active and "Undo" button is disabled. And vice versa.
- If the selected action isn't the last action Undo/Redo are applied to the selected action and all actions after it.