@@ -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));
@@ -423,6 +423,9 @@ GameView::EmbedAvailability GameView::_get_embed_available() {
423423 if (!DisplayServer::get_singleton ()->has_feature (DisplayServer::FEATURE_WINDOW_EMBEDDING)) {
424424 return EMBED_NOT_AVAILABLE_FEATURE_NOT_SUPPORTED;
425425 }
426+ if (!EditorNode::get_singleton ()->is_multi_window_enabled ()) {
427+ return EMBED_NOT_AVAILABLE_SINGLE_WINDOW_MODE;
428+ }
426429
427430 EditorRun::WindowPlacement placement = EditorRun::get_window_placement ();
428431 if (placement.force_fullscreen ) {
@@ -477,6 +480,9 @@ void GameView::_update_ui() {
477480 case EMBED_NOT_AVAILABLE_FULLSCREEN:
478481 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." ));
479482 break ;
483+ case EMBED_NOT_AVAILABLE_SINGLE_WINDOW_MODE:
484+ state_label->set_text (TTR (" Game embedding not available in single window mode." ));
485+ break ;
480486 }
481487
482488 if (available == EMBED_AVAILABLE) {
@@ -495,8 +501,7 @@ void GameView::_update_embed_menu_options() {
495501 menu->set_item_checked (menu->get_item_index (EMBED_RUN_GAME_EMBEDDED), embed_on_play);
496502 menu->set_item_checked (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), make_floating_on_play);
497503
498- // When embed is Off or in single window mode, Make floating is not available.
499- menu->set_item_disabled (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), !embed_on_play || !EditorNode::get_singleton ()->is_multi_window_enabled ());
504+ menu->set_item_disabled (menu->get_item_index (EMBED_MAKE_FLOATING_ON_PLAY), !embed_on_play);
500505
501506 fixed_size_button->set_pressed (embed_size_mode == SIZE_MODE_FIXED);
502507 keep_aspect_button->set_pressed (embed_size_mode == SIZE_MODE_KEEP_ASPECT);
0 commit comments