Commit Graph

50 Commits

Author SHA1 Message Date
Jamie Kyle eb10aafd7c
tsc:allowUnreachableCode, eslint:no-unreachable, assert->assertDev 2022-09-15 13:17:15 -06:00
Fedor Indutny 6b231346d9
Fix management of selectedMessage in redux 2022-06-23 09:12:17 -07:00
Scott Nonnenberg 0ba6a0926e
Support for incoming gift badges 2022-05-11 13:59:58 -07:00
Scott Nonnenberg 302604f67e
Restore ability to message someone from embedded contact 2022-04-11 17:26:09 -07:00
Fedor Indutny d18ed40a23
Don't pass full group to spoofing review dialog 2022-03-24 14:46:17 -07:00
Scott Nonnenberg 703bb8a3a3
Introduce new 'Block request' button in timeline 2022-03-15 17:11:28 -07:00
Scott Nonnenberg f217730b84
Support for people banned from joining groups via link 2022-03-14 18:32:07 -07:00
Evan Hahn fd72385b9f
`<Timeline>` only needs whether someone is typing, not who 2022-03-09 13:15:15 -06:00
Evan Hahn 944d60f40b
On conversation open, scroll to unread indicator if present 2022-03-08 14:05:05 -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
Scott Nonnenberg 0a52318be6
Delete for everyone: Track sends and show failure states 2022-03-04 11:22:31 -08:00
Evan Hahn 0c31ad25ef
Remove React Virtualized from `<Timeline>` 2022-03-03 14:23:10 -06:00
Evan Hahn 45393b1ca5
Fix timeline crash when deleting the oldest visible message 2022-02-07 10:54:15 -08:00
Evan Hahn babd61377b
Remove floating date header remote config flags 2022-01-27 13:50:01 -08:00
Evan Hahn f9440bf594
Timeline date headers 2022-01-26 17:05:26 -06:00
Evan Hahn e490d91cc4
Add badges to avatars in group dialogs 2021-11-20 09:41:21 -06:00
Evan Hahn f4e336836f
Add user badges to typing bubbles, refactor typing logic 2021-11-15 21:01:58 +01:00
Evan Hahn 5619eeca83
Upgrade Prettier to 2.4.1 2021-11-11 16:43:05 -06: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
Evan Hahn 35a54cdc02
Introduce a new design for the left pane 2021-10-12 16:59:08 -07:00
Josh Perez 5fdfa1c632
ConversationView in React 2021-10-05 09:47:06 -07:00
Fedor Indutny 5a57e2b704
Fix action propagation to timeline items 2021-09-12 19:36:41 -07:00
Evan Hahn bfa0bbf7da
Add "call back", "call again" buttons to timeline 2021-09-10 16:59:41 -07:00
Evan Hahn 84ac7dd2df
To fix Storybook, make `<Message>` take `renderReactionPicker` 2021-09-10 11:00:31 -07:00
Evan Hahn 70d059beeb
Keep reaction poppers visible at all times 2021-08-20 14:36:27 -05:00
Fedor Indutny 12c78c742f
Optimize rendering 2021-08-11 09:23:21 -07:00
Fedor Indutny 46b1e8d0e7
Cache onHeightChange property of message 2021-08-06 14:43:18 -07:00
Fedor Indutny 2cd4160422
Unify audio playback under App component 2021-06-29 12:58:29 -07:00
Scott Nonnenberg 68f1023946
Move message.getPropsForBubble and friends to selectors 2021-06-17 10:15:10 -07:00
Evan Hahn 36c15fead4
Group name spoofing warning 2021-06-01 16:30:25 -07:00
Evan Hahn 3da97268d7
<SmartTimeline> doesn't need to "filter" 3 of its smart components 2021-05-06 12:15:04 -07:00
Scott Nonnenberg cf1eb77ed8
Message Requests: Always open to top of conversation 2021-04-30 15:59:37 -07:00
Evan Hahn 05703c2719
Blur avatars of unapproved conversations 2021-04-30 14:40:25 -05:00
Evan Hahn e7ef3de6d0 Profile name spoofing dialog 2021-04-29 14:27:35 -07:00
Evan Hahn 77c306843d
Fix error on message details screen with audio messages 2021-03-24 15:06:12 -07: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 5de4babc0d Support for creating New Groups 2021-03-19 16:53:52 -04:00
Scott Nonnenberg 2b8ae412e0
New feature flag with ability to migrate GV1 groups 2020-12-01 10:42:35 -06:00
Evan Hahn 8bfaf598af Add license headers across the project 2020-11-04 13:03:13 -06:00
Sidney Keese c3ddedfde1 Reactions: skin tone support 2020-10-12 18:10:08 -04:00
Sidney Keese 2ade4acd52 Migrate util, types, state, sticker-creator to ESLint 2020-09-21 15:42:51 -04:00
Scott Nonnenberg 81cb7730a5
Message Requests improvements 2020-08-06 20:50:54 -04:00
Ken Powers 83574eb067 Message Requests 2020-07-30 13:08:44 -07:00
Ken Powers 5c6a474ec9
Disable skin tones for reaction emoji 2020-05-11 16:14:02 -07:00
Ken Powers 0865a5481c Pre-alpha: React with any emoji, behind flag 2020-05-05 14:18:46 -07:00
Scott Nonnenberg 20a892247f Keyboard shortcuts and accessibility 2019-11-13 16:53:42 -08:00
Scott Nonnenberg 5ebd8bc690 Virtualize Messages List - only render what's visible 2019-08-21 14:52:30 -07:00
Scott Nonnenberg c41bc53614 Refactor messages model; New timeline react components 2019-05-16 15:23:21 -07:00