feat: updated engine version to 4.4

This commit is contained in:
Sara 2025-03-17 10:43:25 +01:00
parent d08586768d
commit ba58baf432
140 changed files with 108317 additions and 14666 deletions

View file

@ -257,7 +257,7 @@ void GameView::_show_update_window_wrapper() {
Point2 offset_embedded_process = embedded_process->get_global_position() - get_global_position();
// On the first startup, the global position of the embedded process control is invalid because it was
// never displayed. We will calculated it manually using the minimum size of the window.
// never displayed. We will calculate it manually using the minimum size of the window.
if (offset_embedded_process == Point2()) {
offset_embedded_process.y = wrapped_min_size.y;
}
@ -812,10 +812,27 @@ void GameView::_update_arguments_for_instance(int p_idx, List<String> &r_argumen
_update_embed_window_size();
Rect2i rect = embedded_process->get_screen_embedded_window_rect();
// Usually, the global rect of the embedded process control is invalid because it was hidden. We will calculate it manually.
if (!window_wrapper->get_window_enabled()) {
Size2 old_min_size = embedded_process->get_custom_minimum_size();
embedded_process->set_custom_minimum_size(Size2i());
Control *container = EditorNode::get_singleton()->get_editor_main_screen()->get_control();
rect = container->get_global_rect();
Size2 wrapped_min_size = window_wrapper->get_minimum_size();
rect.position.y += wrapped_min_size.y;
rect.size.y -= wrapped_min_size.y;
rect = embedded_process->get_adjusted_embedded_window_rect(rect);
embedded_process->set_custom_minimum_size(old_min_size);
}
// When using the floating window, we need to force the position and size from the
// editor/project settings, because the get_screen_embedded_window_rect of the
// embedded_process will be updated only on the next frame.
if (p_idx == 0 && window_wrapper->get_window_enabled()) {
if (window_wrapper->get_window_enabled()) {
EditorRun::WindowPlacement placement = EditorRun::get_window_placement();
if (placement.position != Point2i(INT_MAX, INT_MAX)) {
rect.position = placement.position;