@@ -223,7 +223,7 @@ void GameView::_instance_starting(int p_idx, List<String> &r_arguments) {
223223 if (!is_feature_enabled) {
224224 return ;
225225 }
226- if (p_idx == 0 && embed_on_play && make_floating_on_play && !window_wrapper->get_window_enabled () && EditorNode::get_singleton ()-> is_multi_window_enabled () && _get_embed_available () == EMBED_AVAILABLE) {
226+ if (p_idx == 0 && embed_on_play && make_floating_on_play && !window_wrapper->get_window_enabled () && _get_embed_available () == EMBED_AVAILABLE) {
227227 // Set the Floating Window default title. Always considered in DEBUG mode, same as in Window::set_title.
228228 String appname = GLOBAL_GET (" application/config/name" );
229229 appname = vformat (" %s (DEBUG)" , TranslationServer::get_singleton ()->translate (appname));
@@ -429,6 +429,9 @@ GameView::EmbedAvailability GameView::_get_embed_available() {
429429 if (!DisplayServer::get_singleton ()->has_feature (DisplayServer::FEATURE_WINDOW_EMBEDDING)) {
430430 return EMBED_NOT_AVAILABLE_FEATURE_NOT_SUPPORTED;
431431 }
432+ if (!EditorNode::get_singleton ()->is_multi_window_enabled ()) {
433+ return EMBED_NOT_AVAILABLE_SINGLE_WINDOW_MODE;
434+ }
432435
433436 EditorRun::WindowPlacement placement = EditorRun::get_window_placement ();
434437 if (placement.force_fullscreen ) {
@@ -483,6 +486,9 @@ void GameView::_update_ui() {
483486 case EMBED_NOT_AVAILABLE_FULLSCREEN:
484487 state_label->set_text (TTR (" Game embedding not available when the game starts in fullscreen.\n Consider overriding the window mode project setting with the editor feature tag to Windowed to use game embedding while leaving the exported project intact." ));
485488 break ;
489+ case EMBED_NOT_AVAILABLE_SINGLE_WINDOW_MODE:
490+ state_label->set_text (TTR (" Game embedding not available in single window mode." ));
491+ break ;
486492 }
487493
488494 if (available == EMBED_AVAILABLE) {
@@ -501,8 +507,7 @@ void GameView::_update_embed_menu_options() {
501507 menu->set_item_checked (menu->get_item_index (EMBED_RUN_GAME_EMBEDDED), embed_on_play);
502508 menu->set_item_checked (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), make_floating_on_play);
503509
504- // When embed is Off or in single window mode, Make floating is not available.
505- menu->set_item_disabled (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), !embed_on_play || !EditorNode::get_singleton ()->is_multi_window_enabled ());
510+ menu->set_item_disabled (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), !embed_on_play);
506511
507512 fixed_size_button->set_pressed (embed_size_mode == SIZE_MODE_FIXED);
508513 keep_aspect_button->set_pressed (embed_size_mode == SIZE_MODE_KEEP_ASPECT);
0 commit comments