feat.airapp与融合桌面

This commit is contained in:
lincube
2026-05-14 19:44:01 +08:00
parent ada0cd4a3a
commit a5abda62dc
64 changed files with 3617 additions and 362 deletions

View File

@@ -0,0 +1,7 @@
# Checklist
- [x] Air APP window code does not call fused desktop bottom-most APIs.
- [x] Air APP window code does not set `Topmost = true`.
- [x] Fused desktop overlay and widget windows still use bottom-most APIs.
- [x] Fused desktop widget reload path refreshes desktop layer after showing.
- [ ] Manual Windows z-order verification with fused desktop and Air APP windows.

View File

@@ -0,0 +1,18 @@
# Window Layer Isolation
## Goal
Keep fused desktop component windows and Air APP windows in separate z-order roles.
## Behavior
- Fused desktop windows are desktop-surface windows. They may use `IWindowBottomMostService` and region passthrough, must stay attached to the Windows desktop icon host when supported, and must not cover ordinary apps.
- Air APP windows are ordinary application windows. They must not use the fused desktop bottom-most service, must not attach to the desktop icon host, and must not use global `Topmost` promotion.
- Re-showing or reloading fused desktop widgets refreshes their desktop layer after the window is visible.
- Air APP activation uses normal window activation; repeated-open foreground recovery remains owned by Launcher lifecycle activation.
## Out of Scope
- Changing Air APP lifecycle IPC.
- Changing whiteboard note sharing.
- Implementing third-party Air APP SDK behavior.

View File

@@ -0,0 +1,7 @@
# Tasks
- [x] Remove Air APP `Topmost` promotion from `AirAppWindow`.
- [x] Add explicit desktop-layer refresh for fused desktop widget windows.
- [x] Refresh fused desktop widget windows after show/reload.
- [x] Add window-role diagnostics for desktop-surface and Air APP windows.
- [x] Add static regression tests for window-layer isolation.