diff options
author | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2021-08-22 09:08:33 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-22 09:08:33 +0200 |
commit | 337574d7f279851f4ba0028a9f515ba509557e73 (patch) | |
tree | 434c04478b70937e5ea846255c013f22615a169d | |
parent | 57e3a1a95176bb45cd15cbb657bc984826f59000 (diff) | |
parent | f02a040d48bc53ce8d90085b809db9a66c6ff2de (diff) |
Merge pull request #37260 from Calinou/define-minimum-window-size
Define a default minimum window size to workaround rendering issues
-rw-r--r-- | doc/classes/DisplayServer.xml | 2 | ||||
-rw-r--r-- | main/main.cpp | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/doc/classes/DisplayServer.xml b/doc/classes/DisplayServer.xml index abb715b34e..4f495eaec9 100644 --- a/doc/classes/DisplayServer.xml +++ b/doc/classes/DisplayServer.xml @@ -649,6 +649,8 @@ <argument index="0" name="min_size" type="Vector2i" /> <argument index="1" name="window_id" type="int" default="0" /> <description> + Sets the minimum size for the given window to [code]min_size[/code] (in pixels). + [b]Note:[/b] By default, the main window has a minimum size of [code]Vector2i(64, 64)[/code]. This prevents issues that can arise when the window is resized to a near-zero size. </description> </method> <method name="window_set_mode"> diff --git a/main/main.cpp b/main/main.cpp index ee2f22797a..5a2aaa8b8f 100644 --- a/main/main.cpp +++ b/main/main.cpp @@ -2242,6 +2242,10 @@ bool Main::start() { DisplayServer::get_singleton()->window_set_title(appname); #endif + // Define a very small minimum window size to prevent bugs such as GH-37242. + // It can still be overridden by the user in a script. + DisplayServer::get_singleton()->window_set_min_size(Size2i(64, 64)); + bool snap_controls = GLOBAL_DEF("gui/common/snap_controls_to_pixels", true); sml->get_root()->set_snap_controls_to_pixels(snap_controls); |