Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an editor setting to default to non-maximized; and pass -w when relaunching from window #5966

Open
lyuma opened this issue Dec 20, 2022 · 2 comments

Comments

@lyuma
Copy link

lyuma commented Dec 20, 2022

Describe the project you are working on

Working on V-Sekai, a large platform with lots of scripts.

Describe the problem or limitation you are having in your project

I have a single large monitor, so it is important to me that I be able to perform multiple tasks on my single monitor. When opening a Godot project in the Editor with no arguments, it will maximize a frozen window on my screen until the project loads. In larger projects this blocks my use of my computer for a long time.

As a result of this frozen window, I always open Godot from the console with -w -e to ensure it is not maximized. However, this does not work when opening from the Project Selector; and it also does not preserve arguments when forced to relaunch due to a setting or import change.

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

I would like a setting to prefer non-maximized Godot Editor, for users with larger monitors.

I would also like Godot Editor to remember when relaunching itself whether or not it is un-maximized, and even better, the position and size of the window when relaunching itself, such as forwarding its position in --resolution and --position arguments when relaunching.

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

Part 1.
There will be a project setting to open non-maximized by default. If I select this option, the editor will never start maximized and the -w option will have no effect (optionally, another option could be introduced to force maximized)

Part 2.
When the editor relaunches, it will add a -w flag to the project if the project window is currently non-maximized. It may also pass its position at the time relaunch was requested as --resolution and --position arguments. Ideally it would also remember which display the editor window was on, however no such command line option currently exists.

I would be happy with either or both of these features, but doing both would be best.

Another option exists which would be to store window placement on disk per-project or globally. I would not prefer this option
because of its potential for causing bugs such as positioning windows off-screen or making tiny windows due to an error.

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

No: Editor window placement seems to occur before addons are loaded, and at the moment it opens a fullscreen window, usability of the computer is interrupted.

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

Editor usability affects everyone using Godot.

After using the editor for a couple years and doing some soul-diving, I noticed I was reluctant to make project setting changes or reimport files which would cause an editor restart. I think I noticed that access to my computer would be blocked for upwards of 10 seconds and thie makes me uncomfortable restarting the editor.

The issue makes me similarly reluctant to open projects from the Project Selector, so I found myself preferring to open projects from the console.

@Calinou
Copy link
Member

Calinou commented Dec 20, 2022

Related to #4900 and #3145.

I think preserving the previous position/size is the way to go.

@spanzeri
Copy link

spanzeri commented Apr 16, 2023

Related to #76085 . I also would prefer the editor window to remember position/size/screen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants