diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2021-02-14 12:54:04 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-14 12:54:04 +0100 |
commit | b21f854b7f573bcbc963d5346ed37231c29446b6 (patch) | |
tree | db47f8e3872339fbee3d1dd4402f125de28d3f23 | |
parent | b9aa2d0dfb5ec6e93e1dc3604fba92606c1a2398 (diff) | |
parent | 466cf0b466570f70ac4dc0f5a8a4b58f513a1545 (diff) |
Merge pull request #45910 from Ansraer/default-scale-highres-monitor
Adjust auto scale on 4k monitors to 150%
-rw-r--r-- | editor/editor_node.cpp | 4 | ||||
-rw-r--r-- | editor/editor_settings.cpp | 4 | ||||
-rw-r--r-- | editor/project_manager.cpp | 4 |
3 files changed, 12 insertions, 0 deletions
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index acf63d7cde..57fa552845 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -5687,6 +5687,10 @@ EditorNode::EditorNode() { if (DisplayServer::get_singleton()->screen_get_dpi(screen) >= 192 && DisplayServer::get_singleton()->screen_get_size(screen).y >= 1400) { // hiDPI display. scale = 2.0; + } else if (DisplayServer::get_singleton()->screen_get_size(screen).y >= 1700) { + // Likely a hiDPI display, but we aren't certain due to the returned DPI. + // Use an intermediate scale to handle this situation. + scale = 1.5; } else if (DisplayServer::get_singleton()->screen_get_size(screen).y <= 800) { // Small loDPI display. Use a smaller display scale so that editor elements fit more easily. // Icons won't look great, but this is better than having editor elements overflow from its window. diff --git a/editor/editor_settings.cpp b/editor/editor_settings.cpp index 6026181615..b6fa2f6d03 100644 --- a/editor/editor_settings.cpp +++ b/editor/editor_settings.cpp @@ -337,6 +337,10 @@ void EditorSettings::_load_defaults(Ref<ConfigFile> p_extra_config) { if (DisplayServer::get_singleton()->screen_get_dpi(screen) >= 192 && DisplayServer::get_singleton()->screen_get_size(screen).y >= 1400) { // hiDPI display. scale = 2.0; + } else if (DisplayServer::get_singleton()->screen_get_size(screen).y >= 1700) { + // Likely a hiDPI display, but we aren't certain due to the returned DPI. + // Use an intermediate scale to handle this situation. + scale = 1.5; } else if (DisplayServer::get_singleton()->screen_get_size(screen).y <= 800) { // Small loDPI display. Use a smaller display scale so that editor elements fit more easily. // Icons won't look great, but this is better than having editor elements overflow from its window. diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp index 4667d80057..7b00c688fa 100644 --- a/editor/project_manager.cpp +++ b/editor/project_manager.cpp @@ -2383,6 +2383,10 @@ ProjectManager::ProjectManager() { if (DisplayServer::get_singleton()->screen_get_dpi(screen) >= 192 && DisplayServer::get_singleton()->screen_get_size(screen).y >= 1400) { // hiDPI display. scale = 2.0; + } else if (DisplayServer::get_singleton()->screen_get_size(screen).y >= 1700) { + // Likely a hiDPI display, but we aren't certain due to the returned DPI. + // Use an intermediate scale to handle this situation. + scale = 1.5; } else if (DisplayServer::get_singleton()->screen_get_size(screen).y <= 800) { // Small loDPI display. Use a smaller display scale so that editor elements fit more easily. // Icons won't look great, but this is better than having editor elements overflow from its window. |