godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
89.57k stars 20.29k forks source link

"Replace in Files" buttons are confusing #96930

Open sszigeti opened 2 weeks ago

sszigeti commented 2 weeks ago

Tested versions

v4.3.stable.official [77dcf97d8]

System information

All OS

Issue description

The buttons appearing in the "Replace in Files" post-operation prompt are confusing.

Steps to reproduce

I'm using the "Replace in Files" command to rename a variable across multiple files. These files are open in the editor.

Once the replace operation's "Replace all (no undo)" button is pressed, a file prompt opens:

Prompt section Content
Title Files have been modified on disk
Description The following files are newer on disk.
What action should be taken?
• file 1
• file 2
Buttons (Keep local changes and overwrite)
(Discard local changes and reload)
(Cancel)

The problem: I have no idea which button I should press to have the replace operation applied. What does Godot mean by "local changes"? Overwrite with what? Also, what's the Cancel button supposed to be doing here?

The request: These buttons should be phrased differently (perhaps "Apply changes" and "Discard changes"), or maybe this prompt itself shouldn't appear at all, since the "Replace all (no undo)" button already states that undo is not available. The Cancel button doesn't seem to be helpful.

Minimal reproduction project (MRP)

N/A

KoBeWi commented 2 weeks ago

This is a separate dialog that appears when your Replace in Files operation has modified a scene you currently have open. The operation is just simple text replacement and editor treats it like external modification.

aXu-AP commented 2 weeks ago

I think replace in files should take currently opened files into account and modify them in editor.

tufduckhotmailcom commented 1 week ago

Totally agree with OP! The buttons are super confusing. I think OP:s suggestion to change the button labels (or even better, remove the dialog entierly) is very resonable.