Commit graph

345 commits

Author SHA1 Message Date
Fedor Indutny
a2f1b469ea
Make sure that storySendMode is in group types 2022-11-19 00:31:18 -08:00
Fedor Indutny
6be69a7ba8
Use DurationInSeconds for expireTimer 2022-11-16 13:18:02 -07:00
Fedor Indutny
e6ebfe4fca
Update typescript to 4.8.4 2022-11-14 11:35:37 -08:00
Scott Nonnenberg
5100d17ed2
SafetyNumberChangeDialog: Introduce awareness of stories 2022-11-10 23:10:30 -05:00
Fedor Indutny
9ce8d5e68f
Fix storage service handling of contact status 2022-11-07 15:21:12 -08:00
Fedor Indutny
8f62442822
Allow link-only stories, download previews 2022-10-31 14:28:28 -07:00
Josh Perez
42362a2772
Close viewer after viewing a single story 2022-10-26 18:03:43 -07:00
Josh Perez
0308f208d8
Fix flakey viewStory test 2022-10-25 15:23:24 -07:00
Evan Hahn
ad42d98774
"cancelation" → "cancellation" in test title 2022-10-25 13:12:52 -07:00
Josh Perez
471a9e2e98
Show group replies icon for stories with replies 2022-10-22 02:26:16 -04:00
Fedor Indutny
e14c3241c5
Refresh stories in redux when data changes 2022-10-20 12:16:37 -07:00
Fedor Indutny
00f82a6d39
Discriminator in username 2022-10-18 10:12:02 -07:00
Josh Perez
4882248041
Story viewer navigation improvements 2022-10-17 12:33:07 -04:00
Scott Nonnenberg
6d535cd026
sendToGroup/_shouldFailSend: Don't fail send on 401 2022-10-12 15:50:38 -06:00
Jamie Kyle
25bc16300c
Notify story creator for replies 2022-10-11 10:59:02 -07:00
Alvaro
958f13b9f2
Fixed bug that was causing story playback to not play all unread 2022-10-07 22:02:46 -04:00
Evan Hahn
5219cdf2c9
Make 1 the minimum registration ID 2022-10-05 09:35:56 -07:00
Jamie Kyle
6d56f8b8aa
support icu messageformat for translations 2022-10-03 14:19:54 -07:00
Josh Perez
67c706a7ef
Ensure deleting conversation deletes story replies 2022-09-29 17:57:11 -07:00
Fedor Indutny
373f121887
Extend cleanSignedPreKeys to support PNI 2022-09-27 09:33:56 -07:00
Scott Nonnenberg
a7253be213
getUnreadByConversationAndMarkRead: Take 'now' param for reliable tests 2022-09-22 16:49:06 -07:00
Josh Perez
0be580e8e5
Fixes story play order 2022-09-21 20:55:23 -04: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
Alvaro
383a0fd17f
Added the time remaining for disappearing messages and stories 2022-09-09 11:35:00 -07:00
Fedor Indutny
757af2cbbe
Include ACI+Access Keys pairs with CDSI requests 2022-08-18 13:44:53 -07:00
Scott Nonnenberg
74374e4313
maybeMergeContacts/create: Put PNI into UUID field if no ACI 2022-08-17 16:12:38 -07:00
Scott Nonnenberg
932043c58f
Make attachments more resilient, decrease websocket keepalive 2022-08-16 16:49:47 -07:00
Fedor Indutny
00cfd92dd0
Send and receive PniSignatureMessage 2022-08-15 14:53:33 -07:00
Josh Perez
584b39baa8
Avoid race conditions when queueing a story for download 2022-08-11 15:26:26 -07:00
Alvaro
d4b74db05c
Don't create preview icon for links with no image (quotes) 2022-08-10 10:48:33 -07:00
Scott Nonnenberg
5d45197fe2
Remove restriction on maybeMergeContacts, combineConversations fixes 2022-08-09 16:46:01 -07:00
Scott Nonnenberg
faf6c41332
Early preparations for PNP Contact Merging 2022-08-09 14:39:00 -07:00
Scott Nonnenberg
276435f035
RoutineProfileRefresher: Track instances, only start() once, min sleep 2022-08-04 14:43:47 -07:00
Fedor Indutny
2b0d3cab40
Remove source from Envelope 2022-08-02 09:19:21 -07:00
Scott Nonnenberg
2b648b79a4
Upgrade to libsignal-client v0.19.2 2022-08-01 18:31:24 -07:00
Scott Nonnenberg
08b2aeb237
Move back to libsignal-client v0.18.1 2022-07-29 09:17:59 -07:00
Fedor Indutny
79b48115e6 Handle PniChangeNumber 2022-07-28 14:50:10 -04:00
Scott Nonnenberg
bfc56dd175
Introduce new Profile Fetch service, with centralized queueing 2022-07-13 17:46:46 -07:00
Scott Nonnenberg
50222558bf
Remove emoji, mentions and links when calculating text direction 2022-07-11 16:34:55 -07:00
Fedor Indutny
a450e13a99
Fetch PNI group credentials 2022-07-08 13:46:25 -07:00
Scott Nonnenberg
5fcf97b43b
Introduce logging for unexpected incoming urgent values 2022-07-05 15:20:30 -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
Josh Perez
aa23c2def2
Removes Inbox Backbone view 2022-06-16 15:12:50 -04:00
Fedor Indutny
6aeddb9301
Order unprocessed envelopes by receivedAtCounter 2022-06-10 09:09:21 -07:00
Evan Hahn
d4bba46b2c
Convert "reliable trigger" to TypeScript 2022-06-01 12:54:51 -07:00
Scott Nonnenberg
d446aa9e6b
Move to uuids for untrusted conversations needing verification 2022-05-31 12:46:56 -07:00
Evan Hahn
d3f9b656dd
Convert Whisper.View tests to TypeScript 2022-05-31 18:47:08 +00:00
Scott Nonnenberg
6f2b01d98b
Restore useful bubble for incoming messages with errors 2022-05-31 09:26:07 -07:00
Fedor Indutny
80c90540f6
Restore call view mode after presentation end 2022-05-25 11:03:27 -07:00
Fedor Indutny
e6223b6a11
Dynamic audio level indicator 2022-05-18 23:28:51 -04:00
Scott Nonnenberg
af2c884c9f
Timeline: Use messageChangeCounter to mark messages read less often 2022-05-11 15:41:45 -07:00
Scott Nonnenberg
69d0ed3309
Always provide isGroup/storyId to message-fetching functions 2022-05-11 15:20:47 -07:00
Scott Nonnenberg
6b4bea6330
Timeline: When scrolling far into history, discard newest messages 2022-05-10 13:19:58 -07:00
Scott Nonnenberg
e078a2ae54
Ensure that seenStatus is always updated along with readStatus 2022-04-29 16:42:47 -07:00
Fedor Indutny
d6b58d23d6
Increment unprocessed attempts when fetching 2022-04-28 15:28:30 -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
40f16b98e2
Transcode link preview images 2022-04-25 13:56:59 -07:00
Josh Perez
d8708e4e73
Ensure that we resolve attachments before displaying them 2022-04-25 10:25:50 -07:00
Scott Nonnenberg
3a1df01c9e
New 'unseenStatus' field for certain secondary message types 2022-04-22 11:35:14 -07:00
Josh Perez
774246b6e2
Drop story replies from group timeline 2022-04-20 16:33:38 -07:00
Scott Nonnenberg
bb250d4fb5
startCall: wait for startOutgoingDirectCall before updating lobby 2022-03-31 18:06:35 -07:00
Josh Perez
3b5cc26fec
Adds logic around downloading stories 2022-03-28 18:10:08 -07:00
Jordan Rose
5a107e1bc3
Update for @signalapp/libsignal-client rename 2022-03-24 14:47:21 -07:00
Fedor Indutny
ca3f8b7df0
Store receivedAtCounter separately for unprocessed 2022-03-24 14:28:56 -07:00
Fedor Indutny
2eaacac151
Use --force-long with pbjs 2022-03-23 13:49:27 -07:00
Fedor Indutny
f536421390
Better merging for changed keys in storage service 2022-03-21 15:06:34 -07:00
Fedor Indutnyy
0e31659682 Merge https://github.com/signalapp/Signal-Desktop/pull/5788 2022-03-17 09:36:51 -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
Dimitris Apostolou
718d0a7046
Fix typos 2022-03-13 11:10:17 +02:00
Evan Hahn
72c6c57186
If not enough messages are loaded (on tall screens), fix jankiness 2022-03-11 14:31:21 -08:00
Fedor Indutny
4a00ea46bc
Allow requesting profile without profileKey 2022-03-09 12:23:21 -08:00
Evan Hahn
effe5aae6f
Assume everyone is GV2-capable 2022-03-04 13:48:44 -06:00
Evan Hahn
0c31ad25ef
Remove React Virtualized from <Timeline> 2022-03-03 14:23:10 -06:00
Evan Hahn
cfa0711909
Put "is speaking?" threshold in remote config; lower default 2022-03-01 17:39:09 -06:00
Scott Nonnenberg
fcb96bf92a
Simplify OutgoingIdentityKeyError, use it in getKeysForIdentifier 2022-02-25 15:39:24 -08:00
Fedor Indutny
033b4830d1
Use checkAccountExistence 2022-02-25 15:20:48 -08:00
Evan Hahn
41b4cce6ec
Show local speaking indicator for group calls 2022-02-25 09:24:05 -06:00
Jon Chambers
45289f519a
Accept HTTP/429 as a "rate-limited" status code 2022-02-24 16:26:58 -08:00
Fedor Indutny
5453d10572
Improve conversion between typed arrays 2022-02-22 17:05:53 -08:00
Scott Nonnenberg
30783c887c
Introduce new conversationJobQueue 2022-02-16 10:36:21 -08:00
Fedor Indutny
0174687542
Use esbuild 2022-02-11 13:38:52 -08:00
Evan Hahn
f5a4cd9ce8
Peek group calls when opening conversations and leaving calls 2022-02-08 13:18:51 -06:00
Evan Hahn
5ce26eb91a
Speaking indicator for group calls
Co-authored-by: Peter Thatcher <peter@signal.org>
Co-authored-by: Jim Gustafson <jim@signal.org>
Co-authored-by: Josh Perez <60019601+josh-signal@users.noreply.github.com>
2022-02-08 12:30:33 -06:00
Scott Nonnenberg
397753bbfe
sendContentMessageToGroup: Comprehensive error check before failover 2022-01-31 13:51:24 -08:00
Evan Hahn
a34291f9dc
Two CI tweaks 2022-01-27 16:28:41 -08:00
Evan Hahn
1e1cb26f08
Update badge placement on 52x52 avatars 2022-01-24 15:59:55 -06:00
Scott Nonnenberg
06165cb742
Include sender keys in SignalProtocolStore zones 2022-01-07 18:12:13 -08:00
Evan Hahn
f8bbf5c998
Group calls: mute in the lobby if joining a large call 2022-01-07 12:01:23 -06:00
Fedor Indutny
f5312b9463
Fix getUnreadReactionsAndMarkRead 2021-12-21 21:01:09 +01:00
Scott Nonnenberg
60a53656af
Optimize a few queries 2021-12-20 22:04:02 +01:00
Fedor Indutny
71ca3c0764
Drop old unprocessed envelopes 2021-12-13 17:25:44 -08:00
Scott Nonnenberg
34fd945f83
No Backbone in data layer; server/client interfaces are now similar 2021-12-10 16:51:54 -06:00
Scott Nonnenberg
161b0e5379
Refactor sender key sends to allow distribution lists 2021-12-09 18:15:59 -08:00
Fedor Indutny
bbc13d058e
Update electron to 16.0.4 2021-12-09 09:06:04 +01:00
Scott Nonnenberg
fdc9885baa
Migration and data access functions for stories 2021-12-08 20:52:46 +01:00
Evan Hahn
c88cb62464
Hide "delete for everyone" button for pending messages 2021-12-02 13:28:19 -08:00
Fedor Indutny
348012ef4c
Add PNI endpoints to WebAPI 2021-11-30 20:33:51 +01:00
Evan Hahn
67b17ec317
Hide "become a sustainer" button if you're already a sustainer 2021-11-30 17:29:57 +01:00
Scott Nonnenberg
563f016245
When you send a message, scroll it into view 2021-11-30 12:25:24 +01:00
Fedor Indutny
a52530262f
Revert "When you send a message, scroll it into view"
This reverts commit a3525c16ef.
2021-11-23 14:09:07 +01:00
Evan Hahn
d8b230e348
Tweak avatar badge sizing/placement 2021-11-20 09:41:48 -06:00
Scott Nonnenberg
a3525c16ef
When you send a message, scroll it into view 2021-11-19 09:19:55 -08:00
Evan Hahn
4dd9232c36
Add badges to @-mentions picker 2021-11-17 19:38:52 +01:00
Scott Nonnenberg
cbae7f8ee9
Search for username in compose mode 2021-11-11 17:17:29 -08:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1 2021-11-11 16:43:05 -06:00
Evan Hahn
9ce8acc846
Update avatar badge placements to match designs 2021-11-09 21:34:47 +01:00
Fedor Indutny
519ca05911
Update electron to 15.3.0 2021-11-08 22:43:37 +01:00
Evan Hahn
8256170066
Fix ConversationController load race condition 2021-11-04 14:11:47 -07:00
Evan Hahn
d6ffb08a63
Disable class-methods-use-this lint rule 2021-11-04 16:04:51 -05:00
Scott Nonnenberg
5bd7eda124
Scroll to bottom of conversation on message send 2021-11-02 19:00:54 -07:00
Evan Hahn
f647c4e053
Display user badges 2021-11-02 16:01:13 -07:00
Scott Nonnenberg
3190f95fac
Usernames: Create/update/delete in profile editor 2021-11-01 12:13:35 -07:00
Evan Hahn
8670a4d864
Retry outbound reactions for up to a day 2021-10-29 18:19:44 -05:00
Fedor Indutny
76d8b5e375
Get rid of electron.remote 2021-10-27 10:54:16 -07:00
Fedor Indutny
63fcdbe787
Use UUIDs in group database schema 2021-10-26 15:59:08 -07:00
Evan Hahn
74fde10ff5
Prefer import type when importing types 2021-10-26 14:15:33 -05:00
Scott Nonnenberg
da9df293c6
linkPreviewFetch: Increase maximum HTML we'll process to 1000*1024 bytes 2021-10-14 11:53:53 -07:00
Fedor Indutny
27573e6dce
Use non-throttled timeouts for websockets 2021-10-07 11:18:22 -07:00
Evan Hahn
942ce16610
In prerelease, enable background throttling when not on a call 2021-09-28 14:00:22 -05:00
Evan Hahn
ed222fee9a
Poll for devices when joining a group call 2021-09-28 11:35:40 -05:00
Scott Nonnenberg
cf4c81b11c
Clear stale sender certificates 2021-09-27 10:31:34 -07:00
Fedor Indutny
4ef0bf96cc
Uint8Array migration 2021-09-23 17:49:05 -07:00
Josh Perez
829e42ca6e
Move i18n setup to TypeScript 2021-09-17 20:30:08 -04:00
Josh Perez
7b5faa1cc1
Permissions popup context iso 2021-09-17 18:24:21 -04:00
Josh Perez
65ddf0a9e8
Import log instead of using it off of window 2021-09-17 14:27:53 -04:00
Fedor Indutny
c7e7d55af4
UUID-keyed lookups in SignalProtocolStore 2021-09-09 19:38:11 -07:00
Evan Hahn
3e18a8a337
Don't ring large groups 2021-09-02 15:34:38 -07:00
Evan Hahn
f82012f129
Strip Exif data without Sharp 2021-09-02 08:59:42 -07:00
Fedor Indutny
6f3191117f
Batch deleteSentProtoRecipient queries 2021-08-31 14:35:01 -07:00
Evan Hahn
a85dd1be36
Retry outbound "normal" messages for up to a day 2021-08-31 13:58:39 -07:00
Evan Hahn
f86f753df9
Add durations utility for computing durations 2021-08-26 09:10:58 -05:00
Fedor Indutny
fff4e9e97f
Simplify envelope drop due to stopped processing 2021-08-25 16:10:09 -07:00
Evan Hahn
0e7f641dc1
Let users ring members when starting a group call
Co-Authored-By: Josh Perez <60019601+josh-signal@users.noreply.github.com>
2021-08-25 16:42:51 -05:00
Josh Perez
347f542ac0
Derive default conversation color from storage 2021-08-24 17:15:12 -07:00
Fedor Indutny
b7ccd12245
Run resumed zone jobs concurrently 2021-08-24 14:07:40 -07:00
Evan Hahn
48cc2b5f11
Preserve blob content type when stripping EXIF data 2021-08-24 14:38:20 -05:00
Evan Hahn
79c976668b
Receive rings for group calls 2021-08-20 09:06:15 -07:00
Evan Hahn
b054802758
Make isEditingAvatar impossible unless you're on the right step 2021-08-16 09:33:27 -05:00
Evan Hahn
b0750e5f4e
Show "unplayed" dot on incoming audio messages 2021-08-12 13:15:55 -05:00
Josh Perez
9078919545
Transcode heic/heif images 2021-08-09 13:06:21 -07:00
Josh Perez
12d2b1bf7c
Avatar defaults and colors 2021-08-05 20:17:05 -04:00
Scott Nonnenberg
a78d30cb5a
Simplify signed prekey handling - always save for 30 days, always save five 2021-08-03 15:26:00 -07:00
Evan Hahn
1891375c6c
Remove "delete for everyone" option from failed messages 2021-08-02 12:26:48 -07:00
Scott Nonnenberg
9fb8114691
Sender Key: Track registrationIds in senderKeyState 2021-07-30 11:35:25 -07:00
Fedor Indutny
1c1d0e2da0
Move to websocket for requests to signal server 2021-07-28 14:37:09 -07:00