Matthew Chen
ef8735e238
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
cf828dc1cf
Rework “verify code” view.
...
* Ensure all controls visible at all times, on all form factors, even with keyboard active.
* Improve focus (i.e. auto-focus textfield on arrival and after errors).
* Move to programmatic view creation and layout.
* Improve spacing and sizing.
* Replace “change number” button with “back” button.
* Submit code with return key.
* Improve copy for clarity.
// FREEBIE
8 years ago
Matthew Chen
97001018ae
Clean up prekey logic.
...
// FREEBIE
8 years ago
Matthew Chen
dea37b422b
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
06a775b41a
Improve the call status messages in conversation view.
...
// FREEBIE
8 years ago
Michael Kirk
3ab65a2c88
Prevent CallKit timeout when placing outgoing call
...
More fallout from the outbound call timeout which was causing all
CallKit calls not promptly answered to show "Call Failed"
Inserting the timeout exacerbated an existing issue: We can't wait for
long before choosing to fulfill/fail an action without CallKit falling
over and assuming the call failed.
We don't actually need to consider the case where we "fail to initiate"
the outgoing call. Instead we say it started "successfully, and if there
is an error, the existing promise error handling will fail the call at
that time.
// FREEBIE
8 years ago
Michael Kirk
6cdf13ea5f
Only time out the intended call
...
previously a followup call could get clobbered by the previous calls
timeout
// FREEBIE
8 years ago
Matthew Chen
192264e45b
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
adfbcc3e27
Update views that show contacts to reflect updates.
...
// FREEBIE
8 years ago
Michael Kirk
c087c56b0c
Fix call timeout
...
- Previously only incoming calls had their timeout promise fulfilled
- Previously we'd stop the timeout once ringing started, but we
should continue the timeout clock until the users are speaking.
// FREEBIE
8 years ago
Michael Kirk
2f6bf0e551
Code cleanup per CR
...
// FREEBIE
8 years ago
Michael Kirk
108720c2e7
End outgoing call with "No Answer" after 2 minutes
...
// FREEBIE
8 years ago
Michael Kirk
59059bc06c
Remove unused code
...
A couple of weird things left after the CallInitiator refactor:
removed unused segue
confusingly, call direction was *always* incoming, even for outgoing
calls. But we weren't using it anyway.
// FREEBIE
8 years ago
Michael Kirk
bf1ed9a277
Don't show callkit description pre-iOS10 ( #1722 )
...
// FREEBIE
8 years ago
Matthew Chen
734dec12e9
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
c43063e1d6
Add “interstitial call view” that is shown during lengthy “webrtc supported” check.
...
// FREEBIE
8 years ago
Matthew Chen
fc6035e3ff
Fix layout issue with inbox unread count on home view.
...
// FREEBIE
8 years ago
Michael Kirk
c621e3a000
[SSK] Missed calls increment unread counter
...
Avoid deadlock by moving unrelated DB work out of transaction
// FREEBIE
8 years ago
Michael Kirk
dc9ffe40e5
Better translation comments
...
in response to some confusion received from translators
// FREEBIE
8 years ago
Matthew Chen
ce9d9befb3
Prevent device lock during calls.
...
// FREEBIE
8 years ago
Matthew Chen
7eeac0c6f1
Fix bad frames in remote video.
...
// FREEBIE
8 years ago
Michael Kirk
b8711f9abc
contact can be nil for outgoing redphone call
...
Now that it's easier to start a thread with a non-contact recipient this
is more relevant.
// FREEBIE
8 years ago
Matthew Chen
9a08449d83
Add “signal” copy to call view.
...
// FREEBIE
8 years ago
Matthew Chen
217866c588
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
228b0e7dc6
Synchronize access to remoteVideoTrack.
...
// FREEBIE
8 years ago
Matthew Chen
ca76ec6f36
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
6f3a45ff8c
Avoid crashes when deallocating remote video tracks.
...
// FREEBIE
8 years ago
Matthew Chen
4ae786d0a2
Ignore CallService events related to obsolete calls.
...
// FREEBIE
8 years ago
Matthew Chen
d9bcd563b1
Avoid possible deadlock in PeerConnectionClient.
...
// FREEBIE
8 years ago
Matthew Chen
8f6483e9b4
Fix bug in the busy logic.
...
// FREEBIE
8 years ago
Matthew Chen
17fe3f66c0
Ensure audio service observation of call is always correctly wired up.
...
// FREEBIE
8 years ago
Matthew Chen
b883b5c547
Show hidden call view controls when app reactivates.
...
// FREEBIE
8 years ago
Michael Kirk
ef5c2c5416
Only show CallKit footer when showing the CallKit cell
...
// FREEBIE
8 years ago
Michael Kirk
90388ebd63
Coordinate "busy" state across redphone and webrtc
...
Previously a redphone call didn't know when the user was busy due to
webrtc and vice versa
// FREEBIE
8 years ago
Michael Kirk
c4a677a0bc
Fix: Second call fails
...
The callController exists after a first call fails due to busy. It is
not sufficient to check for it's existence.
// FREEBIE
8 years ago
Matthew Chen
e34d529620
Prevent system edge swipe gestures from showing/hiding call controls.
...
// FREEBIE
8 years ago
Matthew Chen
53cb36e537
Callkit option should only be visible when "Video Call (Beta)" is enabled.
...
// FREEBIE
8 years ago
Matthew Chen
05f123c5eb
Fix ongoing call check in OutboundCallInitiator.
...
// FREEBIE
8 years ago
Matthew Chen
d7e434eb03
Modify OutboundCallInitiator to abort if there is an ongoing RedPhone or WebRTC call.
...
// FREEBIE
8 years ago
Matthew Chen
d7138b6c83
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
660ff056e2
Modify handling of INStartVideoCallIntent and INStartAudioCallIntent if there already is an ongoing WebRTC or RedPhone call.
...
// FREEBIE
8 years ago
Matthew Chen
581ba937f4
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
52ba5c1325
Don’t assert when two devices call each other simultaneously.
...
// FREEBIE
8 years ago
Matthew Chen
6e390d40b7
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
732144c9ed
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
98caeb6a03
Be even more cautious when tearing down a PeerConnectionClient.
...
// FREEBIE
8 years ago
Michael Kirk
a328759f0d
Don't crash when incoming call on NonCallKit iOS10
...
Previous logic assumed "VoiceChat" mode, but when the ringer goes off,
we set "SoloAmbient" which is incompatible with that mode, causing
assertion failure.
// FREEBIE
8 years ago
Michael Kirk
43e7defa28
Stop any lingering audio session if provider resets.
...
I've never actually seen this happen, but I think it makes sense.
// FREEBIE
8 years ago
Matthew Chen
2216dc8d37
Revert "revert WebRTC related changes to AppAudioManager"
...
This reverts commit 6b4dedfefe
.
8 years ago
Matthew Chen
4f9ce0c0e2
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
f9c20a36a4
Clean up ahead of PR.
...
// FREEBIE
8 years ago
Matthew Chen
26b3be4ec5
Improve "new conversation" view.
...
* Add "search by phone number" to "no contacts" mode.
* Coordinate "invite flow", "invite by SMS" and "new conversation with non-contact" to ensure only one (at most) is shown.
* Show "new conversation with non-contact" IFF phone number is known to correspond to a signal account.
// FREEBIE
8 years ago
Matthew Chen
3ae85ce2d8
Add button to start a new conversation with non-contact based on phone number in search field.
...
// FREEBIE
8 years ago
Michael Kirk
a6b5555910
fixup, return nil, not 0
...
// FREEBIE
8 years ago
Michael Kirk
2a9aa4c852
users can opt out of CallKit
...
// FREEBIE
8 years ago
Michael Kirk
d8df4b9e35
Can receive calls while in settings
...
The existing presented settings (or fingerprint verification) modals
were preventing the display of the incoming call modal.
// FREEBIE
8 years ago
Matthew Chen
5687925513
Prevent simultaneous incoming and outgoing calls from leaving CallService in a bad state.
...
// FREEBIE
8 years ago
Matthew Chen
0893930485
Handle “busy signal” appropriately.
...
// FREEBIE
8 years ago
Michael Kirk
08425853cf
re-use shared call strings
...
// FREEBIE
8 years ago
Michael Kirk
a339f52564
Only touch mutable dict only main thread
...
* and make nonatomic since we're only assigning it in init
// FREEBIE
8 years ago
Michael Kirk
5d0d1b725b
Already on the main thread
...
* simplify code
* fix typo
// FREEBIE
8 years ago
Michael Kirk
6b4dedfefe
revert WebRTC related changes to AppAudioManager
...
Initially we were using AppAudioManager in our WebRTC calling
implementation to manage call related audio, but our differences from
how redphone uses the AppAudioManager diverged too much, so instead
we're instead using CallAudioManager.
reverting these changes lest we inadvertently break something re:
RedPhone.
// FREEBIE
8 years ago
Michael Kirk
b6f098bfa7
Log when receiving unknown call datachannel message
...
// FREEBIE
8 years ago
Matthew Chen
b868f07c33
Merge remote-tracking branch 'origin/feature/webrtc' into release/2.7.0
8 years ago
Matthew Chen
36356fbff6
Avoid crashes when closing peer connection client.
...
// FREEBIE
8 years ago
Matthew Chen
dacb2840f2
Avoid crashes when closing peer connection client.
...
// FREEBIE
8 years ago
Matthew Chen
f81feca2d6
Avoid crashes when closing peer connection client.
...
// FREEBIE
8 years ago
Michael Kirk
cd36123bf1
rename method to better reflect how its used
...
// FREEBIE
8 years ago
Michael Kirk
7e825648ef
Show alert when trying to call a non-signal contact from Contacts.
...
// FREEBIE
8 years ago
Michael Kirk
b35c20a06b
Don't handle intents pre iOS10.
...
// FREEBIE
8 years ago
Michael Kirk
17b89f44aa
share global callUIAdapter, outboundCallInitiator
...
// FREEBIE
8 years ago
Michael Kirk
bbfd9ba74d
Place Signal/Redphone calls from system contacts
...
// FREEBIE
8 years ago
Matthew Chen
535770a92e
Avoid crashes when closing peer connection client.
...
// FREEBIE
8 years ago
Matthew Chen
4dec1e2ded
Avoid crashes when closing peer connection client.
...
// FREEBIE
8 years ago
Matthew Chen
d4ba4c446b
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
b415b6142f
Respond to CR, mainly by fixing broken tests.
...
// FREEBIE
8 years ago
Matthew Chen
49bb3d942d
Clean up ahead of PR.
...
// FREEBIE
8 years ago
Matthew Chen
d294557bdd
Rework concurrency in the signaling logic.
...
// FREEBIE
8 years ago
Matthew Chen
dd374afdaa
Rework concurrency in the signaling logic.
...
// FREEBIE
8 years ago
Matthew Chen
d6c849eab3
Revert whitespace changes.
...
// FREEBIE
8 years ago
Matthew Chen
af289145b5
Rework concurrency in the signaling logic.
...
// FREEBIE
8 years ago
Matthew Chen
d0b2aaac27
Specify AVAudioSession modes for calls.
...
// FREEBIE
8 years ago
Michael Kirk
f1d8434868
More space for non-callkit incoming call buttons ( #1660 )
...
* More space for non-callkit incoming call buttons
The "decline" and "accept" were too close together. Added a spacer, the
same size as an extra button between the two.
* Tweak spacing in call view rows.
// FREEBIE
8 years ago
Matthew Chen
8454c7dc2f
Log reconnect events as such.
...
// FREEBIE
8 years ago
Matthew Chen
5dd4655672
Ensure audio state when call connects.
...
// FREEBIE
8 years ago
Matthew Chen
b5aab60985
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
e947276f73
Add drop shadows to text in call view.
...
// FREEBIE
8 years ago
Matthew Chen
40b3d038db
Disable local video in background.
...
// FREEBIE
8 years ago
Michael Kirk
141a1bd176
Disable half-working call-holding feature all together
...
consolidated feature-disable logic for incoming/outgoing calls to make
it easier to document, and less likely to break when we *do* implement
CallHolding
// FREEBIE
8 years ago
Michael Kirk
969b73cad8
Implement call holding (call swapping still broken).
...
- Alice calls Bob on Signal and they start talking
- Charlie calls Alice on Not-Signal.
- Alice chooses to "Hold & Accept" putting Bob on Hold while the call with
Charlie connects.
- If Alice ends the call with Charlie, we're back in Signal-iOS and
talking to Bob, no problem.
- However, if, before ending the call with Charlie, Alice tries to swap
*back* to bob, bob won't hear any audio in the callkit screen. Alice
has to switch back to the Signal screen before the audio is transmitted.
// FREEBIE
8 years ago
Michael Kirk
e425d351c7
WIP: incoming non-signal call while in outgoing signal call
...
Marking Signal-Call as started, changes the incoming call screen for
subsequent calls to show "Accept & End", "Send to VoiceMail" and "Accept
& Hold" instead of just "Accept" & "Decline"
Though - we don't support Holding. What we really want to see is just
"Accept & End" and "Decline | Send to Voicemail"
// FREEBIE
8 years ago
Matthew Chen
c8e5884087
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
9a0a7bb6b1
Show alert when user tries to activate local video without camera permissions.
...
// FREEBIE
8 years ago
Matthew Chen
da53368bc2
Show alert when user tries to activate local video without camera permissions.
...
// FREEBIE
8 years ago
Matthew Chen
2ef80e569d
Improve thread safety in call ui adapter and adatapees.
...
// FREEBIE
8 years ago
Matthew Chen
50addfa4e8
Remove camera constraints.
...
// FREEBIE
8 years ago
Matthew Chen
6ce33381a8
Prevent screen from dimming or device from locking during video call.
...
// FREEBIE
8 years ago
Matthew Chen
40d7944120
Respond to CR.
...
// FREEBIE
8 years ago
Matthew Chen
9e34f87f0d
Fix issues around how remote/local video states affect call view.
...
// FREEBIE
8 years ago
Matthew Chen
699b364ec7
Show/hide call view controls in remote video mode if user taps screen.
...
// FREEBIE
8 years ago