aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde2017-03-24 18:23:48 +0100
committerRémi Verschelde2017-03-24 18:26:56 +0100
commita531051a61300d6ea7e04b003d72d9e591bbfe3b (patch)
tree73bd20187296743405a31123b03dc59bb03c04b3
parentfd17d301d0a655956fda7a159a0ffd4c54b56576 (diff)
downloadgodot-a531051a61300d6ea7e04b003d72d9e591bbfe3b.tar.gz
godot-a531051a61300d6ea7e04b003d72d9e591bbfe3b.tar.zst
godot-a531051a61300d6ea7e04b003d72d9e591bbfe3b.zip
Only assume HiDPI mode if DPI >= 192 and width > 2000
Also use single-dock column if width < 1200. Manually adapted from bfe67a3b87ada532d27df015141af8eb6091ef89 and c103f32ea3b19c3588d54dcef98e307f8b823f4c. Fixes #6096.
-rw-r--r--editor/editor_node.cpp21
-rw-r--r--editor/project_manager.cpp2
2 files changed, 19 insertions, 4 deletions
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index e11778d61..2eafea23d 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -5088,7 +5088,7 @@ EditorNode::EditorNode() {
{
int dpi_mode = EditorSettings::get_singleton()->get("global/hidpi_mode");
if (dpi_mode == 0) {
- editor_set_hidpi(OS::get_singleton()->get_screen_dpi(0) > 150);
+ editor_set_hidpi(OS::get_singleton()->get_screen_dpi(0) >= 192 && OS::get_singleton()->get_screen_size(OS::get_singleton()->get_current_screen()).x > 2000);
} else if (dpi_mode == 2) {
editor_set_hidpi(true);
} else {
@@ -5875,14 +5875,29 @@ EditorNode::EditorNode() {
prop_editor_base->add_child(property_editor);
property_editor->set_undo_redo(&editor_data.get_undo_redo());
+ bool use_single_dock_column = OS::get_singleton()->get_screen_size(OS::get_singleton()->get_current_screen()).x < 1200;
+
node_dock = memnew(NodeDock);
//node_dock->set_undoredo(&editor_data.get_undo_redo());
- dock_slot[DOCK_SLOT_RIGHT_BL]->add_child(node_dock);
+ if (use_single_dock_column) {
+ dock_slot[DOCK_SLOT_RIGHT_UL]->add_child(node_dock);
+ } else {
+ dock_slot[DOCK_SLOT_RIGHT_BL]->add_child(node_dock);
+ }
filesystem_dock = memnew(FileSystemDock(this));
filesystem_dock->set_name(TTR("FileSystem"));
filesystem_dock->set_display_mode(int(EditorSettings::get_singleton()->get("filesystem_dock/display_mode")));
- dock_slot[DOCK_SLOT_LEFT_UR]->add_child(filesystem_dock);
+
+ if (use_single_dock_column) {
+ dock_slot[DOCK_SLOT_RIGHT_BL]->add_child(filesystem_dock);
+ left_r_vsplit->hide();
+ dock_slot[DOCK_SLOT_LEFT_UR]->hide();
+ dock_slot[DOCK_SLOT_LEFT_BR]->hide();
+ } else {
+ dock_slot[DOCK_SLOT_LEFT_UR]->add_child(filesystem_dock);
+ }
+
//prop_pallete->add_child(filesystem_dock);
filesystem_dock->connect("open", this, "open_request");
filesystem_dock->connect("instance", this, "_instance_request");
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index 9502b0af0..66f1d9ec2 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -1180,7 +1180,7 @@ ProjectManager::ProjectManager() {
{
int dpi_mode = EditorSettings::get_singleton()->get("global/hidpi_mode");
if (dpi_mode == 0) {
- editor_set_hidpi(OS::get_singleton()->get_screen_dpi(0) > 150);
+ editor_set_hidpi(OS::get_singleton()->get_screen_dpi(0) >= 192 && OS::get_singleton()->get_screen_size(OS::get_singleton()->get_current_screen()).x > 2000);
} else if (dpi_mode == 2) {
editor_set_hidpi(true);
} else {