Repository navigation
v1.11.1
Fix Android dual-display startup in example/duo_screen.
- A primary launcher tap automatically opens the Viewer on display 0 and the Controller on the eligible secondary display.
- Launcher taps from either screen keep the Viewer task on the primary display.
- A normal companion Activity activates the secondary screen, replacing Presentation windows that OEM launchers can cover.
- The example owns one companion engine, waits for host detach before reattachment, preserves it across primary Dart hot restart, and releases it when the primary Activity finishes.
- Remove the example's
presentation_displaysdependency; no modified package cache or overlay permission is required.
Package APIs are unchanged in this patch. All 11 workspace packages retain the shared versioning policy. The Android host is example-local; the example remains unpublished on pub.dev. API levels below 26 use the single-screen fallback, and restricted external displays may reject Activity launches.
Validation:
- After integrating v1.11.0: 16 scoped Flutter tests and
dart analyze --fatal-infospassed. - CI: workspace formatting and analysis passed.
- Test: all packages and both examples passed.
- Release: candidate package analysis and tests passed.
- Publish: all 11 packages and GitHub Release completed.
- Native host: 20 lifecycle assertions and ARM64 debug build passed.
- AYANEO Pocket DS / Android 13: real primary and secondary launcher taps, background/resume, finish/reopen, category synchronization, and one targeted primary Dart restart passed.
Physical-device checks used the native host fix before integration with the v1.11.0 library changes. No APK or AAB is attached to this release.