violinbg/godot-desktop-themes

problems with "files newer on disk" dialog

FyiurAmron opened this issue · 1 comments

This one is related to godotengine/godot#65824 (and its dupes), so it concerns the same code as godotengine/godot#66812 Basically, after having a file deleted outside of editor while also open in the editor, this comes up (as expected):
image

  • "Resave" works as expected, if it's just a file that was deleted. If the file got deleted with the directory, this option doesn't work (although there isn't a real reason it shouldn't, since it can just recursively recreate the parent directory of the file), displaying
    image
    instead.

  • Selecting "Cancel" works as expected-ish - yet, arguably, the caption here should be "Ignore" and not "Cancel" (what are we cancelling? the action? the dialog? The semantic UX design rule is that you can only cancel an action you explicitly executed, because otherwise there ain't anything to cancel).

  • Selecting "Reload" does nothing in this case, which makes little sense - if the file would be edited, this would reload the edited version from disk. In case of a deleted file, one would expect to see e.g. an empty file here, or have the editor script window closed (like Ctrl+W), since the file no longer exists.

  • Also, the message itself is misleading - in case the file is missing, the message should just state that, by e.g. having the filenames decorated with " (Deleted)" or similar. Saying "the files are newer on disk" is highly misleading here, if all or some of the files in the list were deleted instead of edited.

  • And finally, after selecting any of the options, this check is re-triggered every time the window gets focus again, even if I chose the "Reload" or "Cancel". This is extremely annoying, since there is no way to suppress this dialog from appearing either permanently or semi-permanently, other that re-saving the file (which is usually not what one wants) or manually closing the file via Ctrl+W.

ugh, I opened this on a wrong bug tracker by mistake XD