Commit graph

395 commits

Author SHA1 Message Date
Fedor Indutny
ae01ad4276 Persist hasSetMyStoriesPrivacy in storage service 2022-09-07 14:17:09 -07:00
Fedor Indutny
55a5c51236 Provide speakerHeight to ringrtc 2022-09-07 14:17:08 -07:00
Jordan Rose
618a7725fe Simplify logging 2022-09-07 14:17:03 -07:00
Scott Nonnenberg
56ffd7bc3f
Expire Timer: If we generated change, don't mark unread 2022-09-06 17:52:07 -06:00
Scott Nonnenberg
8bbd892693
Contact Sync: Consider undefined value as a disabled expire timer 2022-09-01 11:26:10 -07:00
Jim Gustafson
9e02a57d77
Update to RingRTC v2.21.0 2022-08-31 09:12:28 -07:00
Fedor Indutny
c42df6312e
contactSync should depend on syncMessage.complete 2022-08-26 15:26:38 -07:00
Fedor Indutny
7ce4beb270
Refactor contact sync processing 2022-08-24 22:04:42 -07:00
Josh Perez
0fb45f045d
Handle Safety Number changes while sending a story 2022-08-19 14:05:31 -04:00
Fedor Indutny
15714f35ef
Rename remote config flag 2022-08-17 15:06:17 -07:00
Josh Perez
5ec78374d1
Use just the timestamp for story expiration 2022-08-17 10:56:41 -07:00
Josh Perez
936ce91b2e
Move getUntrustedContacts out of conversation_view 2022-08-16 16:59:11 -07:00
Fedor Indutny
96c4cc4bcf
Introduce desktop.pnp.storageService flag 2022-08-16 16:58:17 -07:00
Fedor Indutny
5a3c04d630
Additional logging for calling service 2022-08-16 16:52:09 -07:00
Scott Nonnenberg
932043c58f
Make attachments more resilient, decrease websocket keepalive 2022-08-16 16:49:47 -07:00
Fedor Indutny
d0264c844f
Fix handling of STICKER_PACK unknown records 2022-08-16 00:05:09 -07:00
Scott Nonnenberg
7399086939
Group Credentials: Request six days of data to account for clock skew 2022-08-15 09:34:27 -07:00
Fedor Indutny
0a299ec7e5
Fix assertion in mergeStickerPackRecord 2022-08-12 15:44:09 -04:00
Josh Perez
0a81376ca0
Do not accept stories without a name and no deletedAtTimestamp 2022-08-11 18:03:22 -04:00
Josh Perez
7126cbd5e4
Do not allow MyStories to be deleted 2022-08-11 12:18:48 -07:00
Scott Nonnenberg
269d170275
A number of additional merging fixes 2022-08-10 11:39:04 -07:00
Scott Nonnenberg
faf6c41332
Early preparations for PNP Contact Merging 2022-08-09 14:39:00 -07:00
Josh Perez
782838c591
Sync MyStories using the ID not the name 2022-08-03 20:10:05 -04:00
Fedor Indutny
b47a906211
Stickers in storage service 2022-08-03 10:10:49 -07:00
Fedor Indutny
79b48115e6 Handle PniChangeNumber 2022-07-28 14:50:10 -04:00
Scott Nonnenberg
1062126077 Request our PNI along with group credential fetch 2022-07-25 13:25:43 -07:00
Josh Perez
e321e1fea8
Edit distribution lists via story settings menu 2022-07-20 20:07:09 -04:00
Fedor Indutny
5c2016ec40
Refresh PNI on startup 2022-07-18 15:32:00 -07:00
Fedor Indutny
a4cf2e0948
Always refetch profile key credential if expired 2022-07-18 13:05:41 -07:00
Scott Nonnenberg
bfc56dd175
Introduce new Profile Fetch service, with centralized queueing 2022-07-13 17:46:46 -07:00
Fedor Indutny
a450e13a99
Fetch PNI group credentials 2022-07-08 13:46:25 -07:00
Fedor Indutny
565425c8b6
Correct identifier for story records 2022-07-06 17:34:13 -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
Josh Perez
0a0a25498d
Repair old unexpired stories 2022-06-23 16:36:11 -04:00
Scott Nonnenberg
b8d6a591d5
Reintroduce 'expired' event, simplify handling of View Once media 2022-06-22 17:21:38 -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
Evan Hahn
2a2f44a73a
Convert message cleanup services to TypeScript 2022-05-31 16:53:14 -07:00
Fedor Indutny
7138daf5ef
Support keepMutedChatsArchived flag 2022-05-25 13:44:05 -07:00
Fedor Indutny
fcc60202c2
Populate sourceDevice field of ManifestRecord 2022-05-25 12:20:45 -07:00
Fedor Indutny
e6223b6a11
Dynamic audio level indicator 2022-05-18 23:28:51 -04:00
Scott Nonnenberg
dfd1190e8b
Groups: Show in left pane more often, proper join message 2022-05-16 07:53:54 -07:00
Josh Perez
253ab7517d
Always repair unexpired stories 2022-05-11 14:02:26 -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
2f44e33c9c
Move link notification to the conversation hero 2022-04-25 14:03:24 -07:00
Fedor Indutny
7821a872bd
Drop ContactRecords for our own ACI/PNI 2022-04-19 20:10:10 -07:00
Josh Perez
e3d537cbd3
Render group stories 2022-04-14 20:08:46 -04:00
Josh Perez
b550f64a4b Merge signalapp/Signal-Desktop#5633 2022-04-14 13:04:19 -04:00
Fedor Indutny
610ebdd1e3
Batch storage item read requests 2022-04-12 17:50:17 -07:00
Josh Perez
9f7ee9ae79
Force set expirationStartTimestamp on story messages 2022-04-11 14:28:01 -07:00
Fedor Indutny
5fdda012cd
Raise voice note time limit to one hour 2022-04-06 14:39:54 -07:00
Scott Nonnenberg
85989fda3c
More peeking of group calls to prevent out-of-date member info 2022-03-31 18:06:56 -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
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 Indutny
0923cc6cb8
Do not reopen the last notification on reconnect 2022-03-16 17:51:19 -07:00
Fedor Indutny
36ce4f27a2
Optimize profile avatar uploads and sync urls 2022-03-15 17:14:20 -07:00
Fedor Indutny
f7b71eecee
Use valid uuid as a fallback in calling 2022-03-14 15:14:14 -07: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
Josh Perez
eb91eb6fec
Process incoming story messages 2022-03-04 13:14:52 -08:00
Fedor Indutny
df7cdfacc7
Don't mkdir restore dir in updater 2022-03-04 11:59:47 -08:00
Fedor Indutny
3b4106d9dd
Change order of syncs during linking 2022-03-02 14:53:47 -08:00
Jim Gustafson
637b67d9a5
Update to RingRTC v2.19.0
Co-authored-by: Evan Hahn <evanhahn@signal.org>
2022-03-02 11:28:29 -06:00
Evan Hahn
cfa0711909
Put "is speaking?" threshold in remote config; lower default 2022-03-01 17:39:09 -06:00
Fedor Indutny
1a751c07fc
Remove warn log when no account record is fetched 2022-02-28 18:43:45 -08:00
Evan Hahn
052a8e65e2
Add "clean up timer if necessary" utility 2022-02-25 10:37:15 -08:00
Evan Hahn
41b4cce6ec
Show local speaking indicator for group calls 2022-02-25 09:24:05 -06:00
Fedor Indutny
5d035dff86
Drop GV1 records when GV2 records are present 2022-02-22 14:30:59 -08: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
2de45a341b
hangup: Hang up all calls, warn if we can't find intended call 2022-02-18 10:27:15 -06:00
Scott Nonnenberg
30783c887c
Introduce new conversationJobQueue 2022-02-16 10:36:21 -08:00
Fedor Indutny
a0b05f41e3
Dropped storage keys should not cause upload 2022-02-14 11:36:32 -08:00
Fedor Indutny
e0205ffff8
Drop invalid storage service keys 2022-02-11 13:05:24 -08: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
Fedor Indutny
cb5131420f
Update storageService logging 2022-02-08 10:00:18 -08:00
Fedor Indutny
bbe56e0811
Erase storage service state on key change 2022-02-02 16:15:39 -05:00
Fedor Indutny
b6287f4839
Properly propagate 204 to fetchManifest 2022-01-31 11:58:20 -08:00
Jim Gustafson
ab9d33cf1a
Update to RingRTC v2.17.2 2022-01-28 13:55:36 -06:00
Josh Perez
0fa069f260
Trim profile names when setting them 2022-01-26 13:58:00 -08:00
Scott Nonnenberg
68a458ec4a
Honor preferContactAvatars field on AccountRecord 2022-01-25 09:44:45 -08:00
Fedor Indutny
8cd557ff91
Add extra logging for change phone number 2022-01-20 14:44:25 -08:00
Jim Gustafson
d8c071dca6
Update to RingRTC v2.17.0 2022-01-15 20:59:01 -06:00
Scott Nonnenberg
90356d4c0f
Move a number of sync messages to jobs for retry 2022-01-14 13:34:52 -08:00
Evan Hahn
f8bbf5c998
Group calls: mute in the lobby if joining a large call 2022-01-07 12:01:23 -06:00
Scott Nonnenberg
62e9a1570a
Enable notifications for disappearing messages on macOS 12.0.1 and above 2022-01-05 13:52:06 -08:00
Fedor Indutny
14861aff50
Process manifest before persisting its version 2022-01-04 09:22:48 -06:00
Fedor Indutny
2d596ac8b2
Switch SQL to main process on disconnect 2022-01-03 13:44:04 -08:00
Evan Hahn
770c80b9ee
Remove several @ts-ignores 2021-12-16 17:14:21 -08:00
Scott Nonnenberg
a023fc1bb0
Usernames: Fetch own username from /whoami not /profile 2021-12-15 12:02:55 -08: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
e8a2d1f2c9
Tell Chromium not to change gain during recording 2021-12-07 09:21:55 +01:00
Josh Perez
978f57f076
Add some logging around setting preferred reaction emojis 2021-12-06 11:39:48 -05:00
Jim Gustafson
38cdb9b289
Update to RingRTC v2.16.0 2021-12-03 14:22:58 -06:00
Jordan Rose
ee8d0196b1
Don't show a notification for non-ringing calls in muted groups 2021-12-02 14:49:31 -06: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
Jordan Rose
7edf3763a8
Hang up any active calls when quitting 2021-11-30 09:36:20 -06:00
Evan Hahn
03631481e1 Format code with prettier 2021-11-11 17:13:46 -06:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1 2021-11-11 16:43:05 -06:00
Fedor Indutny
f204784afe
Prune invalid conversations from storage service 2021-11-11 13:38:02 -08:00
Jordan Rose
983713003d
Update to libsignal-client v0.10.1 with zkgroup included 2021-11-11 16:24:28 +01:00
David Sanders
50dc534164 Simplify permissions popup IPC 2021-11-09 07:35:31 -08:00
Fedor Indutny
519ca05911
Update electron to 15.3.0 2021-11-08 22:43:37 +01:00
Evan Hahn
3bd3207e18
Add feature flag for ADM2 on Windows 2021-11-04 16:50:34 -05:00
Evan Hahn
d6ffb08a63
Disable class-methods-use-this lint rule 2021-11-04 16:04:51 -05:00
Scott Nonnenberg
3190f95fac
Usernames: Create/update/delete in profile editor 2021-11-01 12:13:35 -07:00
David Sanders
79b3b6408e Fix microphone permission checking for audio recording
See [#5580][0].

[0]: https://github.com/signalapp/Signal-Desktop/pull/5580
2021-10-27 11:16:09 -05: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
Josh Perez
ab1c31b64f
Release microphone immediately when cancelling recording 2021-10-15 14:51:33 -04:00
Evan Hahn
aec3b76117
Add additional logging in notification service 2021-10-12 10:19:07 -05:00
Josh Perez
75dab30367
Use SignalContext instead of SignalWindow 2021-10-07 19:28:47 -04:00
Fedor Indutny
a537204fc0
Remove ts/services/timers.ts 2021-10-06 14:59:34 -07:00
Evan Hahn
3c91dce993
Don't show group call start notifications more than once 2021-10-05 16:11:40 -05:00
Evan Hahn
3eff5b73d2
Enable storage service for everyone 2021-10-05 12:04:28 -05:00
Josh Perez
bfe5a5edae
Do not process records if there are none to process 2021-10-01 20:01:30 -04:00
Josh Perez
31d1f25b18
Adds error dialog when voice recorder cannot start 2021-09-30 13:13:47 -07:00
Fedor Indutny
3e31a7405b Use physical keys+layout for shortcuts 2021-09-29 14:21:15 -07:00
Evan Hahn
fc066e05df
Don't show "group call started" notifications for muted conversations 2021-09-29 15:29:40 -05:00
Josh Perez
603c315c82
Moves AudioCapture into react 2021-09-29 13:23:06 -07:00
Evan Hahn
64fc234490
Use new audio device module in alpha and beta 2021-09-29 13:30:42 -05:00
Evan Hahn
e32503eed4
Import AudioDevice and VideoFrameSource directly from RingRTC 2021-09-28 11:37:03 -05:00
Evan Hahn
ed222fee9a
Poll for devices when joining a group call 2021-09-28 11:35:40 -05:00
Fedor Indutny
8d1ab9fd69
Consistent scheduling of sendToGroup 2021-09-27 11:29:06 -07:00
Scott Nonnenberg
cf4c81b11c
Clear stale sender certificates 2021-09-27 10:31:34 -07:00
Evan Hahn
47634acc3d
Fix inversion of audio notification preference 2021-09-24 15:11:16 -05:00
Evan Hahn
f81f61af4e
Draw attention even if notifications are otherwise disabled 2021-09-24 14:01:29 -05:00
Evan Hahn
7adfd1a4e7
Fix compile error: use bytesToUuid in calling service 2021-09-24 09:32:01 -07:00
Evan Hahn
9aa0de5b6c
When a group call starts, show an OS notification 2021-09-24 09:01:01 -05:00
Fedor Indutny
4ef0bf96cc
Uint8Array migration 2021-09-23 17:49:05 -07:00
Evan Hahn
d2ef82686d
Notification improvements 2021-09-23 13:16:09 -05:00
Evan Hahn
04a4e6e5ff
Upgrade RingRTC to v2.13.1 2021-09-23 08:49:33 -07:00
Fedor Indutny
b9d6497cb1
Better types for WebAPI 2021-09-21 17:58:03 -07:00
Josh Perez
65ddf0a9e8
Import log instead of using it off of window 2021-09-17 14:27:53 -04:00
Josh Perez
0f9b72d1db
Ensure single upload for storage service 2021-09-16 18:25:49 -04:00
Evan Hahn
fda21edd23
Remove unnecessary disables of consistent-return lint rule 2021-09-16 15:25:55 -05:00
Fedor Indutny
f937eba94e
Update socket status more eagerly 2021-09-16 13:18:42 -07:00
Evan Hahn
20be8a11fe
Read and write preferred reactions to storage 2021-09-15 11:59:51 -07:00
Fedor Indutny
c7e7d55af4
UUID-keyed lookups in SignalProtocolStore 2021-09-09 19:38:11 -07:00
Evan Hahn
cc52a94c76
Make sure RingRTC has our UUID 2021-09-07 09:21:17 -07:00
Evan Hahn
3e18a8a337
Don't ring large groups 2021-09-02 15:34:38 -07:00
Josh Perez
c6b4f14f3b
Fixes no group description unless admin 2021-08-26 16:12:07 -05:00
Evan Hahn
f86f753df9
Add durations utility for computing durations 2021-08-26 09:10:58 -05:00