- sync speakerphone state manipulated from system call screen
- Revert audio session after call failure, ensures media plays out of
speaker after placing a failing call.
- Replace notification with delegate pattern since we're already using
delegate pattern here.
- Fixes voiceover accessibility after voice memo
- Avoid audio blip after pressing hangup
- Rename CallAudioSession -> OWSAudioSession
Going to start using it for other non-call things since we want to
gather all our audio session concerns.
- Resume background audio when done playing video
- Extract OWSVideoPlayer which ensures audio is in proper state before
playback
- Move recording session logic to shared OWSAudioSession
- Deactivate audio session when complete
// FREEBIE
- avoid double-submit by disabling after hitting send.
- Animate SAE dismissal as modal
Requires hiding the load view
- attachment is centered in screen
- add gradient to ensure controls are visible
- Fix clamp constraints - I think this was a typo
Otherwise we couldn't show an image which was 1" wide by 2" tall
- set max zoom, hide scroll indicators
- use media view
- slower panning feels right
- white send button
- can share GIF, static, and sort of video...
- Play button for attachment approval
- move to image assets so we can use it in SAE
- slightly larger button for full-screen approval view
- don't launch redundant fullscreen UI for images when in approval view
- fix scrollOffset in AttachmentApproval
- consolidate view initialization logic in loadView and fix white background
- CR: more legible arithmetic
// FREEBIE
Usinig the new ShareViewDelegate to dismiss the share extension, might
have broken the "import with signal" functionality. But because we
want to remove it anyway, I've done that now, rather than fix it up.
// FREEBIE
Shows the conversation picker, and sends the attachment to that
conversation.
There's still a lot TODO
-[ ] resolve JSQ dependency
-[ ] properly wait for app to load
-[ ] dismiss share extension after send is complete
-[ ] support non jpeg file types
-[ ] Fix device sleep manager
// FREEBIE