Commit graph

66 commits

Author SHA1 Message Date
Michael Kirk ac3bbe26ba rename CallNotificationsAdapter->NotificationsAdapter 2019-02-01 17:44:13 -07:00
Michael Kirk 24f97f1229 compiler warning: discard result explicitly 2018-11-12 09:54:42 -06:00
Michael Kirk 3b4188f34b hoist audio session singleton to Environment 2018-10-24 07:46:25 -06:00
Matthew Chen df7acfeed3 Simplify OWSPreferences access. 2018-09-07 16:28:21 -04:00
Matthew Chen cc117b385c Modify environment accessors to use our 'shared' convention. 2018-09-07 16:20:59 -04:00
Matthew Chen 3a12446be8 Modify environment accessors to use our 'shared' convention. 2018-09-07 16:20:41 -04:00
Matthew Chen 5b50e81b4f Rename fail macros in Swift. 2018-08-27 10:27:48 -04:00
Matthew Chen cf6f3841a8 Apply new Swift logging. 2018-08-27 10:02:28 -04:00
Michael Kirk 82e559d11b Use swift macros for main thread assert 2018-08-23 10:29:49 -06:00
Matthew Chen 26001e49d1 Unify log tags. 2018-08-15 10:24:29 -04:00
Michael Kirk 61156656aa Only PCC needs to know about the local RTCTrack 2018-06-25 15:21:27 -06:00
Michael Kirk 0cd1cb80cc Compiling, but video sending not working. 2018-06-25 15:03:25 -06:00
Michael Kirk 064035f3f4 WIP M67 - plumb through AVCaptureSession
TODO:

-[x] plumb through AVCaptureSession
-[] get AVCaptureSession from PeerConnectionClient
-[] RTCDataChannel not unwrapped
-[] no member avFoundationSource
-[] no member "back camera"
2018-06-25 15:03:25 -06:00
Matthew Chen ed19949d60 Respond to CR. 2018-06-01 09:43:19 -04:00
Matthew Chen e949d81568 Fix more call state edge cases. 2018-06-01 09:43:19 -04:00
Matthew Chen b2b62880c0 Migrate to Swift 4. 2018-05-30 15:05:02 -04:00
Matthew Chen 77b72b6b06 Migrate to Swift 4. 2018-05-30 15:05:02 -04:00
Matthew Chen 91d54360ba Add contact view. 2018-05-03 14:09:54 -04:00
Michael Kirk e5b535ccf1 Implement camera direction toggle
// FREEBIE
2018-04-25 10:19:59 -04:00
Matthew Chen 7345ab2e4e Add window manager. Move call view to a separate window. 2018-04-25 09:56:53 -04:00
Matthew Chen 6caa5b87b6 Add more asserts around thread in SAE. 2018-04-13 14:59:38 -04:00
Michael Kirk 658b8c3223 CR: typos and doc changes
// FREEBIE
2018-02-26 15:19:52 -05:00
Michael Kirk 5959cdf070 Simplify call privacy settings
We've long allowed users to configure what shows up in message
notifications:

- name: content (by default)
- just name (no content)
- generic notification (no name nor content)

Now we're dual purposing that setting to apply to calls. If someone
doesn't want to show names in the message notifications, presumably also
don't want that name showing up in the call log.

Also, since the earlier CallKit/iCloud issues had been addressed before
iOS11, we upgrade all iOS11 users to the more intuitive CallKit
interface.

Also: introduce "use system call logs" toggle when available. It will be
enabled by default, but we disable it for legacy users who'd explicitly
opted *out* of CallKit.

// FREEBIE
2018-02-26 15:19:52 -05:00
Michael Kirk 4dd1c7813a Instrument calls to ensure audio session is maintained
// FREEBIE
2018-02-16 14:00:15 -08:00
Matthew Chen 7a1e47cd26 Add asserts around Swift singletons. 2017-12-07 13:57:45 -05:00
Matthew Chen b4e8df79da Migrate environment to SignalMessaging. 2017-12-05 10:29:29 -05:00
Matthew Chen 8cc33b3de1 Refine loading view of share extension. 2017-12-01 10:48:18 -05:00
Michael Kirk a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
2017-11-29 13:58:27 -08:00
Matthew Chen 3367292ba0 Merge branch 'hotfix/2.16.1' 2017-09-19 17:25:24 -04:00
Matthew Chen b6d782046a Normalize conversation presentation logic.
// FREEBIE
2017-09-18 16:08:18 -04:00
Michael Kirk c4139b0f3e Callkit ringer uses profile name
Also presents formatted number instead of e164

