I developed my App originally with Xcode 12.4, meaning mac-catalyst 13.6 and/or iOS 13.6.
However, after upgrading to Xcode 16.4, meaining mac-catalyst 15.x, now the Root-window suddenly shows tabbing:
I tried to fix remove tabbing like:
let window = NSApplication.shared.mainWindow;
assert(window != nil);
window.tabbingMode = .disallowed;
window.toggleTabBar(nil);
Additionally, since maybe mainWindow was wrong, I tried same but for all Windows:
NotificationCenter.default.addObserver(
forName: NSWindow.didBecomeKeyNotification,
object: nil,
queue: .main
) { [weak self] note in
guard let newWindow = note.object as? NSWindow
else { return }
for var window in NSApplication.shared.windows {
// ...
}
}
-
This is kind of a duplicate of stackoverflow.com/questions/61175725/… but you want the opposite. See my answer to that question. You want to set the property to No instead of Yes.HangarRash– HangarRash2025年09月24日 21:44:41 +00:00Commented Sep 24, 2025 at 21:44
1 Answer 1
Seems UIApplicationSupportsTabbedSceneCollection is true by default in newer Xcode versions (if it's unset), and setting UIApplicationSupportsTabbedSceneCollection to false did fixed the issue.
(as suggested by hangarrash.)
Example:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<dict>
<key>UISceneConfigurations</key>
<dict/>
<key>UIApplicationSupportsMultipleScenes</key>
<true/>
<key>UIApplicationSupportsTabbedSceneCollection</key>
<false/>
</dict>
</dict>
</plist>
Comments
Explore related questions
See similar questions with these tags.