Commit Graph

37 Commits

Author SHA1 Message Date
Matthew Chen
6762ce8452 Update design of conversation list view cells. 2021-01-21 20:27:31 -03:00
Michelle Linington
49193889d2 Run precommit. Happy new year! 2021-01-05 14:28:32 -08:00
Michelle Linington
4b250e2e86 Fix bug around closing conversations 2021-01-05 14:28:28 -08:00
Matthew Chen
0210fc706c Simplify logging. 2020-12-22 21:32:20 -03:00
Matthew Chen
096ed67bb9 Convert font style convenience methods to properties. 2020-10-06 13:09:45 -03:00
Matthew Chen
66510bc18f DRY singleton accessors. 2020-09-17 21:13:14 -03:00
Nora Trapp
16c04e1610 Primary device transfer UI flows 2020-05-18 20:48:08 -07:00
Nora Trapp
1c29a121fa Remove Xcode 11 TODOs 2020-04-09 16:40:49 -03:00
Nora Trapp
aa8a782194 Update launch screen to use new logo and have dark mode variant 2020-03-04 10:00:54 -08:00
Michael Kirk
f198d9037d Merge tag '3.5.0.5' 2020-02-19 19:26:05 -07:00
Michael Kirk
5a081bd1c4 cvc init rather than configureWithThread 2020-02-17 16:26:32 -07:00
Michael Kirk
c62205cb75 remove sticker feature flags 2020-02-12 15:19:56 -07:00
Nora Trapp
977b470609 Fix crash when tapping notification (hopefully) 2020-02-06 14:41:30 -08:00
Nora Trapp
88ac10de05 Notification Service Extension
The NSE should only run on iOS 13.3 or later where the "filtering" entitlement
is available since our notifications don't contain any content and will often
not trigger any user visible content. We control this by setting the deployment
target to iOS 13.3.

This does not handle calls as it's currently impossible to wake the main app or
launch CallKit from within the NSE. Should we reach a point where we need to use
this extension in production the service will need to be able to differentiate
between call and non-call messages and deliver them as VOIP or Vanilla pushes as
appropriate. Alternatively, Apple may introduce some way for us to signal the
main app that a call message has been received.

This does not currently address the potential for the NSE and the main app to be
running and trying to process messages at the same time. As long as the
websocket is connected and the main app is processing messages in a timely
fashion the NSE will never be called since the service will not send pushes for
these messages, but censorship circumvention users and users where the websocket
is disconnected for some reason will legitimately receive pushes and we will
want to process those messages. How we will handle these cases requires further
thought since just terminating the NSE when the app launches is not sufficient.
We could potentially do something like terminate the NSE everytime the main app
runs the message fetcher job which should only happen if either the user
pulls-to-refresh on the conversation list or the websocket is actively connected
and receiving messsages. I plan to address this in a follow-up pull request.

Currently this code will not ever be run since the service never sends vanilla
push notifications. Eventually we will need to add logic into the main app to:
a) detect we're on iOS 13.3 or later and b) update a flag on the service telling
it to stop using VOIP pushes for non-call messages. The API for requesting this
from the service does not yet exist.
2020-01-30 11:44:41 -08:00
Michael Kirk
1448635cac Fix broken layout after becoming active in landscape photo capture
repro:

1. screen protection enabled
2. phone in portrait
3. tap camera first capture
4. rotate phone to landscape
5. drag down systems notifications view
6. return to app
7. capture screen has the wrong orientation
7. sometimes capture screen has the wrong dimensions (portrait length applied to landscape side)

The issue is related to our screenlock window juggling. We typically enforce
orientation based on the main windows rootViewController orientation mask.
Previously this was almost always an OWSNavigationController which would
delegate its calls to one to a nav delegate or one of it's children view controllers.

We lost this when we switched to having the ConversationSplitViewController be our rootViewController
2019-12-18 10:59:36 -08:00
Nora Trapp
801876d865 Fix Xcode 11 issues while not making Xcode 11 mandatory yet 2019-12-14 21:03:09 -08:00
Nora Trapp
6a2d58f65f PR Feedback 2019-11-21 12:05:00 -08:00
Nora Trapp
7c50935545 Only show sticker keyboard command if you have sticker send ability 2019-11-18 15:15:37 -08:00
Nora Trapp
e58b1f8e48 No more SignalsNavigationController 2019-11-15 18:49:53 -08:00
Nora Trapp
aa2ab7995b Add some protection against a conversation ever being shown in the master portion of the split view 2019-11-12 17:57:49 -08:00
Nora Trapp
9a974ebfdf Fix a bug where two conversations could be in the nav stack 2019-11-12 17:57:49 -08:00
Nora Trapp
79b837942d PR Feedback 2019-10-23 13:47:21 -07:00
Nora Trapp
fee51417d1 Update no conversation strings 2019-10-23 13:47:21 -07:00
Nora Trapp
8c21cd1a06 Conversation placeholder view style tweaks 2019-10-23 13:47:21 -07:00
Nora Trapp
852175e8a4 Style split view controller 2019-10-23 13:47:20 -07:00
Nora Trapp
eed93a3e6d Add placeholder content to conversation placeholder. 2019-10-23 13:46:31 -07:00
Nora Trapp
36992cf159 Always show the conversation list side bar in regular width 2019-10-23 13:46:31 -07:00
Nora Trapp
b88a99e047 Keyboard Shortcuts 2019-10-22 15:16:33 -07:00
Nora Trapp
1f0a822335 Merge branch 'release/2.45.0' 2019-10-21 12:39:10 -07:00
Nora Trapp
9148052cd6 Fix notification presentation over selected thread. 2019-10-21 10:49:19 -07:00
Matthew Chen
b3da578085 Merge tag '2.45.0.17' 2019-10-18 17:33:30 -03:00
Nora Trapp
9976d81230 Fix conversation presentation from notifications 2019-10-18 11:51:07 -07:00
Nora Trapp
473b88b497 Don't require ConversationViewController to maintain first responder status. 2019-10-17 11:41:58 -07:00
Nora Trapp
18d345ec06 PR Feedback 2019-10-08 20:10:02 -07:00
Nora Trapp
695bcbacf6 Don't show conversation as selected during interactive pop 2019-10-08 20:10:02 -07:00
Nora Trapp
1e78d13571 Ensure the input toolbar is visible after searching 2019-10-08 20:10:02 -07:00
Nora Trapp
90c562e94b Render conversation list + view in a side-by-side split on iPad 2019-10-08 20:10:01 -07:00