Commit Graph

2107 Commits

Author SHA1 Message Date
Michelle Linington
a660a81d0f IOS-668: Reorganize how ContactsUpdater interacts with CDS operations
- Removes ContactsUpdater singleton. It wasn't really tracking much
  state anyway
- Introduces ContactDiscoveryTask. This creates a
  ContactDiscoveryOperation (modern or legacy) and updates the
  SignalRecipients database on completion. Returns a promise.
- Begin migrating away from operation queues

PromiseKit is weird about priority propogation, so this shouldn't be
used yet. Since all then closures are asynced, priorities don't
propogate down to underlying queues. This means the a
ContactDiscoveryTask on the main queue will not boost the priority on
the ModernContactDiscoverOperation's owned operation queue
2020-08-06 12:55:32 -07:00
Matthew Chen
3255fc3dfe Add pending members. 2020-08-06 11:23:16 -03:00
Matthew Chen
1b038b60fc Respond to CR. 2020-08-05 14:28:15 -03:00
Nora Trapp
52583dea0e Incorporate Michelle's feedback 2020-08-05 10:21:49 -07:00
Nora Trapp
fde4fd87c1 Fix extraneous rendering of scroll down button when at the bottom 2020-08-05 10:21:49 -07:00
Nora Trapp
d6ad7868a3 PR Feedback 2020-08-04 14:18:10 -07:00
Nora Trapp
737f0e4861 Design feedback 2020-08-04 14:09:07 -07:00
Nora Trapp
01bcdd0e84 Add scroll to mention button 2020-08-04 14:09:06 -07:00
Nora Trapp
9fc6c21374 Allow selection mentions using keyboard commands 2020-08-04 14:09:06 -07:00
Nora Trapp
340f8366d9 Allow tapping mentions in message bubbles 2020-08-04 14:09:06 -07:00
Nora Trapp
a39750113f Full suppoort for ention send + receive 2020-08-04 14:08:30 -07:00
Nora Trapp
4696a4d993 Mention sending 2020-08-04 14:08:30 -07:00
Nora Trapp
74e5d719bb Add support for mentions to drafts 2020-08-04 14:08:29 -07:00
Matthew Chen
6d09545892 Resumable attachment download. 2020-08-01 12:18:13 -03:00
Matthew Chen
28b43544b3 Implement attachment upload v3. 2020-08-01 12:06:57 -03:00
Nora Trapp
165abc0f88 PR Feedback 2020-07-30 11:23:45 -07:00
Nora Trapp
90e1d54ce3 Add mention picker support to attachment flows 2020-07-30 11:23:45 -07:00
Nora Trapp
e4e23aef55 Mentions Picker 2020-07-30 11:23:45 -07:00
Nora Trapp
98a3cbdd10 Re-style mentions 2020-07-30 11:23:44 -07:00
Nora Trapp
65ed060639 Refine MentionTextView, add cut/copy/paste support 2020-07-27 14:30:52 -07:00
Nora Trapp
ff17567a6b ConversationInputTextView subclasses MentionTextView 2020-07-27 14:30:52 -07:00
Matthew Chen
b7be96304f Respond to CR. 2020-07-24 17:45:43 -03:00
Matthew Chen
b9bbaf9d6a Ensure message request is dismissed if necessary. 2020-07-24 17:31:17 -03:00
Matthew Chen
03a6cbd45b Use block mode when blocking threads. 2020-07-24 17:31:17 -03:00
Matthew Chen
b96c77f698 Rework message requests for v2 groups. 2020-07-24 17:31:17 -03:00
Matthew Chen
e4a00f5584 Rework message requests for v2 groups. 2020-07-24 17:31:17 -03:00
Nora Trapp
cbb7504abd Fix rare crash when rendering profile name changes 2020-07-17 11:58:12 -07:00
Nora Trapp
463e0266a4 PR Feedback 2020-07-15 18:41:29 -07:00
Nora Trapp
c7eb281d38 Render profile name changes in conversation 2020-07-15 18:41:14 -07:00
Matthew Chen
5ddf65262d Clean up message bubble measurement. 2020-07-08 08:14:29 -07:00
Nora Trapp
29baae108f Fix swipe-to-reply on new borderless messages 2020-07-08 08:13:48 -07:00
Nora Trapp
8d9a692342 Adjust jumbomoji sizing 2020-07-08 08:13:39 -07:00
Nora Trapp
f1fe3dbdc6 Fix borderless jubomoji with quotes, etc. 2020-07-08 08:13:39 -07:00
Matthew Chen
f070a0e479 Clean up naming around profile fetches. 2020-07-08 11:10:37 -03:00
Nora Trapp
a84f3af528 Jumbomoji messages should render without bubble 2020-07-06 16:06:02 -07:00
Nora Trapp
05d6b57616 Render memoji, bitmoji, etc. as stickers 2020-07-06 11:43:35 -07:00
Michelle Linington
2bbdb14cdb Adopting some PR feedback:
- Remove explicit "self."
- Add comment going into detail about the UIKit behavior we're working
  around
