#5 fix camera capture preview after shooting
iOS CI / Build and Test SwiftUI App (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build Unsigned iOS IPA (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build macOS ZIP (push) Canceled after 0s

- Dismiss the camera fullScreenCover through the SwiftUI binding
  synchronously in the picker delegate before background file
  preparation, so UIImagePickerController no longer dismisses itself
  and desynchronizes the presentation state that the preview sheet
  waits on.
- Keep the archive-sync suspension reserved across the dismissal and
  surface an explicit error when the captured file fails to prepare.
- Add verify.sh invariants for the camera dismissal flow.
This commit is contained in:
wt
2026-08-29 02:29:29 +07:00
parent b54113f0e4
commit 5790f9b2f6
3 changed files with 44 additions and 6 deletions
+8
View File
@@ -336,6 +336,14 @@ grep -q 'let items = pickedMediaItems' Sources/Shared/UI/ChatView.swift || {
echo "Gallery staging must run on picker dismissal only"
exit 1
}
grep -q 'onDismissRequest' Sources/Shared/UI/SystemPhotoCameraView.swift || {
echo "The camera picker must request dismissal before background preparation"
exit 1
}
grep -q 'onDismissRequest' Sources/Shared/UI/ChatView.swift || {
echo "The camera cover must dismiss through the SwiftUI binding"
exit 1
}
grep -q 'ArchiveSyncCursorPolicy.requestPosition' Sources/Shared/XMPP/XMPPService.swift || {
echo "MAM reconnects must prefer the durable archive UID over timestamps"
exit 1