2024 SwiftUI & UI Frameworks
WWDC24 · 11 min · SwiftUI & UI Frameworks
Tailor macOS windows with SwiftUI
Make your windows feel tailor-made for macOS. Fine-tune your app’s windows for focused purposes, ease of use, and to express functionality. Use SwiftUI to style window toolbars and backgrounds. Arrange your windows with precision, and make smart decisions about restoration and minimization.
Watch at developer.apple.com ↗Chapters
Code shown on screen · 9 snippets
Style Toolbars - Removing Title
.toolbar(removing: title) Style Toolbars - Removing Toolbar Background
.toolbarBackgroundVisibility(.hidden, for: .windowToolbar) Refine Behaviors - Adding Container Background
.containerBackground(.thickMaterial, for: .window) Refine Behaviors - Minimize Behavior
.windowMinimizeBehavior(.disabled) Refine Behaviors - Restoration Behavior
.restorationBehavior(.disabled) Adjust Placement - Default Placement
.defaultWindowPlacement { content, context in
var size = content.sizeThatFits(.unspecified)
let displayBounds = context.defaultDisplay.visibleRect
// modify size based on display bounds
return WindowPlacement(size: size)
} Adjust Placement - Ideal Placement
.windowIdealPlacement { content, context in
var size = content.sizeThatFits(.unspecified)
let displayBounds = context.defaultDisplay.visibleRect
// modify size based on display bounds
return WindowPlacement(size: size)
} Borderless Window
.windowStyle(.plain) Default Launch Behavior
.defaultLaunchBehavior(.presented) Resources
Related sessions
-
14 min -
13 min