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
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
4371996362
Reduce the amount of storage service conflicts
2021-08-23 19:17:36 -04:00
Evan Hahn
79c976668b
Receive rings for group calls
2021-08-20 09:06:15 -07:00
Josh Perez
e9308bbafb
New option for control over update downloads
2021-08-19 15:56:29 -07:00
Fedor Indutny
1cc7c5dc2d
Move getAlwaysRelayCalls
to window.Events
2021-08-19 11:41:24 -07:00
Josh Perez
91af0dad78
Faster preferences window
2021-08-18 13:08:14 -07:00
Evan Hahn
b0750e5f4e
Show "unplayed" dot on incoming audio messages
2021-08-12 13:15:55 -05:00
Fedor Indutny
cc5da98565
Ignore empty e164 in storage service
2021-08-06 11:20:11 -07:00
Josh Perez
12d2b1bf7c
Avatar defaults and colors
2021-08-05 20:17:05 -04:00
Fedor Indutny
a001882d58
Change Phone Number notifications
2021-08-05 16:34:49 -07:00
Evan Hahn
6b290a0f0c
@mentions notifications
2021-08-05 07:35:33 -05:00
Evan Hahn
d0bf9f929b
Remove unused getExpiresAt function
2021-07-30 14:54:34 -05:00
Fedor Indutny
fdec47d637
Use single WebAPI instance across the app
2021-07-23 10:23:50 -07:00
Josh Perez
d9e90e9ea8
Improvements to shared library components
2021-07-21 13:45:41 -07:00
Josh Perez
cd35a29638
Edit profile
2021-07-19 12:26:06 -07:00
Scott Nonnenberg
a42c41ed01
Message Send Log to enable comprehensive resend
2021-07-15 16:48:09 -07:00
Fedor Indutny
570fb182d4
Fully move to protobufjs
2021-07-13 11:54:53 -07:00
Fedor Indutny
ddbbe3a6b1
More protobufjs migration
2021-07-09 12:36:10 -07:00
Fedor Indutny
299fe2af36
More protobufjs use
2021-07-02 14:21:24 -05:00
Scott Nonnenberg
615ae1ccf7
Refactor SendMessage.ts to named parameters
2021-07-02 13:34:17 -05:00
Fedor Indutny
d11283f0f1
Update RingRTC to v2.10.6
2021-06-29 09:39:53 -05:00
Fedor Indutny
9f0c630574
Move to protobufjs in ts/groups.ts
2021-06-22 09:46:42 -05:00
Scott Nonnenberg
68f1023946
Move message.getPropsForBubble and friends to selectors
2021-06-17 10:15:10 -07:00
Evan Hahn
03a187097f
Disappearing message cleanups
2021-06-16 17:20:17 -05:00
Fedor Indutny
562ab5a5a5
Fix syncing of "Off" setting for default timer
2021-06-15 10:06:53 -07:00
Fedor Indutny
8f5086227a
Enforce stronger types for ArrayBuffers and storage
2021-06-14 17:09:37 -07:00
Fedor Indutny
17e6ec468e
Faster WebSocket reconnects
2021-06-09 15:28:54 -07:00
Scott Nonnenberg
bff3f0c74a
Sender Key: Prepare for production
2021-06-08 14:51:58 -07:00
Josh Perez
d4875fd8f4
Remove isPrivate, isMe, isGroupV1, isGroupV2 from model
2021-06-07 09:39:13 -07:00
Scott Nonnenberg
e0d613f1b6
Use correct timestamps for failed call events
2021-06-03 15:19:14 -05:00
Fedor Indutny
5b18bb8563
Fix storybook for calling sources modal
2021-06-03 12:52:11 -07:00
Fedor Indutny
56f0e1ba46
Make sure screen name is internationalized
2021-06-03 11:42:30 -07:00
Josh Perez
38d4595e3b
Fix camera setting when stopping screenshare
2021-06-02 13:41:28 -05:00
Fedor Indutny
19f8042cd3
Universal Disappearing Messages
2021-06-01 13:45:43 -07:00
Scott Nonnenberg
ee513a1965
Support for message retry requests
2021-05-28 12:11:19 -07:00
Evan Hahn
d4dc9b8e39
Message Requests: Add new "Report spam and block" button
2021-05-27 13:37:58 -07:00
Scott Nonnenberg
e6f1ec2b6b
Send support for Sender Key
2021-05-25 15:40:04 -07:00
Josh Perez
ceffc2380c
Add screensharing behind a feature flag
2021-05-20 17:37:19 -07:00
Fedor Indutny
80da8bb47b
Display SMS/MMS disclaimer in empty search results
2021-05-20 17:37:17 -07:00
Josh Perez
e0c324e4ba
Send/Receive support for reaction read syncs
2021-05-06 21:15:25 -04:00
Evan Hahn
8ef14e6f39
When incoming message should've been sealed sender, reply with profile key
2021-05-05 09:39:16 -07:00
Evan Hahn
bbd7fd3854
Initial support for job queue
2021-04-29 18:02:27 -05:00
Scott Nonnenberg
86d2a4b5dd
decrypt/encrypt with libsignal-client, remove libsignal-protocol-javascript
2021-04-29 14:27:35 -07:00
Josh Perez
808c7dfb2d
Fixes storage service validation where id already ArrayBuffer
2021-04-28 15:01:29 -04:00
Josh Perez
5e2d48cc2f
Do not populate left pane on initial link
2021-04-20 19:16:49 -04:00
Evan Hahn
ea6562b7ac
Merge branch 'hiqua-no_lower_limit_query' into next-beta
2021-04-14 14:14:57 -07:00
Josh Perez
a2a361f0bf
Extra validations for storage service
2021-04-09 16:12:05 -04:00
Josh Perez
6c0acd09df
Sync mute state
2021-04-09 11:19:38 -05:00
Evan Hahn
a82fa86176
Fetch sender certificates on-demand
2021-04-09 00:06:46 -04:00
Josh Perez
9438b7b3fe
Fixes pinned conversations sync
2021-04-08 15:27:20 -04:00
Josh Perez
e4db9358cf
Storage service logging same
2021-04-06 15:54:47 -07:00
Evan Hahn
a7c78b3b23
Storage service: save new AccountRecord fields to disk
2021-04-05 18:08:50 -04:00
AsamK
ea7a5449f1
Fix race condition which often prevented sending group call started message
...
The group call update message after starting a group call is currently only
sent in the onLocalDeviceStateChanged callback. But often the peekInfo is
not available yet when the connection state changes to Joined, effectively
preventing the group call update message to be sent.
This commit also sends the message in the onPeekChanged callback. It is still
only sent at most once, which is ensured by the updateMessageState check.
See [#5001 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5001
2021-04-02 15:32:04 -05:00
Josh Perez
1264e6da2b
Retain protections on gv1 records that match gv2 ids
2021-03-30 20:40:48 -04:00
Evan Hahn
b725ed2ffb
Refresh profiles on app start (at most every 12 hours)
2021-03-19 16:57:36 -04:00
Fedor Indutny
11bcbded64
Storage Service fixes to prevent crashes on Android
...
* Merge report v1 group settings into local v2 group
The invariants of Storage Service mandate that the remote data always
takes precendence over the local data. We have to updated
blocked/whitelisted/... of the v2 group even if the record is for the v2
group. After doing such update - sync the manifest back to the Storage
Service with correct v2 record for the group.
* Repair errored records before uploading manifest
Fetch and re-attempt to merge errored records before uploading the
manifest. This is useful in the cases where we were not aware of the V1
group when the remote manifest was fetched, and became aware of it
before the new manifest is generated. In such scenario, we should fetch
the records for things we have failed on last time and attempt to merge
them with our data. If they are merged - we should not let their
storageIDs hang in the new manifest, which would cause group duplicates
and crashes on other clients.
* Create v1 group for storage service record
If we receive storage service record with v1 group that we didn't sync
yet (or just don't have for any other reason) - create it instead of
pushing it to `storage-service-error-records`.
2021-03-19 16:57:36 -04:00
Josh Perez
8dc8a64229
Storage sync before writing
2021-03-19 16:57:35 -04:00
Josh Perez
0fd0fac262
Check for conversation conflicts before writing
2021-03-19 16:57:35 -04:00
Josh Perez
230604b451
Fix for storage service profileSharing setting
2021-03-19 16:57:35 -04:00
Evan Hahn
5de4babc0d
Support for creating New Groups
2021-03-19 16:53:52 -04:00
Jim Gustafson
245f8c665d
Update to RingRTC v2.9.2
2021-02-04 11:54:18 -08:00
Evan Hahn
38193e6591
Fix comment typo
2021-02-03 10:45:35 -06:00
Scott Nonnenberg
cbc6c29479
Finish in-redux conversation lookups, getPropsForSearchResult moved
2021-01-25 18:28:58 -08:00
Evan Hahn
dd0ea6b3fe
Upgrade TypeScript to the latest version, v4.1.3
2021-01-25 18:28:57 -08:00
Evan Hahn
8ace4b6321
Improve window activity detection, improving notification delivery
2021-01-25 18:28:57 -08:00
Evan Hahn
7af68ff74d
Minor: remove unused exports from calling service
2020-12-17 12:12:52 -05:00
Evan Hahn
c87ffcd2e9
Call lobby: render local preview at camera's aspect ratio
2020-12-11 16:44:07 -08:00
Evan Hahn
a237946ba0
Disable camera when quickly toggling the call lobby
2020-12-10 10:39:39 -08:00
Evan Hahn
db0ebc5779
Update group membership for a group call when it changes
2020-12-09 15:21:34 -08:00
Evan Hahn
a142cb522e
Send group call events to linked devices
2020-12-09 16:02:50 -06:00
Josh Perez
5b0e267fb2
Revs up the desktop.storageWrite2 feature flag
2020-12-08 16:16:40 -05:00
Josh Perez
318013e83d
Handles safety number changes while in a call
2020-12-08 14:37:04 -05:00
Evan Hahn
0c039bf431
Add group calling events to the message timeline
2020-12-07 14:43:19 -06:00
Evan Hahn
23fed9ce63
Group calling SFU URL should be configurable
2020-12-07 13:40:11 -06:00
Evan Hahn
6af78be51a
Fix logging when updating audio output device
2020-12-04 11:10:33 -08:00
Evan Hahn
c85ea814b1
Group calling participants refactor
2020-12-02 10:14:03 -08:00
Evan Hahn
d1866a0e5d
Group calling: tell RingRTC about our rendered resolutions for perf
2020-12-01 17:52:01 -08:00
Evan Hahn
b30b83ed57
Send group call update messages when joining/leaving a call
2020-12-01 17:49:08 -08:00
Evan Hahn
f3f2cb2b5e
Show active speaker in group calling PiP
2020-12-01 15:52:09 -08:00
Evan Hahn
7b6ad345ae
Group calling: disable local camera when call disconnects
2020-11-23 14:49:32 -05:00
Evan Hahn
6d53cb1740
Group calling: Peek into a group call
2020-11-23 14:49:32 -05:00
Evan Hahn
b366967ca5
Upgrade to RingRTC v2.8.2 RC.6
2020-11-23 14:48:12 -05:00
Scott Nonnenberg
2c69f2c367
Support for GV1 -> GV2 migration
2020-11-23 14:48:12 -05:00
Vladimir Skuratovich
a0baa3e03f
Notify RingRTC of Failed HTTP requests
2020-11-23 14:45:44 -05:00
Josh Perez
1f0c091e13
Group calling enhancements
2020-11-23 14:45:44 -05:00
Evan Hahn
022c4bd0f4
Initial group calling support
2020-11-23 14:45:44 -05:00
Jim Gustafson
ff0794e08b
Update to RingRTC v2.8.1
2020-11-11 15:10:41 -06:00
Sidney Keese
4d95f83007
Clean up transitional pinned chats
2020-11-09 12:30:05 -06:00
Sidney Keese
bba9df3149
Ensure incoming pinned conversations are not archived
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-11-09 09:32:59 -06:00
Evan Hahn
3468de255d
Redux state: Allow multiple calls to be stored
2020-11-06 09:36:37 -08:00
Evan Hahn
b7a1ddf628
Remove runtime type checks from calling service
2020-11-04 13:03:13 -06:00
Evan Hahn
8bfaf598af
Add license headers across the project
2020-11-04 13:03:13 -06:00
Chris Svenningsen
c408072576
Mark conversation as unread
...
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-11-04 13:03:10 -06:00
nsunderland1
2373209834
Don't enable webcam on audio call startup ( #4602 )
2020-11-02 16:47:18 -08:00
Scott Nonnenberg
cd9aee84f5
Always share profile on send; no profile sharing UI if no messages
2020-10-28 17:40:50 -07:00
Vladimir Skuratovich
a4c6003f34
Prefer audio device 0 if no device preference has been saved
2020-10-26 15:48:44 -07:00
Scott Nonnenberg
04b7a29229
Modern profile sharing in 1:1 and GroupV1 groups
2020-10-26 15:48:44 -07:00
Evan Hahn
60f2422e2a
Consolidate sleep
usages into a tested utility function
2020-10-26 15:48:44 -07:00
Chris Svenningsen
fdc3476106
Fix a few pinned chat sync issues
2020-10-15 18:59:45 -04:00
Josh Perez
fac1f26ad2
Better logging for pin/unpin
2020-10-15 14:35:57 -04:00
Josh Perez
1507dea351
Move calling duration timer into redux state
2020-10-13 14:02:43 -07:00
Evan Hahn
0d83076799
Use more exact type for addCallHistory
2020-10-12 18:10:08 -04:00
Josh Perez
59a181bd30
Calling: Lobby
2020-10-12 18:10:08 -04:00
Josh Perez
c7308b485b
Tidy up the storage service logs
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
9002b21a6b
Minimize downstream effects of storage sync
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
b914b59969
Disable obsolete feature flags
2020-10-12 18:10:08 -04:00
Josh Perez
b879c73b86
Storage service write improvements
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
d51a0b5ece
GroupsV2: Better group invite behavior
2020-10-12 18:10:08 -04:00
Chris Svenningsen
cf9764c85a
Consolidate checks for v2 Groups
2020-10-12 18:10:08 -04:00
Chris Svenningsen
6a7d45b6fc
Pinned Chats
2020-10-12 18:10:08 -04:00
Evan Hahn
c57f7f1cdb
Call requests: caller
2020-10-12 18:10:08 -04:00
Josh Perez
9510fd1eec
Cleans up mute state after mute expires
2020-10-12 18:10:08 -04:00
Josh Perez
27759233e4
Storage Service Write: Improved conflict handling
2020-10-12 18:10:08 -04:00
Chris Svenningsen
63b2644cb4
Read Pinned Chats
...
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-10-12 18:10:08 -04:00
Evan Hahn
333dc17c0a
Proper call requests for callee
2020-10-12 18:10:07 -04:00
Sidney Keese
dabab60f56
Remove TSLint
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-10-12 18:10:07 -04:00
Chris Svenningsen
b5df9b4067
Migrate messages, conversations, conversation_view, background to TS
...
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-10-12 18:10:07 -04:00
Jim Gustafson
80fe9b97d0
Add more logging for high level calling operations
2020-09-25 17:05:25 -04:00
Scott Nonnenberg
9f73b40d7a
MessageReceiver: Use UUID if we have it
2020-09-25 09:20:36 -05:00
Josh Perez
0fe7e30398
Storage Service: More logging
2020-09-21 15:42:51 -04:00
Peter Thatcher
3c9c581854
RingRTC: Update to v2.6.0
2020-09-21 15:42:50 -04:00
Evan Hahn
de66486e41
Add sound effect for notifications in Linux
2020-09-21 15:42:50 -04:00
Josh Perez
c25759ca3a
Storage Service Write: Tighten up validation
2020-09-10 15:37:20 -07:00
Scott Nonnenberg
4c98b4a96f
Introduce new remote flag for storage service write behavior
2020-09-10 13:59:59 -04:00
Josh Perez
d1d7e0aa99
Storage logging improvements and repeat limits for stop sync
2020-09-09 17:34:57 -07:00
Scott Nonnenberg
7a02cc815d
Support for new GroupV2 groups
2020-09-09 17:34:57 -07:00
Josh Perez
1ce0959fa1
Storage Service: Write
2020-09-09 17:34:57 -07:00
Chris Svenningsen
8a2c17f65f
Apply new ESLint rules to legacy code
2020-09-09 17:34:57 -07:00
Josh Perez
aeff7540c8
Calling type improvements
2020-09-04 14:41:07 -05:00
Sidney Keese
48df8ab3b1
ESLint Migration
2020-09-04 09:39:17 -04:00
Josh Perez
c2aa8eb82b
Calling: Prevent video flicker when switching audio devices
2020-09-01 17:11:16 -04:00
Jim Gustafson
90bf0f4eea
Update to RingRTC v2.5.1
...
Co-authored-by: Vladimir Skuratovich <vlad@signal.org>
2020-08-28 15:42:25 -04:00
Josh Perez
8ab1013f70
Calling: Device Selection
2020-08-28 15:42:25 -04:00
Scott Nonnenberg
d75eee015f
Show notifications when a user's profile name changes
2020-07-30 13:27:44 -07:00
Jim Gustafson
2f015863ca
Upgrade to RingRTC v2.4.0
2020-07-30 13:27:44 -07:00
Scott Nonnenberg
d07b8e82b2
First-class profile name rendering
2020-07-30 13:27:41 -07:00
Jim Gustafson
632cd0e87e
Drop incoming calls if conversation is not 'accepted'
2020-07-30 13:18:36 -07:00
Scott Nonnenberg
901179440f
Merge contacts when we discover split or duplicated contacts
2020-07-30 13:17:45 -07:00
Jim Gustafson
12745a2c79
Update to RingRTC v2.3.1
2020-07-30 13:10:05 -07:00
Jim Gustafson
e87a0103cc
Use message age to expire old incoming calls
2020-07-30 13:10:05 -07:00
Jim Gustafson
870a0d2b65
Support RingRTC message sending queue
2020-07-30 13:10:05 -07:00
Peter Thatcher
d3a27a6442
Calling support
2020-07-30 13:08:47 -07:00
Scott Nonnenberg
9ab54b9b83
Move web_api.js and js/modules/crypto.js to TypeScript
2020-04-15 14:44:51 -07:00
Josh Perez
018dc34e47
Fix for fallback update dialog
2020-02-20 16:24:40 -08:00
Josh Perez
18fd44f504
Move all status/alert dialogs into the Left Pane
2020-02-12 13:30:58 -08:00