// FREEBIE
2017-09-11 10:01:21 -04:00
Michael Kirk 81d7f28253 Timer to ensure call screen shown
// FREEBIE
2017-08-02 19:13:46 -04:00
Matthew Chen a9ce1cde2f Simplify CallViewController.
// FREEBIE
2017-07-19 09:47:55 -04:00
Michael Kirk 03f1bbca62 Move state from CallViewController -> Call
I think whenever reasonable we prefer to consodlidate state on the call

// FREEBIE
2017-07-13 17:08:42 -04:00
Michael Kirk 9bd68ed490 WIP: bluetooth shows audio route button instead of speakerphone
// FREEBIE

TODO

NEED
-[ ] icon in route picker
-[ ] commit cleanup

NICE
-[ ] present action sheet automatically when making outgoing bluetooth call
-[ ] left align icons
-[ ] audio is paused when switching between video mode (maybe existing behavior, not sure)
-[ ] Copy: iPhone/iPad/iPod instead of "iPhone Microphone"

DONE
-[x] remove "receiver" from options while in video mode
-[x] show available audio routes
-[x] select available audio routes
-[x] notification if availabe inputs change so we can update call screen
     mid call with available BT route
-[x] include speakerphone in choices
-[x] Enabled button shows active speakerphone. Should still show
     bluetooth picker.
-[x] toggle back and forth between audio devices
-[x] hide audio route button in video mode if no BT available
-[x] Fixed: When on speakerphone - switching to video mode goes back to bluetooth.
-[x] Fixed: When switching to video w/ bluetooth device connected there is no
     audio picker.
-[x] respect speakerphone/BT selection when in or toggling to/from video
-[x] do not hide audio route button when in video mode and bluetooth
     connected
-[x] Show which is currently selected audio route
-[x] switching to speakerphone no longer works
-[x] switching *back* to bluetooth no longer works
-[x] add proper bluetooth button for audio calls
-[x] add proper bluetooth button for video calls
2017-07-13 17:08:41 -04:00
Matthew Chen d639d6557e Add owsFail free function for swift.
// FREEBIE
2017-07-11 16:20:20 -04:00
Michael Kirk 8abde1dff8 Non-Callkit adapter plays audio from notification when app is in
background

// FREEBIE
2017-07-05 11:53:16 -05:00
Michael Kirk 39563ab8c2 present from signalsViewController so users don't get confused by being
dropped into a different thread when the call is over.

e.g. chatting with Alice, but Bob calls. When I end the call with Bob It
would be too easy to fire off a message assuming it's going to Bob.

// FREEBIE
2017-06-20 16:41:07 -04:00
Michael Kirk 36c09aeb84 cleanup ahead of PR
// FREEBIE
2017-06-20 16:24:59 -04:00
Michael Kirk ff93732ed7 WIP: fix call from contacts when signal hasn't been launched yet 2017-06-20 16:17:37 -04:00
Michael Kirk c8d547a08f Only allow callback for identities that were not previously verified
// FREEBIE
2017-06-07 10:29:45 -04:00
Michael Kirk 1127553041 restore "confirm and callback" functionality
// FREEBIE
2017-06-07 10:29:01 -04:00
Michael Kirk 130aa132a0 Reject incoming calls from an unseen changed identity
// FREEBIE
2017-06-01 12:59:34 -07:00
Matthew Chen 0f85284b82 Fix speakerphone vs. WebRTC AND Fix CallService edge cases.
// FREEBIE
2017-05-03 09:34:39 -04:00
Matthew Chen 17fe3f66c0 Ensure audio service observation of call is always correctly wired up.
// FREEBIE
2017-02-03 15:47:33 -05:00
Matthew Chen 581ba937f4 Respond to CR.
// FREEBIE
2017-02-03 11:31:31 -05:00
Matthew Chen 52ba5c1325 Don’t assert when two devices call each other simultaneously.
// FREEBIE
2017-02-03 11:30:47 -05:00
Michael Kirk 2a9aa4c852 users can opt out of CallKit
// FREEBIE
2017-02-02 19:09:37 -05:00
Matthew Chen 0893930485 Handle “busy signal” appropriately.
// FREEBIE
2017-02-02 18:19:38 -05:00
Michael Kirk cd36123bf1 rename method to better reflect how its used
// FREEBIE
2017-02-01 19:50:21 -05:00