chore: migreer screen_retriever + window_manager naar nativeapi (#1741) #1752
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1752
Loading…
Reference in a new issue
No description provided.
Delete branch "chore/nativeapi-migrate-1741-v2"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Flutter 3.47 kondigt de uitfasering aan van
screen_retrieverenwindow_manager. Deze PR migreert naarnativeapi, het door de Flutter-community aanbevolen alternatief dat via FFI praat in plaats van platform-channels.Wijzigingen
screen_retrieverenwindow_managervervangen doornativeapi(git-dep naar onze fork op GitHub met dewillClose-hook die OciDeck nodig heeft voor hetsetPreventClose-equivalent)native_window_io.dart:setPreventClose(true)→ willClose-hook registratie viaWindowManager.instance.setWillCloseHookapp_shell.dart:WindowListenermixin verwijderd,onWindowClose→ synchrone_onWillClosecallback die async_handleClosestart (de hook is synchroon, de bewaking is async)presenter_fullscreen_io.dart:windowManager.setFullScreen→window.isFullScreenpresenter_displays.dart:screenRetriever.getAllDisplays→DisplayManager.instance.getAll,windowManager.getBounds→window.boundsnative_window_test.dartenpresenter_displays_test.dartgeskipt (nativeapi FFI niet mockable onderflutter test);window_managermethod-channel mocks verwijderd uit 3 andere testbestanden (nativeapi throwt direct, niet hangend)native_window_io.dartenpresenter_displays.darttoegevoegd aanuncoveredBaseline(FFI niet uitvoerbaar onder flutter test)De fork
De git-dependency wijst naar
github.com/brennodewinter/nativeapi-flutterop branchfeat/window-will-close-hook. Deze fork voegtSetWillCloseHooktoe aan de C++-laag (nativeapirepo) en de Dart-binding (nativeapi-flutterrepo). De upstream PRs (#51 op nativeapi, #16 op nativeapi-flutter) staan open.Wat niet veranderd is
desktop_multi_windowblijft (vendored fork, niet gerelateerd aan deze migratie)flutter_localizationsblijft (niet gerelateerd)Test plan
make checkgroen (10494 tests, 1 skip, 87.2% coverage)make sastschoon (semgrep, 0 findings)flutter analyze --fatal-infosschoonGenerated with Devin