Explorar o código

Improve SplitContainer minimum size splitting

kobewi %!s(int64=3) %!d(string=hai) anos
pai
achega
185b1a5bd3
Modificáronse 1 ficheiros con 2 adicións e 3 borrados
  1. 2 3
      scene/gui/split_container.cpp

+ 2 - 3
scene/gui/split_container.cpp

@@ -98,11 +98,10 @@ void SplitContainer::_resort() {
 	// Compute the final middle separation
 	middle_sep = no_offset_middle_sep;
 	if (!collapsed) {
-		int clamped_split_offset = CLAMP(split_offset, ms_first[axis] - no_offset_middle_sep, (get_size()[axis] - ms_second[axis] - sep) - no_offset_middle_sep);
-		middle_sep += clamped_split_offset;
+		int clamped_split_offset = CLAMP(split_offset, ms_first[axis] - no_offset_middle_sep, get_size()[axis] - ms_second[axis] - sep);
+		middle_sep = MAX(middle_sep, clamped_split_offset);
 		if (should_clamp_split_offset) {
 			split_offset = clamped_split_offset;
-
 			should_clamp_split_offset = false;
 		}
 	}