- Remove force-unwrap from assert. It's safe, but eyebrow raising

Also fixed a minor bug I found:
percentOfIndexPathVisibleAboveBottom is explicitly checking "above the
bottom". Rect intersection is pretty, but if a single cell extended
above the top and bottom margins it would return an incorrect value.
I'm not sure if this is possible, but it's still incorrect.

Instead, this mostly reverts to the original behavior, comparing the top
of the cell frame with the bottom of the content frame. It leverages the
new function to compute the visibleContentRect to do so.
2020-07-01 09:41:31 -07:00
Michelle Linington
c9e1b3dedb Fix compilation failure due to rebase
s/lastSortId/lastSortIdInLoadedWindow
2020-07-01 09:41:31 -07:00
Michelle Linington
753aabb829 IOS-605: ScrollDownButton continues to remain visible after jumping to bottom
This fixes a bug where the ScrollDownButton would continue to persist
even after jumping to the bottom.

This is due to undefined ordering in UIKit with how it handles
scrollViewDidScroll: and updating the collectionView's visible index
paths. We'd receive the final scrollViewDidScroll: before the visible
items were updated.

To fix this, we need to figure out what cell's are visible without
relying on UICollectionView's cell appearance to be up to date. This
instead uses the collection view layout's cell frames to determine if
they live in the visible content rect of the collection view. Since
layout must be available for the cell to be visible, this should be
correct.

Made some other minor changes around naming. Clarified that lastSortId
and lastIndexPath refer to the viewmodel's loaded window, not the
global thread state.
2020-07-01 09:41:31 -07:00
Matthew Chen
f6d5342765 Merge remote-tracking branch 'private/release/3.12.1' 2020-06-25 20:00:08 -03:00
Nora Trapp
6b53eb5ae8 Always re-create the message request dialog if necessarry, since the type of request may have changed 2020-06-25 19:05:09 -03:00
Nora Trapp
5b102b9b5a Fix scroll to typing indicators 2020-06-25 19:05:09 -03:00
Nora Trapp
fc63f37329 New safety number sheet 2020-06-25 19:04:12 -03:00
Nora Trapp
e480d75029 Adjust ActionSheetController dark theme style 2020-06-25 19:04:12 -03:00
Nora Trapp
647bc8533e Update message footer to indicate when partially sent 2020-06-25 19:04:12 -03:00
Michelle Linington
22926a5bff IOS-604: Stale index path used in -[ConversationViewController scrollToBottomAnimated:]
Our target index path should be determined after updating the
ConversationViewModel's window.

A more robust solution might involve pinning the bottom page to *always*
be loaded in the ConversationViewModel. But for now, this should fix the
assertion.
2020-06-25 10:35:27 -07:00
Matthew Chen
43f568cb9f Merge remote-tracking branch 'private/release/3.12.0' 2020-06-24 15:06:49 -03:00
Nora Trapp
3d0bf09292 Remove unnecessary unread count calculation 2020-06-23 20:34:08 -07:00
Nora Trapp
6577b6906e Always scroll focus message / unread marker as close to top as possible 2020-06-23 20:34:08 -07:00
Nora Trapp
a162c779b3 Fix scroll to top logic 2020-06-23 20:34:08 -07:00