-
-
Notifications
You must be signed in to change notification settings - Fork 67
Add window behavior modifiers #313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
stackotter
merged 16 commits into
moreSwift:main
from
kaascevich:window-behavior-modifiers
Jan 12, 2026
Merged
Changes from all commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
969279c
implement `windowDismissBehavior(_:)` and `windowMinimizeBehavior(_:)`
kaascevich cb98133
merge `setClosability(ofWindow:to)` and `setMinimizability(ofWindow:t…
kaascevich 821a4f7
Merge branch 'stackotter:main' into window-behavior-modifiers
kaascevich a97d6ca
calculate and apply maximum window size for `windowResizability(_:)`,…
kaascevich 75868aa
merge `setMinimumSize(ofWindow:to:)` and `setMaximumSize(ofWindow:to:…
kaascevich d5245b9
fix `WindowGroupNode` not having been updated to use the merged method
kaascevich 17f4c4a
fix GtkBackend crash (and probably other things too)
kaascevich 0e208fd
Merge branch 'stackotter:main' into window-behavior-modifiers
kaascevich 5ee4a04
let people know that `WindowResizability.contentMinSize` doesn't work…
kaascevich 1f55571
remove no-op `missing(_:)` function and use TODOs / logger warnings i…
kaascevich 82e072a
Merge branch 'main' into window-behavior-modifiers
kaascevich 3c465b5
rename `windowMinimizeBehavior(_:)` to `preferredWindowMinimizeBehavi…
kaascevich abeef16
documentation fixups and whatnot
kaascevich beb1e9a
move `windowResizabibility` into the environment (fixes #320)
kaascevich 1c53082
Merge branch 'main' into window-behavior-modifiers
kaascevich 5f1fffb
doc and logging fixups
kaascevich File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
12 changes: 12 additions & 0 deletions
12
Sources/SwiftCrossUI/Scenes/Modifiers/WindowResizabilityModifier.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| extension Scene { | ||
| /// Sets the resizability of windows controlled by this scene. | ||
| /// | ||
| /// This modifier controls how SwiftCrossUI determines the bounds within which | ||
| /// windows can be resized, whereas ``View/windowResizeBehavior(_:)`` controls | ||
| /// whether the user can resize the enclosing window. The only time this | ||
| /// modifier can disable interactive resizing is when a window's content has | ||
| /// a fixed size and `resizability` is ``WindowResizability/contentSize``. | ||
| public func windowResizability(_ resizability: WindowResizability) -> some Scene { | ||
| environment(\.windowResizability, resizability) | ||
| } | ||
| } |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.