Sfoglia il codice sorgente

Fix project manager window centering in multi-monitor situation

* When main screen's position in not (0,0) and editor scale is larger
  than 1, the project manager window was not centered in main screen
C.Even 3 anni fa
parent
commit
56d372ef0c
1 ha cambiato i file con 3 aggiunte e 2 eliminazioni
  1. 3 2
      editor/project_manager.cpp

+ 3 - 2
editor/project_manager.cpp

@@ -2872,10 +2872,11 @@ ProjectManager::ProjectManager() {
 	if (scale_factor > 1.0) {
 		Vector2i window_size = DisplayServer::get_singleton()->window_get_size();
 		Vector2i screen_size = DisplayServer::get_singleton()->screen_get_size();
+		Vector2i screen_position = DisplayServer::get_singleton()->screen_get_position();
 		window_size *= scale_factor;
 		Vector2i window_position;
-		window_position.x = (screen_size.x - window_size.x) / 2;
-		window_position.y = (screen_size.y - window_size.y) / 2;
+		window_position.x = screen_position.x + (screen_size.x - window_size.x) / 2;
+		window_position.y = screen_position.y + (screen_size.y - window_size.y) / 2;
 		DisplayServer::get_singleton()->window_set_size(window_size);
 		DisplayServer::get_singleton()->window_set_position(window_position);
 	}