Fedor Indutny
4347964030
Scope pino lines with filename
2025-06-16 11:59:31 -07:00
Scott Nonnenberg
f163ada463
New option: Disable automatic attachment downloads
2025-03-04 10:09:43 +10:00
Jamie Kyle
74b90a5cdd
Refactor StoryProgressSegment to have better controlled animations
2024-08-13 15:19:34 -07:00
Josh Perez
1f2cde6d04
Send edited messages support
...
Co-authored-by: Fedor Indutnyy <indutny@signal.org>
2023-04-20 09:31:59 -07:00
Jamie Kyle
5e647c55d1
Fully migrate to ICU
2023-03-29 17:03:25 -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
Alvaro
b483d26488
Fix i18n warning on empty string
2023-02-21 09:44:31 -08:00
Jamie Kyle
569b6e14a6
Add new eslint plugin to check for valid i18n keys
2023-01-05 14:43:33 -08:00
Dimitris Apostolou
3c80272673
Fix typos
2023-01-03 13:02:01 -08:00
Jamie Kyle
3705b959d6
Remove end year from licenses
2023-01-03 11:55:46 -08:00
Josh Perez
a80c6d89a8
Moves message details into React pane land
2022-12-21 15:44:23 -05:00
Fedor Indutny
ed271d92ea
Add no-misused/floating-promises lint rule
2022-12-21 10:41:48 -08:00
Scott Nonnenberg
1a68c3db62
conversation_view: Move the last of the small functions to redux
2022-12-20 22:25:10 -05:00
Fedor Indutny
98ef4c627a
Update eslint to 8.27.0
2022-11-17 16:45:19 -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
Jamie Kyle
eb10aafd7c
tsc:allowUnreachableCode, eslint:no-unreachable, assert->assertDev
2022-09-15 13:17:15 -06:00
Jamie Kyle
0086216c9d
Add eqeqeq rule but require == for null
2022-09-14 14:40:44 -07:00
Alvaro
dd12c4cba3
Fixed playback-speed button bug and updated layout
2022-08-31 14:42:09 -06:00
Alvaro
13046dc020
Added a playback speed button on voice notes
2022-08-18 11:43:44 -04:00
Fedor Indutny
decf65078c
Fix screen reader interaction with message audio
2022-04-25 14:12:22 -07:00
Josh Perez
3b5cc26fec
Adds logic around downloading stories
2022-03-28 18:10:08 -07:00
Evan Hahn
cc44dca32b
Left-align audio message countdown and right-align metadata
2022-03-09 15:45:18 -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
Fedor Indutny
46ddcc50f9
Update electron to 16.0.6
2022-01-03 17:43:42 -08:00
Fedor Indutny
fed84be0b6
Fix crashes when playing media on legacy OS
2021-12-10 15:27:42 -08:00
Evan Hahn
74fde10ff5
Prefer import type
when importing types
2021-10-26 14:15:33 -05:00
Josh Perez
65ddf0a9e8
Import log instead of using it off of window
2021-09-17 14:27:53 -04:00
Fedor Indutny
59ca63cd2e
Use audio.ended
in MessageAudio.tsx
2021-09-16 08:02:23 -07: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
Fedor Indutny
aa63aabbc6
Fix negative countdown for audio messages
2021-07-16 11:05:11 -07: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
05306c2d3d
Handle durationchange
events in MessageAudio
2021-05-24 09:30:50 -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
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
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
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
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