refactor: 移除指引窗口的动画效果以简化代码
This commit is contained in:
@@ -260,11 +260,7 @@ struct MenuContent: View {
|
||||
window.contentView = NSHostingView(rootView: GuideView())
|
||||
window.center()
|
||||
|
||||
// 设置初始窗口状态(透明且缩放)
|
||||
window.alphaValue = 0.0
|
||||
window.setFrameOrigin(window.frame.origin)
|
||||
|
||||
// 显示窗口(不可见状态)
|
||||
// 显示窗口
|
||||
window.makeKeyAndOrderFront(nil)
|
||||
|
||||
// 记录已显示指引
|
||||
@@ -272,24 +268,6 @@ struct MenuContent: View {
|
||||
|
||||
// 保存窗口引用
|
||||
guideWindow = window
|
||||
|
||||
// 添加窗口关闭通知监听
|
||||
NotificationCenter.default.addObserver(
|
||||
forName: NSWindow.willCloseNotification,
|
||||
object: window,
|
||||
queue: nil
|
||||
) { _ in
|
||||
// 窗口关闭时清除引用
|
||||
guideWindow = nil
|
||||
}
|
||||
|
||||
// 执行打开动画
|
||||
NSAnimationContext.runAnimationGroup {
|
||||
context in
|
||||
context.duration = 0.5
|
||||
context.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut)
|
||||
window.animator().alphaValue = 1.0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -437,17 +415,8 @@ struct GuideView: View {
|
||||
|
||||
// 关闭按钮
|
||||
Button(action: {
|
||||
// 关闭指引界面,添加关闭动画
|
||||
if let window = NSApp.keyWindow {
|
||||
NSAnimationContext.runAnimationGroup {
|
||||
context in
|
||||
context.duration = 0.3
|
||||
context.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut)
|
||||
window.animator().alphaValue = 0.0
|
||||
} completionHandler: {
|
||||
window.close()
|
||||
}
|
||||
}
|
||||
// 关闭指引界面
|
||||
NSApp.keyWindow?.close()
|
||||
}) {
|
||||
Text("开始使用")
|
||||
.font(.headline)
|
||||
|
||||
Reference in New Issue
Block a user