Fedor Indutny
d8417e562b
Do not display call buttons for SMS-only convo
2021-05-25 15:30:57 -07:00
Scott Nonnenberg
07c1505782
Force load of newer/older messages if, on load, all messages visible
2021-05-25 11:34:34 -07:00
Fedor Indutny
05306c2d3d
Handle durationchange
events in MessageAudio
2021-05-24 09:30:50 -07:00
Scott Nonnenberg
e859fcd4b4
Partially revert "Clean up inviteLink handling, harden compose input"
2021-05-21 11:32:10 -07:00
Scott Nonnenberg
f6bc4dfe25
Enable click on draft quotes, fetch groups from contact modal
2021-05-21 10:27:28 -07:00
Josh Perez
ceffc2380c
Add screensharing behind a feature flag
2021-05-20 17:37:19 -07:00
Scott Nonnenberg
be087c3498
Ensure that context is always provided for error logs
2021-05-20 17:37:18 -07:00
Josh Perez
25f271e61c
Always render dialogs in left pane
2021-05-20 17:37:17 -07:00
Fedor Indutny
80da8bb47b
Display SMS/MMS disclaimer in empty search results
2021-05-20 17:37:17 -07:00
Fedor Indutny
8fa5ea6b2b
Add outlines for MessageAudio buttons
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
a8346c490e
Fix inaccurate numbers on group details screen
2021-05-20 17:37:07 -07:00
Fedor Indutny
b1d49f7b3e
Do not compute waveform for a long audio
2021-05-12 12:18:02 -07:00
Evan Hahn
09d7a253af
Fix non-default disappearing message timers on group details screen
2021-05-11 12:05:02 -05:00
Josh Perez
24b7790829
One SearchInput to rule them all
2021-05-10 20:50:43 -04:00
Scott Nonnenberg
efaaafa370
A few small bug fixes
2021-05-10 15:38:18 -07:00
Evan Hahn
c68d65ea0b
Center non-square avatar pictures
2021-05-10 12:50:04 -05:00
Evan Hahn
d28678dbf9
Make it more difficult to blur avatars
2021-05-07 17:21:10 -05:00
Scott Nonnenberg
fc12d02a8d
Clean up inviteLink handling, harden compose input
2021-05-06 12:06:20 -07:00
Fedor Indutny
986d8a66bc
Show challenge when requested by server
2021-05-05 17:09:29 -07:00
Evan Hahn
7afbbb3a4c
Fix render loop in <ConversationHero>
2021-05-05 17:35:32 -05:00
Evan Hahn
7c2f233384
Fix blurred avatars in message details
2021-05-04 16:19:36 -07:00
Scott Nonnenberg
f0b3c43313
Fix a number visual bugs with message forwarding
2021-05-04 09:57:14 -05:00
Evan Hahn
736075322c
Render disappearing message timers generically
2021-05-03 16:24:40 -07:00
Evan Hahn
857a6ab50d
Main header: ensure that your avatar is unblurred
2021-04-30 16:06:18 -07:00
Scott Nonnenberg
cf1eb77ed8
Message Requests: Always open to top of conversation
2021-04-30 15:59:37 -07:00
Evan Hahn
fe772af251
Show "no groups in common" warning for relevant message requests
2021-04-30 15:58:57 -07:00
Evan Hahn
05703c2719
Blur avatars of unapproved conversations
2021-04-30 14:40:25 -05:00
Evan Hahn
1238cca538
Ensure group details screen has the latest data
2021-04-29 14:27:38 -07:00
Fedor Indutny
caf1d4c4da
GIF attachments
2021-04-29 14:27:37 -07:00
Evan Hahn
5f17d01f49
Take an author object in <Message>
2021-04-29 14:27:37 -07:00
Evan Hahn
bca664b5d9
Make <Avatar> blurrable
2021-04-29 14:27:37 -07:00
Evan Hahn
86a01f289d
<Message> shouldn't be a PureComponent. It re-renders every time
2021-04-29 14:27:37 -07:00
Evan Hahn
a5a64f354f
Upgrade Prettier from v2.1.2 to v2.2.1
2021-04-29 14:27:36 -07:00
Evan Hahn
2bae019f1a
Modernize <Avatar> component code, fix an overflow bug
2021-04-29 14:27:35 -07:00
Evan Hahn
e7ef3de6d0
Profile name spoofing dialog
2021-04-29 14:27:35 -07:00
Evan Hahn
885ff5fe42
Show common groups in contact modal
2021-04-29 14:27:35 -07:00
Josh Perez
d91a4ef3a6
Allow forward of image attachment with no text
2021-04-28 15:23:04 -07:00
Josh Perez
6eba9350be
Do not filter body ranges if there are none
2021-04-28 14:48:52 -07:00
Fedor Indutny
965c635905
Fix z-index of AvatarPopup and limit max width
2021-04-28 15:50:42 -05:00
Josh Perez
353becffac
Various fixes for message forwarding
2021-04-28 15:44:48 -05:00
Scott Nonnenberg
3face767aa
Group settings: on block and leave, don't delete
2021-04-28 16:27:16 -04:00
Josh Perez
d203f125c6
Adds message forwarding
2021-04-27 18:35:35 -04:00
Josh Perez
e75bba1c52
Replaces ConfirmationModal with ConfirmationDialog
2021-04-27 15:29:59 -04:00
Josh Perez
5e2d48cc2f
Do not populate left pane on initial link
2021-04-20 19:16:49 -04:00
Fedor Indutny
0b969f3f42
Improve MessageAudio peaks computation
...
There are two parts to this change:
1. The computation of peaks is moved from `MessageAudio` to the
`GlobalAudioContext` and thus we can limit the concurrency of the
computations (`p-queue`!) and de-duplicate the computations as well
2. While the peaks are computed the component has to display spinning
animation instead of empty waveform and unclickable UI.
2021-04-15 14:02:24 -07:00
Evan Hahn
ea6562b7ac
Merge branch 'hiqua-no_lower_limit_query' into next-beta
2021-04-14 14:14:57 -07:00
Quentin Hibon
08905e1386
Allow one-character search queries
...
Related: #5180 .
2021-04-14 14:14:56 -07:00
Evan Hahn
62f1a42c25
Add reusable <Modal> component, use with <Alert>
2021-04-13 09:20:02 -05:00
Josh Perez
6c0acd09df
Sync mute state
2021-04-09 11:19:38 -05:00
Evan Hahn
95482fbf31
Add affirmative and destructive secondary button variants
2021-04-08 23:53:18 -04:00
Evan Hahn
7ae25590e6
Add conversation hero to <Timeline> stories
2021-04-08 23:53:18 -04:00
Evan Hahn
8fe1be8678
Remove ability to set or read author E164 for new quotes
2021-04-08 23:51:54 -04:00
Evan Hahn
c8dc8a7398
Don't let users leave groups if they're the only admin
2021-04-05 18:08:50 -04:00
Evan Hahn
d81aaf654f
Improve left pane UI when loading search results
2021-04-05 18:08:50 -04:00
Evan Hahn
f05d45ac9b
Pressing Esc in left pane composer menu should go back
2021-04-05 18:08:50 -04:00
Evan Hahn
2d35fa8f57
Fix replies to image-only messages
2021-04-05 18:08:50 -04:00
Evan Hahn
130dac527f
Add types for <ConversationHeader>'s mute options
2021-04-05 18:08:50 -04:00
Evan Hahn
c711fbe0c0
In conversation hero, show “No group in common” if you have no common groups and no phone number
2021-04-05 18:08:50 -04:00
Jost Schulte
73a8c3ff95
Fix pip sliding down on click ( #5147 )
...
* Fix pip sliding down on click
* Add top margin to PiP intial position
Co-authored-by: Jost Schulte <jost@jibble.io>
2021-04-05 18:06:11 -04:00
Kevin J. Sung
79c94dafd5
set positionFixed in emoji Popper to prevent flipping
2021-04-05 18:05:23 -04:00
Fedor Indutny
79acb7513d
Fix delivery status overflow in sticker messages
2021-03-29 14:34:47 -07:00
Evan Hahn
afe135df0c
Hide long message attachments in quotes
2021-03-25 11:36:50 -07:00
Evan Hahn
6f404648d7
Prefer author ID to phone number for message menu trigger ID
2021-03-24 16:42:08 -07:00
Fedor Indutny
7a9a4a1404
Clicking first bars of the waveform should rewind
...
It is practically impossible to rewind audio prior to this commit. With
this commit - clicking first two bars will rewind the audio to its very
start instead of updating its current play time to a specific non-zero v
alue.
2021-03-24 16:08:57 -07:00
Evan Hahn
77c306843d
Fix error on message details screen with audio messages
2021-03-24 15:06:12 -07: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
d6063d71e5
Change duration to countdown in MessageAudio
...
Message Audio UI should display remaining time not the duration of the
audio.
2021-03-22 11:15:59 -07:00
Josh Perez
e58975ec8b
Fix for multiple at-mentions
2021-03-19 16:57:36 -04:00
Fedor Indutny
d7ec22fb0b
Save attachment button should download attachment if needed
2021-03-19 16:57:36 -04:00
Evan Hahn
c97bb0feee
Auto-scroll the left pane less frequently
2021-03-19 16:57:36 -04:00
Evan Hahn
358838a6bc
Style disabled <GroupTitleInput>
2021-03-19 16:57:36 -04:00
Fedor Indutny
3eaa47ec72
Remove useless logic in MessageAudio
...
`isLoading` was initially used to avoid duplicate loads of the audio on
re-renders, but this has to be handled in GlobalAudioContext not in
MessageAudio.
2021-03-19 16:57:36 -04:00
Fedor Indutny
f41ffda3e0
Update types: attachments may not have url
property
2021-03-19 16:57:36 -04:00
Fedor Indutny
05f59f3db1
Add download button and pending spinner for audio messages
2021-03-19 16:57:36 -04:00
Fedor Indutny
529dd1a3cc
Show download button for pending Link Preview images
2021-03-19 16:57:36 -04:00
Evan Hahn
e09fb6cce4
Improve types in ConversationView#showConversationDetails
2021-03-19 16:57:35 -04:00
Evan Hahn
746e6781ae
Fix styling for left pane: muted conversations and message requests
2021-03-19 16:57:35 -04:00
Josh Perez
d5f2492ce5
Fine tune the conversation load experience
2021-03-19 16:57:35 -04:00
Evan Hahn
f7d4f84736
Enable New Group settings for everyone; remove desktop.gv2Admin feature flag
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
8c9e556a22
Don't use useMemo()
for AudioContext/Audio/Cache
...
`useMemo()` doesn't guarantee that the value won't be recomputed during
re-renders. Unfortunately, every time `AudioContext` is instantiated -
there is an audible click. This click happens during the change between
conversations and is very annoying.
Move both `AudioContext` instance to the
GlobalAudioContext's top-level declarations, and `Audio`/`WaveformCache`
to `useRef()`s.
2021-03-19 16:57:35 -04:00
Evan Hahn
80e3582d01
Trim group titles when creating or editing
...
* Trim group titles when creating or editing
* Trim title in more places
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
Josh Perez
1ca4960924
Changes display of your own name to "You"
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
729d808f62
macOS: make conversation and main header draggable
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
Evan Hahn
934e0fa415
In <ContactPills>, use new "scrollToBottom" helper
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
Evan Hahn
5de4babc0d
Support for creating New Groups
2021-03-19 16:53:52 -04:00
Evan Hahn
99bcad0bd9
Use missingCaseError in <CallingPipRemoteVideo>
2021-03-19 16:53:51 -04:00
Evan Hahn
8c951602b7
Add conversation header button hover states
2021-03-19 16:53:51 -04:00
Josh Perez
12bba24dbd
Improvements to Group Settings screen
2021-03-19 16:53:51 -04:00
Evan Hahn
dfa5005e7d
Update conversation header design
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
2aa2aca9f2
A few bug fixes
2021-03-19 16:53:51 -04:00
Scott Nonnenberg
254cddc514
Move getPlaceholder to component that needs it
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
Evan Hahn
8ee3bd9687
Create <Button> component and use it in <GroupV2JoinDialog>
2021-03-19 16:53:51 -04:00