Commit graph

22 commits

Author SHA1 Message Date
Jamie Kyle
27b55e472d
Refactor smart components
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
2024-03-13 13:44:13 -07:00
Alvaro
99015d7b96
Voice notes drafts 2023-03-02 13:55:40 -07:00
Alvaro
3d4248e070
Fixes to voice notes playback 2023-02-28 06:07:40 -07:00
Alvaro
0e655ceeed
Voice notes mini-player 2023-02-24 15:18:57 -08:00
Jamie Kyle
3705b959d6
Remove end year from licenses 2023-01-03 11:55:46 -08:00
Fedor Indutny
9d8ad21819
Remove underscore 2022-11-29 16:53:39 -08:00
Alvaro
4445ef80eb
Implement group story reply deletion 2022-11-04 07:22:07 -06:00
Alvaro
458eb2ea81
Voice-note animation fixes 2022-10-03 17:43:44 -06:00
Alvaro
b4c9c3051b
Animated voice-note controls and used image x for playback rate 2022-09-19 17:28:10 -07:00
Alvaro
6cfe2a09df
Consecutive playback and per-conversation playback rate 2022-09-15 14:10:46 -06:00
Josh Perez
4e48d7792b
Use a hook for the ever-updating now 2022-03-08 13:11:11 -06:00
Evan Hahn
c527de0a8d
Collapse message bubbles when applicable 2022-03-08 08:32:42 -06:00
Evan Hahn
0c31ad25ef
Remove React Virtualized from <Timeline> 2022-03-03 14:23:10 -06:00
Evan Hahn
74fde10ff5
Prefer import type when importing types 2021-10-26 14:15:33 -05:00
Evan Hahn
b0750e5f4e
Show "unplayed" dot on incoming audio messages 2021-08-12 13:15:55 -05:00
Evan Hahn
14929fb408
Show "unplayed" dot on outgoing audio messages 2021-07-27 10:42:25 -05:00
Evan Hahn
831ec98418
Audio messages: move countdown under waveform 2021-07-09 13:27:16 -07:00
Fedor Indutny
2cd4160422
Unify audio playback under App component 2021-06-29 12:58:29 -07: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
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
05f59f3db1 Add download button and pending spinner for audio messages 2021-03-19 16:57:36 -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