Chuyển đến nội dung chính

Bài đăng

Hiển thị các bài đăng có nhãn Canonical

API multi-window desktop: popup, dialog và windowHandle

App desktop cần nhiều surface: context menu, palette công cụ, inspector tách rời. API windowing experimental của Flutter — được Canonical đẩy nhanh với vai trò Strategic Steward cho Flutter Desktop — là đường đi. Đã landing từ 3.44 → 3.47 Cửa sổ tooltip và dialog trên Linux/macOS/Windows. Popup trên Linux và Windows (macOS có sớm hơn). showDialog có thể tạo cửa sổ con thật trên nền tảng hỗ trợ windowing. Cửa sổ theo nội dung và windowHandle ( HWND / NSWindow / GtkWindow ) cho tích hợp native nâng cao. Khi nào dùng Nhu cầu Hướng API Context menu / palette Popup window Tool tách rời Regular window + test multi-window Docking native windowHandle + code platform Cảnh báo trạng thái Các API này ở main-channel / experimental . Đừng ship multi-window production làm UX duy nhất khi chưa có fallback. Theo dõi example multiple_windows và file issue vào embedder. Mẹo thực tế Thiết kế feature sao cho workflow chính vẫn chạy được single-window. Multi-wind...

Desktop multi-window APIs: popups, dialogs, and windowHandle

Desktop apps need more than one surface: context menus, tool palettes, detached inspectors. Flutter’s experimental windowing APIs , accelerated by Canonical as Strategic Steward for Flutter Desktop, are how you get there. What landed through 3.44 → 3.47 Tooltip and dialog windows across Linux/macOS/Windows. Popup windows on Linux and Windows (macOS earlier). showDialog can create a real child window on platforms that support windowing. Content-sized windows and windowHandle ( HWND / NSWindow / GtkWindow ) for advanced native integration. When to use it Need API direction Context menu / palette Popup window Detached tool Regular window + multi-window tests Native docking windowHandle + platform code Status warning These APIs have been main-channel / experimental . Do not ship production multi-window as your only UX path without a fallback. Track the multiple_windows example and file issues against the embedders. Practical tip Design your feature...