Fix missing initial position modes for the main window.

This commit is contained in:
bruvzg 2023-10-23 09:56:02 +03:00
parent 8c25a98fdf
commit f8829c80bb
No known key found for this signature in database
GPG Key ID: 7960FCF39844EC38

View File

@ -1960,21 +1960,31 @@ Error Main::setup(const char *execpath, int argc, char *argv[], bool p_second_ph
} }
window_mode = (DisplayServer::WindowMode)(GLOBAL_GET("display/window/size/mode").operator int()); window_mode = (DisplayServer::WindowMode)(GLOBAL_GET("display/window/size/mode").operator int());
int initial_position_type = GLOBAL_GET("display/window/size/initial_position_type").operator int(); int initial_position_type = GLOBAL_GET("display/window/size/initial_position_type").operator int();
if (initial_position_type == 0) { if (initial_position_type == 0) { // Absolute.
if (!init_use_custom_pos) { if (!init_use_custom_pos) {
init_custom_pos = GLOBAL_GET("display/window/size/initial_position").operator Vector2i(); init_custom_pos = GLOBAL_GET("display/window/size/initial_position").operator Vector2i();
init_use_custom_pos = true; init_use_custom_pos = true;
} }
} else if (initial_position_type == 1) { } else if (initial_position_type == 1) { // Center of Primary Screen.
if (!init_use_custom_screen) { if (!init_use_custom_screen) {
init_screen = DisplayServer::SCREEN_PRIMARY; init_screen = DisplayServer::SCREEN_PRIMARY;
init_use_custom_screen = true; init_use_custom_screen = true;
} }
} else if (initial_position_type == 2) { } else if (initial_position_type == 2) { // Center of Other Screen.
if (!init_use_custom_screen) { if (!init_use_custom_screen) {
init_screen = GLOBAL_GET("display/window/size/initial_screen").operator int(); init_screen = GLOBAL_GET("display/window/size/initial_screen").operator int();
init_use_custom_screen = true; init_use_custom_screen = true;
} }
} else if (initial_position_type == 3) { // Center of Screen With Mouse Pointer.
if (!init_use_custom_screen) {
init_screen = DisplayServer::SCREEN_WITH_MOUSE_FOCUS;
init_use_custom_screen = true;
}
} else if (initial_position_type == 4) { // Center of Screen With Keyboard Focus.
if (!init_use_custom_screen) {
init_screen = DisplayServer::SCREEN_WITH_KEYBOARD_FOCUS;
init_use_custom_screen = true;
}
} }
} }