Evan Hahn
77c306843d
Fix error on message details screen with audio messages
2021-03-24 15:06:12 -07:00
Scott Nonnenberg
2d8f237b76
Send to just-removed folks in groupv2 removal operations
2021-03-24 14:28:55 -07:00
Fedor Indutny
7c4e4c97e7
Cache identicons to avoid performance hit on app start
2021-03-24 08:59:56 -05:00
Fedor Indutny
9fa3359477
Mark attachment as corrupted if audio load failed
...
Sending corrupted audio should not leave user with non-functional
UI. Mark attachment as corrupted and show generic attachment UI for it
instead.
2021-03-22 11:51:53 -07:00
Fedor Indutny
6fec6b2646
Fix attachments not loading for stickers/long messages
2021-03-19 16:57:36 -04:00
Evan Hahn
850e759579
Keeping profile data around longer in the face of errors
2021-03-19 16:57:36 -04:00
Evan Hahn
b725ed2ffb
Refresh profiles on app start (at most every 12 hours)
2021-03-19 16:57:36 -04:00
Scott Nonnenberg
98c9992705
Fix out-of-order message changes; remove isGroupV2, and double-update
2021-03-19 16:57:36 -04:00
Josh Perez
62e04a1bbd
Fix for unread syncs and ooo reactions
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
246ca86319
Chat Session Refreshed: Include schemaVersion to prevent later upgrade
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
Evan Hahn
b81a52bbdd
New Group administration: Add users
2021-03-19 16:57:35 -04:00
Josh Perez
0bd3c78187
Do not batch single saveMessage calls after start-up
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
Josh Perez
468d491d34
Optimizations to the performance improvement changes
2021-03-19 16:57:35 -04:00
Josh Perez
c313514f34
Auto healing unreferenced quotes
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
Josh Perez
230604b451
Fix for storage service profileSharing setting
2021-03-19 16:57:35 -04:00
Josh Perez
d82ce07942
Improve cold start performance
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
Evan Hahn
5de4babc0d
Support for creating New Groups
2021-03-19 16:53:52 -04:00
Fedor Indutny
18fb2b806e
Remove notification on reaction remove/change
2021-03-19 16:53:51 -04:00
Josh Perez
12bba24dbd
Improvements to Group Settings screen
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
d0e3a2ce29
background.ts/conversation_view.ts modules, Whisper.View/ToastView in TS
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
2aa2aca9f2
A few bug fixes
2021-03-19 16:53:51 -04:00
Evan Hahn
06fb4fd0bc
Add "new conversation" composer for direct messages
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
98e7e65d25
Automatic session reset
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
bc0f4387fe
Backwards compatibility updates for libsignal-client
2021-02-12 10:38:49 -08:00
Scott Nonnenberg
2957735a86
getMembersCount: Return undefined when conversation has no members
2021-02-09 18:00:16 -06:00
Scott Nonnenberg
089e2864b3
Reduce unnecessary or overly verbose logging
2021-02-04 11:39:07 -08:00
Evan Hahn
8f1bb6f087
Don't render links (or link previews) for blocked or unapproved conversations
2021-02-02 11:09:53 -06:00
Josh Perez
a096220990
Do not download media if in call
2021-01-29 14:58:28 -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
Josh Perez
1b38db2d79
Fixes rendering of about bio
2021-01-27 19:18:50 -05:00
Josh Perez
258bd55dd2
Show about info from contact profiles
2021-01-25 18:29:01 -08:00
Evan Hahn
9f6e9ba47d
Add some types to window and window.Signal
2021-01-25 18:29:00 -08:00
Evan Hahn
8a72607fa7
Prefer type
to interface
and add an ESLint rule
2021-01-25 18:29:00 -08:00
Evan Hahn
904cb24cc4
Fix a typo in comment
2021-01-25 18:28:59 -08:00
Evan Hahn
12dbd38cb9
Clean up migrateColor utility
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
Scott Nonnenberg
be9721c72d
Don't change left pane preview or order when someone leaves group
2021-01-20 11:31:44 -06:00
Scott Nonnenberg
9f81b4157b
Also use sent_at whenever we query database with received_at
2021-01-19 17:35:11 -08:00
Scott Nonnenberg
8116a8561d
Show progress dialog during delete
2021-01-12 18:42:15 -06:00
Scott Nonnenberg
0506b79f6b
Quotes: Use authorId when navigating to original message
2020-12-11 12:06:04 -06:00
Scott Nonnenberg
3f58a9b762
Clean up UUID-handling to prepare for future
2020-12-09 17:26:37 -05:00
Evan Hahn
496bdec35d
Fix duplicate timeline items for group call events
2020-12-09 15:57:34 -05:00
Evan Hahn
159e2eae55
Fix lint warning in Conversation model
2020-12-08 17:29:13 -05: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
Scott Nonnenberg
b3c161f484
Migration: Use pendingMember roles, better 'you were invited'
2020-12-01 15:45:39 -08:00
Scott Nonnenberg
2b8ae412e0
New feature flag with ability to migrate GV1 groups
2020-12-01 10:42:35 -06:00
Josh Perez
c54df8be87
Fixes rebase/lint
2020-11-23 15:00:40 -05:00
Scott Nonnenberg
4bf5a24efb
Migration: Ensure that groupId lookup is kept up to date
2020-11-23 14:48:12 -05:00
Scott Nonnenberg
2c69f2c367
Support for GV1 -> GV2 migration
2020-11-23 14:48:12 -05:00
Scott Nonnenberg
26884432a2
Update TypeScript, Prettier and typescript-eslint for new TypeScript 3.8 syntax
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
Scott Nonnenberg
3ee830ae63
Prevent send and show toast for invalid conversations
2020-11-16 15:34:41 -06:00
Scott Nonnenberg
2977c0ca3d
Message Requests: Show blurhash for pending stickers
2020-11-12 16:22:40 -05:00
Scott Nonnenberg
0c6f4248f3
conversation.applyMessageRequestResponse: Always save at the end
2020-11-12 14:03:07 -06:00
Chris Svenningsen
d593f74241
New contact popup when clicking on group member or avatar
2020-11-11 09:36:05 -08:00
Scott Nonnenberg
1d1fccd96f
message.setToExpire: Log start timestamp, log before save
2020-11-11 10:21:06 -06:00
Scott Nonnenberg
a5cfebe87a
Conversation.setMarkedUnread: Only captureChange if value changed
2020-11-10 09:53:34 -06:00
Scott Nonnenberg
d4d9688447
Ensure authorUuid is set in outgoing quotes
2020-11-06 13:06:21 -06:00
Chris Svenningsen
53c89aa40f
Send @mentions
2020-11-04 13:03:13 -06:00
Sidney Keese
cfc3c123bc
Update unread count when marking as unread
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
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
Evan Hahn
decc93532b
Hide call buttons when on call
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
Scott Nonnenberg
18c71b291c
Fix left pane draft display and GV2 typing indicators
2020-11-03 16:16:20 -08:00
Scott Nonnenberg
e8759fc81b
Fix out-of-order applications of reaction and delete-for-everyone
2020-11-01 09:06:41 -06:00
Scott Nonnenberg
05f905fd10
A few small bugfixes
2020-10-30 10:56:03 -07:00
Scott Nonnenberg
cd9aee84f5
Always share profile on send; no profile sharing UI if no messages
2020-10-28 17:40:50 -07:00
Scott Nonnenberg
8eea20ea91
Reliability fixes for conversation formatting and message send
2020-10-28 14:54:33 -07:00
Scott Nonnenberg
fa2d300714
Show 'accept invite UI' for re-invite, calm progress spinner
2020-10-26 15:55:27 -07:00
Scott Nonnenberg
5c0fcad6b1
Properly prepare, await and hand response for sync message send
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
c4de9436f3
Fix error thrown on message retry
2020-10-22 10:32:23 -07:00
Josh Perez
df2fa3c7b1
updateLastMessage: Use MessageController for latest data
2020-10-20 16:26:58 -07:00
Chris Svenningsen
fdc3476106
Fix a few pinned chat sync issues
2020-10-15 18:59:45 -04:00
Scott Nonnenberg
e8664213d3
Reactions: Don't apply to messages with errors
2020-10-15 18:58:50 -04:00
Scott Nonnenberg
ac60d5db57
Small fix to ensure spinner and error dialog show properly
2020-10-15 15:03:08 -04:00
Josh Perez
fac1f26ad2
Better logging for pin/unpin
2020-10-15 14:35:57 -04:00
Scott Nonnenberg
75c7c526a6
setProfileKey: Drop profileAvatar when we get new profileKey
2020-10-14 11:50:17 -05:00
Scott Nonnenberg
913dbd9e7e
Errors: Associate by conversationId, properly persist to database
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
523843f30e
Proper styling for View Once messages which are deleted for everyone
2020-10-12 18:10:08 -04:00
Evan Hahn
0d83076799
Use more exact type for addCallHistory
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
Evan Hahn
4206f1c463
Remove type cast from ConversationModel#isMe
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
d51a0b5ece
GroupsV2: Better group invite behavior
2020-10-12 18:10:08 -04:00
Evan Hahn
b9ff4f07d3
Remove unnecessary non-null assertion from Message#send
2020-10-12 18:10:08 -04:00
Scott Nonnenberg
ada70c4895
handleDataMessage: Don't drop messages for empty GroupV1 groups
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
Josh Perez
9510fd1eec
Cleans up mute state after mute expires
2020-10-12 18:10:08 -04:00
Chris Svenningsen
7b15bddfc9
Bring back conversation.leaveGroup for GV1 scenarios
2020-10-12 18:10:08 -04:00
Josh Perez
04eb7bc995
Delete @mentions on DOE
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
Sidney Keese
866217a724
Delete For Everyone Send
...
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
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
bb3ab816dd
Remove unnecessary non-null assertion
2020-10-12 18:10:08 -04:00
Evan Hahn
bdd71e4898
Support APNGs in Sticker Creator
2020-10-12 18:10:07 -04:00
Scott Nonnenberg
b91107efbc
Conversation.addSingleMessage: Use queue to maintain incoming order
2020-10-12 18:10:07 -04:00
Scott Nonnenberg
d39ede068a
Two small bugfixes
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