From 73be53b6d9e8821fbb1e2775a30b496e57935b7d Mon Sep 17 00:00:00 2001 From: l0ng-ai <24760907+l0ng-ai@users.noreply.github.com> Date: Thu, 5 Nov 2026 13:29:49 +0800 Subject: [PATCH] fix(macos): add a project opened over a fullscreen tab group as a tab (#1467) A project-tab group goes fullscreen through simple fullscreen, which is_fullscreen() doesn't report, so with the default "prefer tabs in full screen only" a project opened over a fullscreen group came up as a floating window. The new-project tab target now also counts simple fullscreen. Fixes #1438 --- src-tauri/src/macos.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src-tauri/src/macos.rs b/src-tauri/src/macos.rs index 36cb01413..dcb8bc5f5 100644 --- a/src-tauri/src/macos.rs +++ b/src-tauri/src/macos.rs @@ -46,7 +46,9 @@ pub fn new_project_tab_target(app: &AppHandle, launch: &Launch) -> IdeResult(); host.project(w.label()).is_ok_and(|p| !p.light) || host.remote_dev.get(w.label()).is_some() }); - let fullscreen = active.as_ref().is_some_and(|w| w.is_fullscreen().unwrap_or(false)); + // A project-tab group is fullscreen through simple fullscreen, which the native flag misses. + let fullscreen = + active.as_ref().is_some_and(|w| w.is_fullscreen().unwrap_or(false) || is_simple_fullscreen(w.label())); let light_edit = launch.project.is_none() && launch.remote.is_none(); Ok(should_group_new_project(tabbing_preference(app)?, fullscreen, active.is_some(), light_edit) .then_some(active)