adwaita-swift/Tests/OverlayWindowDemo.swift
david-swift d5b43344a1 Support window overlays for a certain instance
Specify the parent window in the `addWindow(_:parent:)` function
2023-12-07 21:48:31 +01:00

55 lines
1.1 KiB
Swift

//
// OverlayWindowDemo.swift
// Adwaita
//
// Created by david-swift on 09.11.23.
//
// swiftlint:disable missing_docs implicitly_unwrapped_optional no_magic_numbers
import Adwaita
struct OverlayWindowDemo: View {
var app: GTUIApp!
var window: GTUIApplicationWindow
var view: Body {
VStack {
Button("Show Window") {
app.addWindow("overlay", parent: window)
}
.style("pill")
.frame(maxSize: 100)
.padding()
}
}
struct WindowContent: View {
var window: GTUIWindow
var view: Body {
VStack {
Button("Close Window") {
window.close()
}
.style("pill")
.padding()
.frame(maxSize: 100)
}
.valign(.center)
.topToolbar {
HeaderBar.empty()
}
.onAppear {
window.setDefaultSize(width: 300, height: 200)
}
}
}
}
// swiftlint:enable missing_docs implicitly_unwrapped_optional no_magic_numbers