修复窗口闪烁

This commit is contained in:
梦凌汐 2025-07-09 19:08:13 +08:00
parent 3ec54d41f1
commit 4fade2c4e8

View File

@ -291,27 +291,24 @@ class _WindowManagerState extends State<WindowManager> {
children: [ children: [
Expanded( Expanded(
child: Stack( child: Stack(
children: _windows.map((data) { children: _windows.where((w) => !w.isMinimized).map((data) {
final bool isActive = data.id == activeWindowId; final bool isActive = data.id == activeWindowId;
return Offstage( return DraggableWindow(
offstage: data.isMinimized, key: ValueKey(data.id),
child: DraggableWindow( id: data.id,
key: ValueKey(data.id), initialPosition: data.position,
id: data.id, initialSize: data.size,
initialPosition: data.position, title: data.title,
initialSize: data.size, icon: data.icon,
title: data.title, isActive: isActive,
icon: data.icon, isMaximized: data.isMaximized,
isActive: isActive, onBringToFront: _bringToFront,
isMaximized: data.isMaximized, onMinimize: _minimizeWindow,
onBringToFront: _bringToFront, onClose: _removeWindow,
onMinimize: _minimizeWindow, onMove: _updateWindowPosition,
onClose: _removeWindow, onResize: _updateWindowSize,
onMove: _updateWindowPosition, onMaximizeChanged: _updateWindowMaximizeState,
onResize: _updateWindowSize, child: data.child,
onMaximizeChanged: _updateWindowMaximizeState,
child: data.child,
),
); );
}).toList(), }).toList(),
), ),