Commit Graph

249 Commits

Author SHA1 Message Date
Matthew Chen
f06b72bc2a Remove uiRead(). 2021-07-02 22:04:58 -03:00
Matthew Chen
75de56236b Remove uiRead(). 2021-07-02 22:04:58 -03:00
Matthew Chen
03acf2ffdd Remove uiRead(). 2021-07-02 22:04:58 -03:00
Matthew Chen
1d5b2aa2f5 Rework avatar building and caching. 2021-06-18 14:01:32 -03:00
Matthew Chen
c2b413ef6d Merge CVC bubble views. 2021-06-11 11:45:25 -03:00
Matthew Chen
0eb43b04c2 Merge CVC bubble views. 2021-06-11 11:45:25 -03:00
Matthew Chen
010b135ab0 Add CVBodyTextLabel. 2021-06-02 20:42:55 -04:00
Matthew Chen
a45acdb040 Render chat colors in CVC cells. 2021-05-25 16:22:29 -03:00
Matthew Chen
ab39a9af46 Fix retain cycle around contact cells. 2021-05-19 13:37:24 -03:00
Nora Trapp
1e40ec144d Add support for group descriptions 2021-05-17 09:58:35 -03:00
Michelle Linington
c5fcb7d889 Localize strings, UI tweaks 2021-05-07 12:13:38 -07:00
Michelle Linington
5d00f6a94a Spam UI work 2021-05-07 12:13:37 -07:00
Michelle Linington
02c9ef4ef7 Most of the remainder of the spam work:
- Updates to the message send flow
- Presents basic captcha UI when needed
- Auto-resend when captcha is complete

What's left:
- Bits of UI to communicate the sending state to the user
- Some cleanup of how we talk to the server
- Localizations
2021-05-07 12:13:37 -07:00
Matthew Chen
90ef984abb Fix layout of contact cell accessories. 2021-05-05 16:53:22 -03:00
Matthew Chen
d64bd4f80c Reuse contact cells. 2021-05-04 21:45:16 -03:00
Matthew Chen
9e8f87ae0a Clean up how local user name is rendered in contact cells. 2021-05-04 21:45:15 -03:00
Matthew Chen
0241fd25e8 Convert contact cells to Swift, clean up configuration, reduce transaction count. 2021-05-04 21:45:15 -03:00
Nora Trapp
7d1b7e900a Block loads while cells are animating 2021-04-29 18:04:03 -07:00
Nora Trapp
a365b45522 Add support for viewed receipts 2021-04-29 18:01:18 -07:00
Matthew Chen
c5c473b7b6 Rework cvc wallpaper blur again. 2021-04-28 17:00:02 -03:00
Matthew Chen
c3cb9b1a07 Fix manual layout glitches. 2021-04-22 22:56:17 -03:00
Matthew Chen
e5698335cc Add "unknown thread warnings." 2021-04-22 22:07:46 -03:00
Matthew Chen
8baf952a71 Apply ConversationAvatarView. 2021-04-22 22:00:42 -03:00
Nora Trapp
66326538bd Design feedback for member action sheet 2021-04-20 13:05:35 -07:00
Nora Trapp
2dadf58e16 Redesigned member action sheet 2021-04-16 23:58:19 -07:00
Nora Trapp
399607d400 Improve message details keyboard interactions. 2021-04-06 15:49:41 -07:00
Nora Trapp
c6dcc18b94 Fix keyboard interaction with swipe-to-details 2021-04-01 10:38:18 -07:00
Nora Trapp
9ce747a5ca Fix retain cycles 2021-04-01 10:38:18 -07:00
Nora Trapp
4755911762 Improve message details presentation performance 2021-04-01 10:38:18 -07:00
Nora Trapp
7194309181 Redesign swipe for details animation to mimic swipe to reply 2021-04-01 10:38:18 -07:00
Nora Trapp
20bc199a95 Cache message recipients 2021-04-01 10:38:18 -07:00
Nora Trapp
8c9a925b72 Re-style message detail view 2021-04-01 10:38:18 -07:00
Nora Trapp
1bd5db62dd Swipe left for message details. 2021-04-01 10:38:18 -07:00
Nora Trapp
24d1b5ff37 Display updated action sheet when tapping safety number change 'learn more' 2021-03-31 13:14:46 -07:00
Matthew Chen
d0cbf8cfd0 Rework dependency access. 2021-03-25 09:24:27 -03:00
Jordan Rose
34d2ed47f1 MediaGallery: handle new messages coming in by reloading
The tile view will only reload the sections that changed. The page
view will reload its current item. This is necessary to keep the
MediaGallery model in sync with the database, but as a side benefit it
also means the All Media view gets live updates as new messages come
in.
2021-03-04 10:30:54 -08:00
Jordan Rose
3b90f1b761 MediaGallery: Filter recently-deleted items from database queries
And rewrite and simplify the rest of deletion logic appropriately.
(Thanks to Nora for the strategy.)

There is one tough case here: database updates have happened
/externally/ (say, from a disappearing message expiring), in which
case the database will be updated but the MediaGallery model will not.
In this case we've broken the invariant that we have the correct count
for each month-section, and need to put a hold on database access
until the model has been updated. The only effect of this is in the
page-based media VC, where we'll exit out of the browser rather than
advancing to the next item if the item we were looking at was deleted
/and/ the next item hasn't been loaded yet. (This can happen if you're
at the start of a message with many items and the whole message gets
deleted.)
2021-03-04 10:30:54 -08:00
Jordan Rose
493e99eb8d Don't expose a CVComponentView to the CVComponentDelegate
Instead of the delegate showing the share sheet for a tapped-on
attachment, let the CVComponentGenericAttachment do it itself. This
keeps the delegate from dealing with any specific component views
within the conversation.
2021-02-17 11:43:22 -08:00
Matthew Chen
30f14b0d0d Fix issues around message details view. 2021-01-22 23:23:48 -03:00
Nora Trapp
d0da9422ec System message wallpaper styling. 2021-01-21 17:00:17 -08:00
Michelle Linington
f996a732d8 Show tapped avatar in conversation settings full screen 2021-01-21 16:17:24 -08:00
Jordan Rose
d00674a33c Show the Share sheet if a file attachment doesn't support Quick Look
This restores the old behavior if Quick Look isn't going to be
helpful.
2021-01-16 13:23:37 -08:00
Nora Trapp
806dbd7257 Replace decryption errors with single 'session refresh' message 2021-01-12 16:45:35 -08:00
Matthew Chen
e1b78ac0f5 Add auto-download settings for media. 2021-01-12 19:28:15 -03:00
Matthew Chen
6f3c92dedd Add auto-download settings for media. 2021-01-12 19:28:15 -03:00
Matthew Chen
68b68fdf04 Group link promotion. 2021-01-12 15:51:38 -03:00
Jordan Rose
ce07035c62 Use Quick Look for interacting with generic attachments 2021-01-11 14:45:49 -08:00
Matthew Chen
8e1ed4d307 Fix the body media dismiss animations. 2020-12-11 16:49:14 -03:00
Matthew Chen
151e1158a9 Rename CVItemViewModel, CVItemViewModelImpl. 2020-12-11 16:49:14 -03:00
Matthew Chen
200aec4d7a Merge CVItemViewModel and CVItemViewModelImpl. 2020-12-11 16:49:14 -03:00