Commit graph

668 commits

Author SHA1 Message Date
Scott Nonnenberg
83eccee42e
Show quote properly when replying to 1:1 story reaction 2023-02-03 09:31:40 -08:00
Fedor Indutny
1381e8df5d
Process username changes in storage service 2023-02-02 11:03:51 -07:00
Josh Perez
ba848eec84
Fixes notification text for story reactions 2023-02-01 15:38:33 -08:00
Fedor Indutny
63d6b14516
Split ACI contact when it is unregistered 2023-02-01 13:32:46 -08:00
Fedor Indutny
e64816830b
Revert "Periodically optimize FTS table"
This reverts commit 5dfdde998b.
2023-01-30 15:55:11 -08:00
Jamie Kyle
da0a741a36
Use preferred system locales and add Farsi font stack 2023-01-24 16:54:46 -08:00
Fedor Indutny
5dfdde998b
Periodically optimize FTS table 2023-01-24 11:13:00 -08:00
Alvaro
ce8a1f5930
Don't use the term gift 2023-01-23 13:42:40 -07:00
Josh Perez
86488b97b9
Adds debugging utilities in dev/beta environments 2023-01-18 19:02:03 -05:00
Fedor Indutny
b37be94cb9
Never pass mutable data to selectors 2023-01-13 13:16:58 -08:00
Jamie Kyle
c58a723f45
Add type-alias-readonlydeep rule and make ducks mostly immutable 2023-01-13 12:07:26 -08:00
Josh Perez
9374832ea4
Enables ContextIsolation 2023-01-12 16:24:59 -08:00
Fedor Indutny
d7b09b9703
Deprecate phone number discovery notification 2023-01-12 14:18:08 -08:00
Fedor Indutny
19279cfebd
Support esnext in storybook 2023-01-12 12:58:53 -08:00
Scott Nonnenberg
0b39ff8b5f
Reactions: isSentByConversationId is only for reactions from this device 2023-01-12 12:29:04 -08:00
Scott Nonnenberg
50a0110192
Stories: Proper notifications and handling of out-of-order messages 2023-01-11 14:54:06 -08:00
Jamie Kyle
81fc9ff94d
Add more logs for call disposition 2023-01-11 12:04:03 -08:00
Jamie Kyle
e5638c0b20
Call Disposition 2023-01-09 16:52:01 -08:00
Scott Nonnenberg
b8234765bf
Update Backbone types: attributes is T - and fix failing type checks 2023-01-05 13:58:13 -08:00
Josh Perez
476006af96
Clears @mentions when clearing draft 2023-01-03 14:35:59 -08:00
Jamie Kyle
3705b959d6
Remove end year from licenses 2023-01-03 11:55:46 -08:00
Josh Perez
5e6eeecede
Removes Backbone.View and jQuery 2023-01-02 13:34:41 -08:00
Josh Perez
1b3a631903
Properly retry story messages 2022-12-22 16:48:09 -08:00
Fedor Indutny
f92f81dfd6
Cache some volatile conversation properties 2022-12-22 16:13:23 -08:00
Fedor Indutny
dec23725e5
Use ReadonlyArrays in conversation model and redux 2022-12-21 16:07:02 -08:00
Josh Perez
a80c6d89a8
Moves message details into React pane land 2022-12-21 15:44:23 -05:00
Fedor Indutny
ed271d92ea
Add no-misused/floating-promises lint rule 2022-12-21 10:41:48 -08:00
Scott Nonnenberg
1a68c3db62
conversation_view: Move the last of the small functions to redux 2022-12-20 22:25:10 -05:00
Fedor Indutny
5a98fc2f4c
Optimize Message rendering 2022-12-19 15:33:55 -07:00
Josh Perez
d4124abb01
Moves ConversationDetails to react panels 2022-12-15 22:12:05 -05:00
Scott Nonnenberg
f366454893
updatePNI: Cleanup only for obsolete PNI 2022-12-12 14:06:16 -08:00
Josh Perez
9348940ecf
Moves parts of conversation view into redux 2022-12-05 14:56:23 -08:00
Scott Nonnenberg
a49a6f2057
Notifications for a few merge-related scenarios 2022-12-05 14:46:54 -08:00
Alvaro
e41252b35e
Added clearer debug logging to createOrLookup 2022-12-02 17:05:27 -08:00
Jamie Kyle
6198b02640
Init payments message types 2022-11-30 13:47:54 -08:00
Fedor Indutny
d1b505d580
Improve handling of DOE sync messages for stories 2022-11-30 11:21:13 -08:00
Fedor Indutny
9d8ad21819
Remove underscore 2022-11-29 16:53:39 -08:00
Alvaro
5b6c624803
Only validate replies on stories from self 2022-11-28 19:53:43 -05:00
Fedor Indutny
991580a1ed
Improve error handling during group sends 2022-11-22 10:43:43 -08:00
Fedor Indutny
a2f1b469ea
Make sure that storySendMode is in group types 2022-11-19 00:31:18 -08:00
Fedor Indutny
629b5c3f6a
Better send state for unregistered recipients 2022-11-16 18:15:26 -08:00
Josh Perez
220963c789
Sending/Failed state for stories 2022-11-16 14:10:11 -08:00
Fedor Indutny
6be69a7ba8
Use DurationInSeconds for expireTimer 2022-11-16 13:18:02 -07:00
Fedor Indutny
8452a72847
Fix story reactions in 1:1 conversations 2022-11-15 18:27:29 -08:00
Fedor Indutny
be6e988a95
Hydrate body ranges for story replies 2022-11-09 20:59:36 -08:00
Josh Perez
cd1a1a00a2
Discard invalid story replies 2022-11-09 22:52:53 -05:00
Fedor Indutny
d7a2669b49
Wrap eventHandlerQueue jobs with task with timeout 2022-11-09 10:59:32 -08:00
Josh Perez
19a42ed719
Onboarding story 2022-11-08 21:38:19 -05:00
Alvaro
d0fb25f758
Show and sort active groups when sending a story 2022-11-08 13:01:59 -07:00
Fedor Indutny
9ce8d5e68f
Fix storage service handling of contact status 2022-11-07 15:21:12 -08:00
Fedor Indutny
54aa0d39b9
Store all story reactions as messages 2022-11-02 16:48:38 -07:00
Josh Perez
6700f6fa15
Clean up group story replies 2022-11-01 11:58:07 -07:00
Fedor Indutny
8f62442822
Allow link-only stories, download previews 2022-10-31 14:28:28 -07:00
Josh Perez
13785a0936
Update reaction last message notification text 2022-10-26 15:36:11 -07:00
Fedor Indutny
d6afae64d9
Check stories capability when sending replies 2022-10-25 17:03:51 -07:00
Fedor Indutny
a38b265e8b
Save conversation when toggling story status 2022-10-21 09:57:07 -07:00
Fedor Indutny
d26c5b7db8
Don't display sent stories in groups 2022-10-20 15:47:38 -07:00
Jamie Kyle
de242e5380
stories: notify participants in story replies for new replies 2022-10-20 14:39:21 -07:00
Scott Nonnenberg
58f0012f14
Stories: Start expiration on receipt 2022-10-17 16:30:03 -07:00
Josh Perez
e80d9d1f30
Reset storyReplyContext whenever a story expires 2022-10-11 13:32:00 -07:00
Jamie Kyle
25bc16300c
Notify story creator for replies 2022-10-11 10:59:02 -07:00
Fedor Indutny
95bee1c881
Sync group stories through storage service 2022-10-07 17:19:02 -07:00
Scott Nonnenberg
4ec48df5b9
Additional work to include story=true on send 2022-10-07 10:02:08 -07:00
Jamie Kyle
3e73b30a9d
Dont forward group story replies into conversation 2022-10-04 11:42:42 -07:00
Josh Perez
67c706a7ef
Ensure deleting conversation deletes story replies 2022-09-29 17:57:11 -07:00
Fedor Indutny
ffac571dd8
systemGivenName/systemFamilyName in ContactPill 2022-09-27 17:07:00 -06:00
Fedor Indutny
0ab85a6094
Fix UI in PendingInvites 2022-09-27 13:31:55 -07:00
Scott Nonnenberg
5ed5483dd7
Eliminate unknown groups and contacts from search results 2022-09-26 13:18:11 -07:00
Alvaro
22bf3ebcc0
Implemented ability to quickly add a user to a group 2022-09-26 09:24:52 -07:00
Fedor Indutny
59da9c7ae5
Stop using deprecated PniCredential 2022-09-21 09:18:48 -07:00
Scott Nonnenberg
5e9f3d5171
Unarchive conversation if another device sent a message to it 2022-09-19 13:40:03 -07:00
Fedor Indutny
62647a357f
Support unregisteredAtTimestamp in storage service 2022-09-19 11:47:49 -07:00
Alvaro
6cfe2a09df
Consecutive playback and per-conversation playback rate 2022-09-15 14:10:46 -06:00
Jamie Kyle
0086216c9d
Add eqeqeq rule but require == for null 2022-09-14 14:40:44 -07:00
Scott Nonnenberg
8899ca9724
Improve logging in handleDataMessage and contact sync 2022-09-12 17:52:55 -07:00
Scott Nonnenberg
380833447f
Stories: Don't drop 1:1 replies, always 24-hour expireTimer 2022-09-09 18:05:07 -06:00
Alvaro
383a0fd17f
Added the time remaining for disappearing messages and stories 2022-09-09 11:35:00 -07:00
Scott Nonnenberg
56ffd7bc3f
Expire Timer: If we generated change, don't mark unread 2022-09-06 17:52:07 -06:00
Fedor Indutny
2b5f0ffc10
Update Inter to 3.19 2022-08-31 12:57:21 -07:00
Alvaro
ca6300a86a
Added last-message's author to group conversation list in left pane 2022-08-25 09:16:37 -07:00
Fedor Indutny
7ce4beb270
Refactor contact sync processing 2022-08-24 22:04:42 -07:00
Josh Perez
68398823e3
Log when a story gets an expiration timer set 2022-08-24 16:34:10 -07:00
Josh Perez
0fb45f045d
Handle Safety Number changes while sending a story 2022-08-19 14:05:31 -04:00
Fedor Indutny
757af2cbbe
Include ACI+Access Keys pairs with CDSI requests 2022-08-18 13:44:53 -07:00
Josh Perez
5ec78374d1
Use just the timestamp for story expiration 2022-08-17 10:56:41 -07:00
Fedor Indutny
16222f6092
Reset pniCredential when our E164 changes 2022-08-17 09:22:59 -07:00
Josh Perez
ce77465d23
Mark stories as viewed if we have a view sync during modifyTargetMessage 2022-08-16 16:45:03 -07:00
Fedor Indutny
00cfd92dd0
Send and receive PniSignatureMessage 2022-08-15 14:53:33 -07:00
Scott Nonnenberg
da28b4d6cd
getUnverified/getUntrusted: Return conversation array, not collection 2022-08-12 15:43:24 -04:00
Scott Nonnenberg
a160fb7963
Unarchive conversations when we add a calling event to it 2022-08-11 17:28:55 -07:00
Josh Perez
5b6874b882
Download your own story attachments. Hydrate story replies on receive 2022-08-10 11:48:52 -07:00
Scott Nonnenberg
269d170275
A number of additional merging fixes 2022-08-10 11:39:04 -07:00
Josh Perez
ccc89545c5
Lets users send stories to groups 2022-08-10 14:37:19 -04:00
Alvaro
d4b74db05c
Don't create preview icon for links with no image (quotes) 2022-08-10 10:48:33 -07:00
Scott Nonnenberg
faf6c41332
Early preparations for PNP Contact Merging 2022-08-09 14:39:00 -07:00
Scott Nonnenberg
fde917c983
A few fixes for the emoji bundled with stickers 2022-08-08 11:21:00 -07:00
Josh Perez
190db3580d
Drop incoming messages with a story context and no matching story 2022-08-04 15:15:53 -07:00
Josh Perez
9eff67446f
Send text attachment stories 2022-08-02 15:31:55 -04:00
Josh Perez
3af478837d
Drop duplicate stories 2022-07-29 16:01:33 -07:00
Scott Nonnenberg
78ad890a20
Conversation.getProps: Allow for our own ACI to be missing 2022-07-25 14:08:31 -07:00
Scott Nonnenberg
2f252b8e26
Repair broken attachments with non-array 'data' fields 2022-07-18 13:01:43 -07:00
Scott Nonnenberg
bfc56dd175
Introduce new Profile Fetch service, with centralized queueing 2022-07-13 17:46:46 -07:00
Josh Perez
5639c1adea
DOE for stories 2022-07-13 16:09:18 -07:00
Josh Perez
d7307934bc
Adjust some types 2022-07-12 17:37:21 -07:00
Scott Nonnenberg
14591358f1
Simplify expireTimer change handling, queue for contact sync 2022-07-11 17:32:26 -07:00
Fedor Indutny
07cc399550
Lazily fetch profiles when modifying groups 2022-07-11 11:50:14 -07:00
Josh Perez
712c9597c5
Fixes story reaction notification text 2022-07-11 11:35:55 -07:00
Scott Nonnenberg
1dc27a6144
enqueueMessageForSend: Capture storage service change on unarchive 2022-07-08 16:09:46 -07:00
Fedor Indutny
a450e13a99
Fetch PNI group credentials 2022-07-08 13:46:25 -07:00
Josh Perez
778f3721a6
Do not update unread count for story messages 2022-07-07 09:48:05 -07:00
Fedor Indutny
f92be05b15
Titlebar fixes 2022-07-05 09:44:53 -07:00
Scott Nonnenberg
06190b1434
Introduce new urgent property for outgoing messages 2022-07-01 09:55:13 -07:00
Josh Perez
9155784d56
Sync my stories with primary device 2022-06-30 20:52:03 -04:00
Scott Nonnenberg
d99e29dd25
Ensure expireTimer updates in Note to Self are never unread 2022-06-30 17:18:18 -07:00
Scott Nonnenberg
101d53c4ea
getUUID: Return undefined if uuid is falsey 2022-06-27 17:37:56 -07:00
Scott Nonnenberg
c35f901387
models/messages.initialize: If no ourConversationId, skip migration 2022-06-27 10:27:20 -07:00
Scott Nonnenberg
09124446a6
updateCallHistoryForGroupCall: If exists, update left pane preview 2022-06-27 10:10:09 -07:00
Scott Nonnenberg
4568527232
Increase backstop queue timeouts across the app 2022-06-27 09:46:43 -07:00
Fedor Indutny
6b231346d9
Fix management of selectedMessage in redux 2022-06-23 09:12:17 -07:00
Fedor Indutny
35e5eb847a
Better logging for expiration timer updates 2022-06-20 15:43:16 -07:00
Scott Nonnenberg
d547ef362e
Fetch latest group data on unblock of a group 2022-06-20 11:55:34 -07:00
Josh Perez
d970d427f8
Create text stories 2022-06-16 17:48:57 -07:00
Scott Nonnenberg
2464e0a9c1
Convert signal.js and preload.js to Typescript 2022-06-13 14:39:35 -07:00
Scott Nonnenberg
e18510e41c
Message: If collapsed in group, remove top margin on link previews 2022-06-13 14:29:10 -07:00
Evan Hahn
f50a6abe36
Remove unused eslint-disables 2022-06-03 14:07:51 -07:00
Scott Nonnenberg
e09d148c1d
On Sender Key distribution message failure, don't update send status 2022-06-02 14:25:55 -07:00
Evan Hahn
ab9a50357b
Convert libphonenumber utilities to TypeScript, removing unused ones 2022-06-01 10:48:16 -07:00
Scott Nonnenberg
16d180efac
Send just sync message if we've already sent to all recipients 2022-05-31 16:20:45 -07:00
Fedor Indutny
83b3ae9387
Expiration timer shouldn't count as unread on link 2022-05-25 13:48:23 -07:00
Fedor Indutny
7138daf5ef
Support keepMutedChatsArchived flag 2022-05-25 13:44:05 -07:00
Scott Nonnenberg
e281fbe0e0
Fix left pane summary for gift badges 2022-05-25 12:39:31 -07:00
Fedor Indutny
dfc310805a
Allow manually retrying attachment downloads 2022-05-23 16:07:41 -07:00
Evan Hahn
59b45399e4
Improve logic for app badge count 2022-05-23 15:21:14 -07:00
Fedor Indutny
3be95e821e
Pass abortSignal to sendToGroup 2022-05-23 15:08:13 -07:00
Fedor Indutny
7afe3fcca2
Combine two redux batches in send flow 2022-05-23 15:04:33 -07:00
Evan Hahn
28ab6e11f6
isMuted -> isConversationMuted 2022-05-23 18:37:53 +00:00
Scott Nonnenberg
a114e4e210
Gift Badges: A few tweaks 2022-05-16 12:54:38 -07:00
Scott Nonnenberg
dfd1190e8b
Groups: Show in left pane more often, proper join message 2022-05-16 07:53:54 -07:00
Scott Nonnenberg
105508c50f
Update unread count when creating important local notifications 2022-05-11 19:45:20 -07:00
Josh Perez
ddde85cdd8
Soft assert for hydrating story context 2022-05-11 16:47:19 -07:00
Scott Nonnenberg
69d0ed3309
Always provide isGroup/storyId to message-fetching functions 2022-05-11 15:20:47 -07:00
Scott Nonnenberg
0ba6a0926e
Support for incoming gift badges 2022-05-11 13:59:58 -07:00
Josh Perez
0ca66d6e95
Adjust story replies for direct conversations 2022-05-10 15:02:21 -04:00
Josh Perez
144d594e31
Remove announcementGroup capability checks 2022-05-09 11:15:46 -07:00
Scott Nonnenberg
d4e0f6a38d
Update conversation.unreadCount in just one place, from database 2022-05-03 13:24:31 -07:00
Scott Nonnenberg
e078a2ae54
Ensure that seenStatus is always updated along with readStatus 2022-04-29 16:42:47 -07:00
Josh Perez
6d576ed901
Allow multiple reactions to stories 2022-04-28 18:06:28 -04:00
Josh Perez
84411fee38
View next unread story improvements 2022-04-28 11:59:09 -07:00
Scott Nonnenberg
25282e3afa
getTotalUnreadForConversation: Add missing isGroup parameter 2022-04-27 10:41:24 -07:00
Josh Perez
2f44e33c9c
Move link notification to the conversation hero 2022-04-25 14:03:24 -07:00
Fedor Indutny
fd610a6300
Don't post extraneous verified change notification 2022-04-25 13:54:13 -07:00
Scott Nonnenberg
3a1df01c9e
New 'unseenStatus' field for certain secondary message types 2022-04-22 11:35:14 -07:00
Fedor Indutny
da45f26d37
Drop verified syncs, use storage service for event 2022-04-20 19:41:52 -04:00
Josh Perez
774246b6e2
Drop story replies from group timeline 2022-04-20 16:33:38 -07:00
Josh Perez
e3d537cbd3
Render group stories 2022-04-14 20:08:46 -04:00
Fedor Indutny
42108c9ca9
Flush last conversation message save on shutdown 2022-04-12 11:16:58 -07:00
Josh Perez
9f7ee9ae79
Force set expirationStartTimestamp on story messages 2022-04-11 14:28:01 -07:00
Scott Nonnenberg
7f89f6162f
Disable forward for messages with embedded contact 2022-04-11 13:57:44 -07:00
Josh Perez
0f16ef5dd6
Do not try to download text attachments 2022-04-08 10:03:10 -07:00
Josh Perez
d8e6516fb9
Fixes isAccepted logic when calling it for the first time 2022-04-07 19:12:35 -07:00
Josh Perez
9ffcd44e6d
Do not add non-messages to the timeline 2022-04-07 14:13:58 -07:00
Scott Nonnenberg
b50c96c0b5
Improve layout of various message bubbles 2022-04-07 09:58:15 -07:00
Josh Perez
16f0f4262a
Fix media not auto-downloading 2022-03-30 13:53:30 -07:00
Fedor Indutny
2aac3b5cb9
Split addSingleMessage for better batching 2022-03-29 15:30:55 -07:00
Josh Perez
3b5cc26fec
Adds logic around downloading stories 2022-03-28 18:10:08 -07:00
Scott Nonnenberg
e62606361d
Sort message-initiated timer updates before the initiating message 2022-03-28 17:25:11 -07:00
Fedor Indutny
c5a3ffddf9
Limit number of GV2 banned members 2022-03-23 15:34:51 -07:00
Scott Nonnenberg
8a36891512
addSingleMessage: Only loadNewestMessages if conversation is loaded 2022-03-22 18:37:45 -07:00
Fedor Indutny
f536421390
Better merging for changed keys in storage service 2022-03-21 15:06:34 -07:00
Scott Nonnenberg
bddd55d574
Challenge: Save conversationIds and start queues 2022-03-21 14:19:37 -07:00
Josh Perez
3620309f22
Show story replies in the timeline 2022-03-16 10:30:14 -07:00
Fedor Indutny
36ce4f27a2
Optimize profile avatar uploads and sync urls 2022-03-15 17:14:20 -07:00
Scott Nonnenberg
703bb8a3a3
Introduce new 'Block request' button in timeline 2022-03-15 17:11:28 -07:00
Scott Nonnenberg
f217730b84
Support for people banned from joining groups via link 2022-03-14 18:32:07 -07:00
Evan Hahn
72c6c57186
If not enough messages are loaded (on tall screens), fix jankiness 2022-03-11 14:31:21 -08:00
Josh Perez
d0898cb0c2
Do not set conversation expire timer on incoming story msgs 2022-03-09 18:20:01 -08:00
Fedor Indutny
81e991af80
Use explicit method names for universal timers 2022-03-09 14:20:08 -08:00
Fedor Indutny
4a00ea46bc
Allow requesting profile without profileKey 2022-03-09 12:23:21 -08:00
Fedor Indutny
a72cf075ef
Optimize initial storage service fetch 2022-03-09 10:22:34 -08:00
Fedor Indutny
feef67da5a
Add extra notary signature checks to zkgroup 2022-03-08 13:07:52 -08:00
Evan Hahn
efee887135
Don't try generating link previews for debuglogs.org 2022-03-08 14:04:44 -06:00
Josh Perez
eb91eb6fec
Process incoming story messages 2022-03-04 13:14:52 -08:00
Evan Hahn
effe5aae6f
Assume everyone is GV2-capable 2022-03-04 13:48:44 -06:00
Scott Nonnenberg
0a52318be6
Delete for everyone: Track sends and show failure states 2022-03-04 11:22:31 -08:00
Evan Hahn
052a8e65e2
Add "clean up timer if necessary" utility 2022-02-25 10:37:15 -08:00
Scott Nonnenberg
7431f151b2
applyMessageRequestResponse: Don't leaveGroup in 1:1 conversations 2022-02-24 15:58:48 -08:00
Scott Nonnenberg
4763831d3e
background.ts: Introduce types for redux initialState 2022-02-23 12:48:40 -06:00
Scott Nonnenberg
b33b5d2a30
profileKey: Check length of incoming values, clear on failed send/fetch 2022-02-22 14:34:57 -06:00
Scott Nonnenberg
30783c887c
Introduce new conversationJobQueue 2022-02-16 10:36:21 -08:00
Fedor Indutny
4d21e1e22b
Update storage service when sharing profile key 2022-02-09 10:29:33 -08:00
Fedor Indutny
cb5131420f
Update storageService logging 2022-02-08 10:00:18 -08:00
Scott Nonnenberg
0a18cc50bd
New queue for view once syncs, handleRetry improvements 2022-02-08 09:30:42 -08:00
Fedor Indutny
0d19f9131b
Drop legacy feature flags 2022-02-04 13:33:09 -08:00
Fedor Indutny
e37c6e68ec
Sort conversations by active_at 2022-02-04 11:01:09 -08:00
Fedor Indutny
891e72a260
Make sure isPinned is in sync with storage service 2022-02-02 17:21:02 -08:00
Fedor Indutny
fdbb2bfb36
Normalize UUID in ConversationModel.initialize 2022-02-02 13:41:29 -08:00
Fedor Indutny
089116d069
Use identity key from storage service 2022-02-01 18:26:23 -08:00
Evan Hahn
c5ad020de7
Fix "mark conversation read" optimization 2022-01-31 13:52:09 -08:00
Jim Gustafson
ab9d33cf1a
Update to RingRTC v2.17.2 2022-01-28 13:55:36 -06:00
Fedor Indutny
53a27d022f
Create contacts during processing of group updates 2022-01-27 13:46:31 -08:00