godotengine / godot-proposals

Godot Improvement Proposals (GIPs)
MIT License
1.15k stars 97 forks source link

Move the `quit` option from the `Scene` menu to the `Project` menu #7700

Open mieldepoche opened 1 year ago

mieldepoche commented 1 year ago

Describe the project you are working on

I'm using godot

Describe the problem or limitation you are having in your project

the Scene menu the Project menu
image image

the quit option has nothing to do with scene. It should be in the other menu, next to related options.

As a side note, the order of the menu buttons is weird, I'd assume more primitive menus (Project) to be before others (Scene): image

Describe the feature / enhancement and how it helps to overcome the problem or limitation

Move the quit option below the quit to project list option in the project menu.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

image

If this enhancement will not be used often, can it be worked around with a few lines of script?

used quite often, and consistency is important.

Is there a reason why this should be core and not an add-on in the asset library?

core ux

Mickeon commented 1 year ago

As a side note, the order of the menu buttons is weird, I'd assume more primitive menus (Project) to be before others (Scene):

I remember but I may be wrong(?), Calinou wanted to change this in a PR but it may have been rejected

Calinou commented 1 year ago

This makes sense on paper, but doing this means that the Quit option will no longer be part of the first menu on the left. This breaks usual UX conventions found in desktop programs.

I remember but I may be wrong(?), Calinou wanted to change this in a PR but it may have been rejected

Indeed: https://github.com/godotengine/godot/pull/60083

The PR has a fair amount of positive reactions, but given this comment, I doubt it will be merged.

mieldepoche commented 1 year ago

This breaks usual UX conventions found in desktop programs

I guess, but I don't think that this is too bad honnestly. It may be up to personal preference, but I'd much rather have a meaningful design in the engine rather than an arbitrary rule that forces you to put the quit button under the scene menu, which is completely unrelated. The project button is where I went looking for the quit button, hence my proposal. I think related buttons should be close to each other. It just feels wrong otherwise. In other words, I don't think following this convention is beneficial in this case, even more so considering that most people close the engine with either the X button of their WM or the shortcut (be it Ctrl + Q or Alt + F4).

By the way looking at that pr, it's true that the Quit button should maybe labeled Exit... (edit: looking at other software (firefox, blender, krita, vscode, aseprite, unreal...), it seems that "Quit" and "Exit" are used interchangably. Not sure why I prefered one over the other for a moment)

mieldepoche commented 1 year ago
Maybe the Scene button should be renamed to File. Here's for reference: unreal's File menu godot's Scene menu
image image
Mickeon commented 1 year ago

It can't be File. The editor can edit more than just Scene files. It could easily be mistaken for being about .gd, .tres, .ini... any file that the editor can naturally open. Instead, almost all of the options in that menu are explicitly about Scenes.

YuriSizov commented 1 year ago

an arbitrary rule that forces you to put the quit button under the scene menu, which is completely unrelated.

Regardless of how the menu item is called, it's important to follow standard practices to achieve more natural UX. Everyone is going to look for the close application option under the left-most or right-most item (depending on the UI orientation). It's never second-from-the-side, and it's not arbitrary.

btw, Calinou previously made a PR that does pretty much what you want, but it was rejected as well https://github.com/godotengine/godot/pull/60083

inhalt120g commented 1 year ago

Regardless of how the menu item is called, it's important to follow standard practices to achieve more natural UX.

I agree! Let's follow the standard practices… By moving the Quit to Project and then swapping the Project and Scene menus. I can't think of one program I ever used (including Amiga programs) that has the low level / high level menus swapped like Godot has.

I'm not saying conventions should always be blindly followed (Windows old "click Start to Quit" silly UI comes to mind, which became a convention after it was introduced) but in this case Godot is the one that doesn't make sense.

Everyone is going to look for the close application option under the left-most or right-most item (depending on the UI orientation). It's never second-from-the-side, and it's not arbitrary.

Moving the Quit to Project and then swapping the Project and Scene menus is going to cover both.

YuriSizov commented 1 year ago

That's pretty much what the linked PR did, but it was rejected. I don't mind it either way, personally. I appreciate the consistency that that PR offered, but I also am used to the Godot layout enough to not care. So I would support all initiatives in this regard, whether it is to change or to keep :P

Parsnip commented 11 months ago

Swapping Scene and Project and moving Quit to Project menu makes perfect sense to me, actually came here just now to see if this had been suggested before. Having Quit in Scene makes no contextual sense.

Kind of sad that it was shot down year ago as well, I guess reduz has ultimate veto power.

Maybe in the future it might be possible to configure this, if a modular UI proposal gets anywhere.

edit: Decided to build my own godot with the change and see how I like it in the long run. 🚀