Pārlūkot izejas kodu

Update the minimum size of ViewportContainer

Tomasz Chabora 4 gadi atpakaļ
vecāks
revīzija
e72adab511
2 mainītis faili ar 7 papildinājumiem un 0 dzēšanām
  1. 1 0
      scene/gui/subviewport_container.cpp
  2. 6 0
      scene/main/viewport.cpp

+ 1 - 0
scene/gui/subviewport_container.cpp

@@ -54,6 +54,7 @@ Size2 SubViewportContainer::get_minimum_size() const {
 
 void SubViewportContainer::set_stretch(bool p_enable) {
 	stretch = p_enable;
+	update_minimum_size();
 	queue_sort();
 	update();
 }

+ 6 - 0
scene/main/viewport.cpp

@@ -48,6 +48,7 @@
 #include "scene/gui/label.h"
 #include "scene/gui/popup.h"
 #include "scene/gui/popup_menu.h"
+#include "scene/gui/subviewport_container.h"
 #include "scene/main/canvas_layer.h"
 #include "scene/main/window.h"
 #include "scene/resources/mesh.h"
@@ -3865,6 +3866,11 @@ Viewport::~Viewport() {
 
 void SubViewport::set_size(const Size2i &p_size) {
 	_set_size(p_size, _get_size_2d_override(), Rect2i(), _stretch_transform(), true);
+
+	SubViewportContainer *c = Object::cast_to<SubViewportContainer>(get_parent());
+	if (c) {
+		c->update_minimum_size();
+	}
 }
 
 Size2i SubViewport::get_size() const {