Fedor Indutny
fdbb2bfb36
Normalize UUID in ConversationModel.initialize
2022-02-02 13:41:29 -08:00
Evan Hahn
07968ea42b
Use isSameDay
and isToday
utilities
2022-02-02 10:27:44 -08:00
Evan Hahn
05e5786883
Increase fallback Retry-After
time to 1 minute
2022-01-31 15:09:58 -06:00
Josh Perez
bf45182a39
New left pane search design
2022-01-27 16:12:26 -06:00
Fedor Indutny
6578679166
Improve performance of isEmojiOnlyText
2022-01-27 13:28:04 -08:00
Evan Hahn
8fa4cd68d5
Fix timeline item sizing bug, and test timeline logic
2022-01-27 12:10:24 -08:00
Evan Hahn
f9440bf594
Timeline date headers
2022-01-26 17:05:26 -06:00
Scott Nonnenberg
68a458ec4a
Honor preferContactAvatars field on AccountRecord
2022-01-25 09:44:45 -08:00
Evan Hahn
c1e3e87b99
Prohibit Chai expect
or should
; prefer assert
2022-01-19 11:19:08 -08:00
Evan Hahn
364f00f37a
Redesign device link screens
2021-12-16 16:02:22 +01:00
Evan Hahn
71e9498961
Remove ADM2 feature flag
2021-12-14 20:24:43 +01:00
Fedor Indutny
bbc13d058e
Update electron to 16.0.4
2021-12-09 09:06:04 +01:00
Evan Hahn
01549b11d1
Don't request video for invisible group call participants
2021-12-06 17:06:13 -06:00
Josh Perez
7affe313f0
Add image editor
2021-11-30 20:14:25 -06:00
Evan Hahn
67b17ec317
Hide "become a sustainer" button if you're already a sustainer
2021-11-30 17:29:57 +01:00
Evan Hahn
864f9c8631
Tweak badge image logic for new server responses
2021-11-18 23:26:38 +01:00
Fedor Indutny
c6ee6a038e
Add stream timeout for attachment downloads
2021-11-15 23:54:59 +01:00
Scott Nonnenberg
a024ee4b96
Allow stage and send of video, even if we can't get screenshot
2021-11-15 13:54:33 -08:00
Evan Hahn
f4e336836f
Add user badges to typing bubbles, refactor typing logic
2021-11-15 21:01:58 +01:00
Scott Nonnenberg
cbae7f8ee9
Search for username in compose mode
2021-11-11 17:17:29 -08:00
Evan Hahn
da8ec83871
Update name/description heights in badge dialog
2021-11-11 15:01:12 -08:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1
2021-11-11 16:43:05 -06:00
Evan Hahn
7de340a104
Show your preferred badge in the left pane and avatar popup
2021-11-08 17:29:54 +01:00
Evan Hahn
f647c4e053
Display user badges
2021-11-02 16:01:13 -07:00
Fedor Indutny
663cd77eac
Use react-redux's batch instead of react's
2021-11-01 16:38:08 -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
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
191bfee18c
Show What's New dialog in app via Help -> Go to release notes
2021-10-22 17:41:45 -07:00
Evan Hahn
0faeda28f0
Tweaks to left pane snapping logic
2021-10-14 16:19:50 -05:00
Evan Hahn
35a54cdc02
Introduce a new design for the left pane
2021-10-12 16:59:08 -07:00
Scott Nonnenberg
bd380086a4
Send related emoji along with Sticker, fix SendMessage types
2021-10-05 17:10:08 -05:00
Evan Hahn
64fc234490
Use new audio device module in alpha and beta
2021-09-29 13:30:42 -05:00
Fedor Indutny
cd710bb8d2
Add jitter support to BackOff class
2021-09-28 15:12:43 -07:00
Evan Hahn
e32503eed4
Import AudioDevice
and VideoFrameSource
directly from RingRTC
2021-09-28 11:37:03 -05:00
Fedor Indutny
377cdb3281
Fix flaky TaskWithTimeout test
2021-09-28 09:31:12 -07:00
Fedor Indutny
af387095be
API to suspend/resume tasks with timeout
2021-09-27 11:22:46 -07:00
Josh Perez
1c3c971cf4
Moves DraftAttachments into redux
2021-09-24 16:03:32 -04:00
Fedor Indutny
af66a5b265
Truncate lastHeartbeat to day millis
2021-09-24 10:01:46 -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
Evan Hahn
20be8a11fe
Read and write preferred reactions to storage
2021-09-15 11:59:51 -07:00
Evan Hahn
240585ef94
Allow duplicates in reaction palette
2021-09-13 10:04:45 -07:00
Evan Hahn
e2392433e0
Preferred reactions: store raw emoji, gate on feature flag
2021-09-09 16:47:30 -07:00
Evan Hahn
8064560a5f
Update to new provisioning URL scheme
2021-09-09 17:08:19 -05:00
Evan Hahn
f28456c160
Let users customize the preferred reaction palette
2021-09-09 09:29:01 -07:00
Evan Hahn
3e18a8a337
Don't ring large groups
2021-09-02 15:34:38 -07:00
Evan Hahn
1f45bce0a2
When a job fails, respect the Retry-After
header if applicable
2021-09-02 17:31:21 -05:00
Evan Hahn
a85dd1be36
Retry outbound "normal" messages for up to a day
2021-08-31 13:58:39 -07:00
Evan Hahn
7f50fcdb54
Improve performance when rendering many emoji
2021-08-30 11:39:03 -05:00
Evan Hahn
6f242eca57
Handle signal.me links
2021-08-28 08:27:38 -05:00
Evan Hahn
9e9a815a2b
ESLint: allow for..of
2021-08-26 13:18:00 -05:00
Evan Hahn
f86f753df9
Add durations
utility for computing durations
2021-08-26 09:10:58 -05:00
Evan Hahn
79c976668b
Receive rings for group calls
2021-08-20 09:06:15 -07:00
Fedor Indutny
80c1ad6ee3
Don't mutate state in TimelineItem
2021-08-19 13:14:41 -07:00
Josh Perez
91af0dad78
Faster preferences window
2021-08-18 13:08:14 -07:00
Evan Hahn
502dad8f6f
Handle maxGroupCallRingSize remote config flag
2021-08-17 09:01:27 -05: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
Fedor Indutny
12c78c742f
Optimize rendering
2021-08-11 09:23:21 -07:00
Josh Perez
9078919545
Transcode heic/heif images
2021-08-09 13:06:21 -07:00
Scott Nonnenberg
7ce89414bf
Support for alpha build channel
2021-08-06 14:21:01 -07:00
Josh Perez
12d2b1bf7c
Avatar defaults and colors
2021-08-05 20:17:05 -04:00
Evan Hahn
6b290a0f0c
@mentions notifications
2021-08-05 07:35:33 -05:00
Fedor Indutny
21ffb7c054
Unseal envelope in a separate step for better logs
2021-08-02 14:17:56 -07:00
Evan Hahn
689542a9b4
Show additional data in debug log header
2021-07-30 09:43:16 -07:00
Evan Hahn
8cadc40975
Replace MessageModel#isUnread with isMessageUnread utility
2021-07-29 09:29:07 -05:00
Evan Hahn
b826097237
Show window titlebar in test
2021-07-28 16:46:25 -07:00
Fedor Indutny
1c1d0e2da0
Move to websocket for requests to signal server
2021-07-28 14:37:09 -07:00
Scott Nonnenberg
4b92e12f83
Group Details: Show unregistered users in member list
2021-07-28 13:52:49 -05:00
Evan Hahn
14929fb408
Show "unplayed" dot on outgoing audio messages
2021-07-27 10:42:25 -05:00
Evan Hahn
18140c4a9d
Retry outbound read syncs for up to 24 hours
2021-07-23 15:02:36 -07:00
Fedor Indutny
fdec47d637
Use single WebAPI instance across the app
2021-07-23 10:23:50 -07:00
Evan Hahn
1e10286210
Message details: group by send status, including viewed state
2021-07-20 14:56:50 -05:00
Evan Hahn
c4a09b7507
Refactor outbound delivery state, take 2
...
This reverts commit ad217c808d
.
2021-07-19 17:44:49 -05:00
Josh Perez
cd35a29638
Edit profile
2021-07-19 12:26:06 -07:00
Fedor Indutny
c3bdf3d411
Show lightbox for GIFs
2021-07-14 16:39:52 -07:00
Fedor Indutny
8951665554
Clean up conversations with UUID as E164
2021-07-13 17:46:02 -07:00
Fedor Indutny
570fb182d4
Fully move to protobufjs
2021-07-13 11:54:53 -07:00
Fedor Indutny
ad217c808d
Revert "Refactor outbound delivery state"
...
This reverts commit 9c48a95eb5
.
2021-07-12 16:51:45 -07:00
Evan Hahn
9c48a95eb5
Refactor outbound delivery state
2021-07-09 16:38:51 -05:00
Fedor Indutny
e4efa01073
Fix attachment downloads for zero cdnId
2021-07-09 13:12:29 -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
Fedor Indutny
773aa9af19
Better emoji support in linkify/previews
2021-06-30 10:00:02 -07:00
Fedor Indutny
2cd4160422
Unify audio playback under App component
2021-06-29 12:58:29 -07:00
Fedor Indutny
d11283f0f1
Update RingRTC to v2.10.6
2021-06-29 09:39:53 -05:00
Evan Hahn
4495a1ac67
Add reduce
iterables utility
2021-06-28 14:46:33 -07:00
Fedor Indutny
cd28e71bc6
Default disappearing message timeout fixes
2021-06-25 16:52:56 -07:00
Josh Perez
01eabf9ec6
Option to send photos as high quality
2021-06-25 11:08:16 -05:00
Fedor Indutny
c9b1ce6655
Use assert
in normalizeUuid
2021-06-22 16:08:55 -07:00
Evan Hahn
9db19283ac
MessageController: return all messages by sent at, not just 1
2021-06-22 16:05:05 -07: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
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
d38a0042ba
Fix new link scenario where default color is not set
2021-06-07 15:17:44 -07:00
Josh Perez
df7f702dde
Update group name colors
2021-06-07 11:50:18 -05:00
Evan Hahn
eaf4036fc8
Compute provisioning URL in separate function
2021-06-07 09:27:02 -07:00
Evan Hahn
6c6eed0b1e
Don't show name collisions for system contacts
2021-06-02 10:24:22 -07:00
Josh Perez
6d7849e6c7
Colors update contact name colors
2021-06-01 16:37:12 -07:00
Evan Hahn
36c15fead4
Group name spoofing warning
2021-06-01 16:30:25 -07:00
Fedor Indutny
19f8042cd3
Universal Disappearing Messages
2021-06-01 13:45:43 -07:00
Fedor Indutny
6e19383a7d
Fix SMS-only check for unregistered convo
2021-06-01 13:10:19 -07:00
Fedor Indutny
33595646c1
Add user path to logging exceptions
2021-06-01 11:15:23 -07:00
Scott Nonnenberg
ee513a1965
Support for message retry requests
2021-05-28 12:11:19 -07:00
Josh Perez
28f016ce48
Conversation Colors
2021-05-28 09:15:17 -07:00
Evan Hahn
d4dc9b8e39
Message Requests: Add new "Report spam and block" button
2021-05-27 13:37:58 -07:00
Evan Hahn
7c7f7ee5a0
Add concat
iterable utility
2021-05-20 17:37:19 -07:00
Evan Hahn
392822372b
Iterables: add and use filter
2021-05-20 17:37:17 -07:00
Scott Nonnenberg
e6bab06510
Receive support for Sender Key
...
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
2021-05-20 17:37:08 -07:00
Fedor Indutny
7fa730531a
Improve experience for contacts without signal accounts
2021-05-20 17:37:08 -07:00
Evan Hahn
18abe93022
Remove many instances of deprecated url.parse
2021-05-20 17:37:07 -07:00
Evan Hahn
a8346c490e
Fix inaccurate numbers on group details screen
2021-05-20 17:37:07 -07:00
Josh Perez
24b7790829
One SearchInput to rule them all
2021-05-10 20:50:43 -04:00
Fedor Indutny
4b566e0a19
Use fake timers in challenge_test.ts
2021-05-07 17:34:50 -07:00
Fedor Indutny
a3693a7f4a
Fix further flakiness in challenge tests on CI
2021-05-07 15:36:28 -07:00
Evan Hahn
d28678dbf9
Make it more difficult to blur avatars
2021-05-07 17:21:10 -05:00
Fedor Indutny
0ccc607100
Fix race conditions in challenge test
2021-05-07 13:59:46 -07:00
Fedor Indutny
470eab8352
Fix race condition in challenge test
2021-05-07 09:10:40 -07:00
Fedor Indutny
986d8a66bc
Show challenge when requested by server
2021-05-05 17:09:29 -07:00
Evan Hahn
8ef14e6f39
When incoming message should've been sealed sender, reply with profile key
2021-05-05 09:39:16 -07:00
Scott Nonnenberg
c5c667ab1b
Left pane: Ensure pinned conversations show only once
2021-05-04 17:16:59 -05:00
Scott Nonnenberg
fb00464033
Fine-tuning of conversation lists (compose, forward, left pane)
2021-05-04 09:17:32 -07:00
Evan Hahn
736075322c
Render disappearing message timers generically
2021-05-03 16:24:40 -07:00
Evan Hahn
05703c2719
Blur avatars of unapproved conversations
2021-04-30 14:40:25 -05:00
Evan Hahn
bbd7fd3854
Initial support for job queue
2021-04-29 18:02:27 -05:00
Evan Hahn
1238cca538
Ensure group details screen has the latest data
2021-04-29 14:27:38 -07:00
Evan Hahn
e7ef3de6d0
Profile name spoofing dialog
2021-04-29 14:27:35 -07:00
Scott Nonnenberg
86d2a4b5dd
decrypt/encrypt with libsignal-client, remove libsignal-protocol-javascript
2021-04-29 14:27:35 -07:00
Evan Hahn
37ff4a1df4
Fix 1:1 message to/from in search results
...
See [#5161 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5161
2021-04-29 14:27:35 -07:00
Josh Perez
353becffac
Various fixes for message forwarding
2021-04-28 15:44:48 -05:00
Josh Perez
d203f125c6
Adds message forwarding
2021-04-27 18:35:35 -04:00
Josh Perez
5e2d48cc2f
Do not populate left pane on initial link
2021-04-20 19:16:49 -04:00
Quentin Hibon
773fe1521c
fix
2021-04-15 21:40:19 +02:00
Quentin Hibon
4568e4904a
Update ts/test-both/state/selectors/search_test.ts
...
Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2021-04-15 21:26:46 +02:00
Quentin Hibon
58d22048b9
Update ts/test-both/state/selectors/search_test.ts
...
Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2021-04-15 21:26:39 +02:00
Quentin Hibon
38074374f4
Add test
2021-04-10 01:30:16 +02:00
Josh Perez
6c0acd09df
Sync mute state
2021-04-09 11:19:38 -05:00
Evan Hahn
f615b1a75f
Reject reactions with invalid number of graphemes
2021-04-08 23:53:18 -04:00
Josh Perez
9438b7b3fe
Fixes pinned conversations sync
2021-04-08 15:27:20 -04:00
Scott Nonnenberg
a1c534ec0c
Fix CDS fetches; use proper hashing mechanism
2021-04-07 14:27:40 -07:00
Evan Hahn
1a9c6b9385
Clean up iterable utilities
2021-04-05 18:08:50 -04:00
Evan Hahn
bd48dea613
Add enum parser utility
2021-04-05 18:08:50 -04:00
Kasia Kosturek
d20cc59a26
getInitials: handle more cases
...
See [#5029 ]][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5029
2021-04-02 15:30:49 -05:00
rhklee
8b51f174d8
Remove backslash from search queries
...
Co-authored-by: Lee Randy <randy.lee@metronom.com>
Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
See [#5053 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5053
2021-04-02 15:29:54 -05:00
Fedor Indutny
6f7ecb141f
filterAndSortContacts should tokenize
2021-03-29 17:19:59 -05:00
Evan Hahn
f157ce2eec
Add "_test" suffix to environment test file
2021-03-29 16:26:49 -05:00
Fedor Indutny
746e99b8c2
Flush all watchers on empty queue
2021-03-25 17:00:03 -07:00
Evan Hahn
b44bf33256
Move audioPlayer duck test
2021-03-24 16:08:44 -07:00
Fedor Indutny
919259c960
Use non-subtle crypto in libsignal-protocol
2021-03-23 17:50:02 -07:00
Fedor Indutny
a75402d290
Add timestamp utilities with helpful names
2021-03-22 16:08:52 -05:00
Evan Hahn
b725ed2ffb
Refresh profiles on app start (at most every 12 hours)
2021-03-19 16:57:36 -04:00
Fedor Indutny
fd8339e2ff
Fix for UnregisteredUserError handling when fetching UUIDs
2021-03-19 16:57:36 -04:00
Evan Hahn
45dbe4d145
In left pane and "add group member", sort E164-only contacts to the bottom
2021-03-19 16:57:35 -04:00
Evan Hahn
b81a52bbdd
New Group administration: Add users
2021-03-19 16:57:35 -04:00
Fedor Indutny
12d7f24d0f
New UI for audio playback and global audio player
...
Introduce new UI and behavior for playing audio attachments in
conversations. Previously, playback stopped unexpectedly during window
resizes and scrolling through the messages due to the row height
recomputation in `react-virtualized`.
With this commit we introduce `<GlobalAudioContext/>` instance that
wraps whole conversation and provides an `<audio/>` element that
doesn't get re-rendered (or destroyed) whenever `react-virtualized`
recomputes messages. The audio players (with a freshly designed UI) now
share this global `<audio/>` instance and manage access to it using
`audioPlayer.owner` state from the redux.
New UI computes on the fly, caches, and displays waveforms for each
audio attachment. Storybook had to be slightly modified to accomodate
testing of Android bubbles by introducing the new knob for
`authorColor`.
2021-03-19 16:57:35 -04:00
Evan Hahn
9f5335b854
New Group administration: update title and avatar
2021-03-19 16:57:35 -04:00
Evan Hahn
ecc04d36de
Disallow group names longer than 32 extended graphemes
2021-03-19 16:57:35 -04:00
Josh Perez
3cc6c5f5ad
Fix for missing replacement text in bodyRanges
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
c73e35b1b6
Support for translating Desktop sessions to libsignal-client sessions
2021-03-19 16:57:35 -04:00
Josh Perez
44dfd28017
Fix message retry and search results with mentions
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
9e2411ce30
Remove getIsConversationEmptySelector in favor of messageCount
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
7e629edd21
Move SignalProtocolStore to TypeScript
2021-03-19 16:53:52 -04:00
Evan Hahn
5de4babc0d
Support for creating New Groups
2021-03-19 16:53:52 -04:00
Evan Hahn
06fb4fd0bc
Add "new conversation" composer for direct messages
2021-03-19 16:53:51 -04:00
Evan Hahn
eb203ba929
Disable search keyboard shortcuts when main header isn't shown
2021-03-19 16:53:51 -04:00
Evan Hahn
bc37b5c907
Add an assertion when updating conversations; update cleanData
2021-02-04 11:54:03 -08:00
Scott Nonnenberg
a48b3e381e
Support for joining New Groups via invite links
2021-01-29 14:16:48 -08:00
Josh Perez
c0510b08a5
Introduce conversation details screen for New Groups
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
Co-authored-by: Sidney Keese <me@sidke.com>
2021-01-29 13:19:24 -08:00
Scott Nonnenberg
12c44d40a8
makeLookup: Allow for key of zero
2021-01-27 14:39:45 -08:00
Evan Hahn
a8787e7c9e
Convert logging infrastructure to TypeScript
2021-01-27 13:13:33 -08:00
Evan Hahn
8a72607fa7
Prefer type
to interface
and add an ESLint rule
2021-01-25 18:29:00 -08:00
Evan Hahn
fbfcdbf84e
Group calling: add overflow area
2021-01-25 18:28:59 -08:00
Scott Nonnenberg
cbc6c29479
Finish in-redux conversation lookups, getPropsForSearchResult moved
2021-01-25 18:28:58 -08:00
Evan Hahn
8e7379a591
Move getDefaultConversation
into a shared test folder
2021-01-25 18:28:58 -08:00
Evan Hahn
8c25ffd6f5
Link previews: show full size image less often
2021-01-11 14:23:09 -08:00
Evan Hahn
55091edefa
Avoid unnecessary re-render on CHECK_NETWORK_STATUS
2020-12-17 12:12:52 -05:00
Evan Hahn
db0ebc5779
Update group membership for a group call when it changes
2020-12-09 15:21:34 -08:00
Evan Hahn
4aaf08ba49
Minor: fix year in license comment
2020-12-08 15:02:32 -05:00
Evan Hahn
0c039bf431
Add group calling events to the message timeline
2020-12-07 14:43:19 -06:00
Evan Hahn
a2f285d243
Put group calling behind a remote feature flag
2020-12-07 14:35:14 -06:00
Evan Hahn
a9367f48f1
Dark theme for calling device selection
2020-12-04 15:03:01 -08:00
Scott Nonnenberg
6832b8acca
Timeline: repair oldest/newest metrics if we fetch nothing
2020-12-04 14:41:40 -06:00