Commit graph

972 commits

Author SHA1 Message Date
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
Scott Nonnenberg
98e7e65d25 Automatic session reset 2021-03-19 16:53:51 -04:00
Evan Hahn
eb203ba929 Disable search keyboard shortcuts when main header isn't shown 2021-03-19 16:53:51 -04:00
Evan Hahn
3306c82992 Fix "URI malformed" crashes on Windows 2021-02-22 14:01:40 -08:00
Josh Perez
34285054f6
Manual download of attachments with no blurHash 2021-02-11 17:50:11 -08:00
007
062a1f7dd9
Fix message input emoji focus close (#4727) 2021-02-04 14:37:47 -08:00
Idan Moral
cd2c6351fc
Fixed a comment typo in Linkify.tsx (#4825) 2021-02-04 14:30:21 -08:00
Scott Nonnenberg
2f90d6aca9
Manually manage full-text search table 2021-02-04 12:46:55 -08:00
Evan Hahn
73a304faba
Add aria-label to incoming call bar buttons 2021-02-04 11:51:40 -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
267ae80442
UI fixes for conversation details screen 2021-02-01 14:57:42 -08: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
Evan Hahn
1268945840
Fix typing bubble in group chats 2021-01-27 19:41:41 -08:00
Josh Perez
1b38db2d79
Fixes rendering of about bio 2021-01-27 19:18:50 -05:00
Evan Hahn
1da724edf2
Fix missing avatars in groups 2021-01-27 13:15:43 -08:00
Josh Perez
258bd55dd2 Show about info from contact profiles 2021-01-25 18:29:01 -08:00
Evan Hahn
932e44e3bf Don't let quote thumbnails get taller than the quote itself 2021-01-25 18:29:01 -08:00
Evan Hahn
8a72607fa7 Prefer type to interface and add an ESLint rule 2021-01-25 18:29:00 -08:00
Scott Nonnenberg
d1355d5874 Show 'you were removed from group' if dropped during migration 2021-01-25 18:29:00 -08:00
Evan Hahn
fd7b18e382 Properly handle sending videos which cannot be played locally 2021-01-25 18:29:00 -08:00
Evan Hahn
ffc5e9ef9b Remove obsolete <Message> story 2021-01-25 18:29:00 -08:00
Evan Hahn
b281420a40 Group calling: add speaker view 2021-01-25 18:28:59 -08:00
Evan Hahn
fbfcdbf84e Group calling: add overflow area 2021-01-25 18:28:59 -08:00
Evan Hahn
8e1391c70c Share group calling frame buffers to reduce memory usage 2021-01-25 18:28:59 -08:00
Evan Hahn
4c40d861cf Update link preview styles to better match designs 2021-01-25 18:28:59 -08:00
Evan Hahn
d0146a1613 Continue to show participants even when the blocked dialog is up 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
Josh Perez
2529e208c1 Move confirmation_dialog_view to ts and React
* Moves confirmation_dialog_view to ts and React

* showConfirmationDialog API
2021-01-25 18:28:58 -08:00
Scott Nonnenberg
272e6cc614 Group V2 invite links: in-conversation messages 2021-01-25 18:28:58 -08:00
Evan Hahn
8e7379a591 Move getDefaultConversation into a shared test folder 2021-01-25 18:28:58 -08:00
Evan Hahn
dd0ea6b3fe Upgrade TypeScript to the latest version, v4.1.3 2021-01-25 18:28:57 -08:00
Evan Hahn
8c25ffd6f5 Link previews: show full size image less often 2021-01-11 14:23:09 -08:00
Evan Hahn
0a35489696
Fix layout of "this person is in your contacts" tooltip 2021-01-11 13:43:21 -08:00
Evan Hahn
0c99604585 Minor: use clearTimeout instead of clearInterval in <Message> 2020-12-17 12:12:52 -05:00
Evan Hahn
1225d45ade Incremental improvements to header 2020-12-17 12:12:52 -05:00
Scott Nonnenberg
25f64a5140
Emoji: Search on short name first, eliminate short_names, proper sort 2020-12-14 10:15:55 -06:00
Evan Hahn
c87ffcd2e9
Call lobby: render local preview at camera's aspect ratio 2020-12-11 16:44:07 -08:00
Scott Nonnenberg
0506b79f6b
Quotes: Use authorId when navigating to original message 2020-12-11 12:06:04 -06:00
Josh Perez
016fc62b8b
When group call is empty you are now full screen 2020-12-10 10:40:34 -08:00
Josh Perez
e8e43a53b2
Fixes lint and TS warning 2020-12-08 19:48:02 -05:00
Josh Perez
456c51308f
Group Calling: You is in this call 2020-12-08 18:35:21 -05:00
Evan Hahn
1d8c7a368e
When joining an empty group call, the button should say "Start Call" 2020-12-08 17:28:44 -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
Evan Hahn
a9367f48f1
Dark theme for calling device selection 2020-12-04 15:03:01 -08:00
Scott Nonnenberg
56ae4a41eb
Emoji completion: reverse results to show higher results at the top 2020-12-04 13:27:51 -06:00
Evan Hahn
f65af33e6a
Remove any from GroupCallRemoteParticipant stories 2020-12-04 09:30:46 -08:00
Scott Nonnenberg
df4e7c1bd4
GroupV1Migration: Pass areWeInvited value, don't set to always true 2020-12-03 14:39:41 -06:00
Evan Hahn
511ad14137
Fix mutation in CallingParticipantList component 2020-12-03 09:24:44 -08:00
Scott Nonnenberg
673d07e176
GroupV1MigrationDialog: sort member list before display 2020-12-03 10:03:21 -06:00
Evan Hahn
c85ea814b1
Group calling participants refactor 2020-12-02 10:14:03 -08:00
Evan Hahn
d1866a0e5d
Group calling: tell RingRTC about our rendered resolutions for perf 2020-12-01 17:52:01 -08:00
Josh Perez
81cc8a1211
Group Calling: blocking participants
Co-authored-by: Evan Hahn <evanhahn@signal.org>
2020-12-01 19:30:25 -06:00
Evan Hahn
f3f2cb2b5e
Show active speaker in group calling PiP 2020-12-01 15:52:09 -08:00
Scott Nonnenberg
b3c161f484
Migration: Use pendingMember roles, better 'you were invited' 2020-12-01 15:45:39 -08:00
Evan Hahn
bb5036364e
Prevent calling PiP from going off-screen 2020-12-01 11:21:47 -08:00
Evan Hahn
c7290309d3
Minor: remove a typecast from <CallingPip> 2020-12-01 11:57:46 -05:00
Evan Hahn
4c78a6c57f
Show toast when group call is reconnecting 2020-12-01 11:46:44 -05:00
Scott Nonnenberg
2b8ae412e0
New feature flag with ability to migrate GV1 groups 2020-12-01 10:42:35 -06:00
Evan Hahn
d9e027a417 Minor: use enums instead of numbers in <CallScreen> stories 2020-11-30 13:54:12 -08:00
Evan Hahn
b2087cb8a2 Minor: rename a <CallingHeader> prop for clarity 2020-11-30 13:54:10 -08:00
Evan Hahn
abc21c8f45
Fix call header title for direct calls 2020-11-23 16:37:39 -05:00
Josh Perez
34574583b6 Group calling: fix participant hover state 2020-11-23 14:49:32 -05:00
Evan Hahn
daef1feae8 Add list of participants to the lobby, and add basic blocking for max participants 2020-11-23 14:49:32 -05:00
Josh Perez
f8b4862ed5 Participant list improvements 2020-11-23 14:49:32 -05:00
Josh Perez
7ca063a274 Scrollbar styles for participant list 2020-11-23 14:49:32 -05:00
Evan Hahn
6d53cb1740 Group calling: Peek into a group call 2020-11-23 14:49:32 -05:00
Josh Perez
8ff0ca9593 Force theming on tooltips for calling 2020-11-23 14:49:31 -05:00
Josh Perez
6a6f8e28ce Group Calling: show participant name on hover 2020-11-23 14:49:31 -05:00
Josh Perez
5cc7c9a66a Group Calling: Improve mute state styling 2020-11-23 14:49:31 -05:00
Josh Perez
c6eafbb8d5 Fix tooltip bugs 2020-11-23 14:49:31 -05:00
Evan Hahn
05205c77cf In conversation header, only show video button for group calls 2020-11-23 14:49:31 -05:00
Evan Hahn
94178717c9 Group call video rendering performance improvements 2020-11-23 14:49:31 -05:00
Evan Hahn
b366967ca5 Upgrade to RingRTC v2.8.2 RC.6 2020-11-23 14:48:12 -05:00
Scott Nonnenberg
2c69f2c367 Support for GV1 -> GV2 migration 2020-11-23 14:48:12 -05:00
Evan Hahn
b44cabe6f9 Calling: mirror local video in PiP and lobby 2020-11-23 14:45:44 -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
Evan Hahn
5758ed44ac Fix TypeScript error in <CallingPipRemoteVideo> 2020-11-23 14:45:44 -05:00
Josh Perez
1f0c091e13 Group calling enhancements 2020-11-23 14:45:44 -05:00
Evan Hahn
c6e4c1d1a9 Add audio mute indicator for local preview and group remote participants 2020-11-23 14:45:44 -05:00
Evan Hahn
022c4bd0f4 Initial group calling support 2020-11-23 14:45:44 -05:00
Vin Howe
e398520db0 Fix MIME check for JPEG in lightbox copy handler (#4643)
* Fix MIME check for JPEG in lightbox copy handler

* Handle both image/jpeg and non-standard image/jpg
2020-11-23 14:44:19 -05:00
Chris Svenningsen
24b70e6edd
CompositionInput: Proper RTL support 2020-11-20 16:03:16 -08:00
Sidney Keese
3bc68b20ea
Allow link-previews to trigger without needing a space
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-11-18 11:25:21 -06:00
Sidney Keese
7af2284c6b
Composition area: Only paste HTML that originated in Signal
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-11-11 17:01:45 -08:00
Chris Svenningsen
d593f74241
New contact popup when clicking on group member or avatar 2020-11-11 09:36:05 -08:00
Sidney Keese
5c810c65cc
Fix mention blot to enable native keyboard navigation
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-11-10 09:51:24 -08:00
Evan Hahn
957a1e0d07
Calling lobby: show your blurred avatar instead of other person's 2020-11-09 10:56:20 -08:00
Sidney Keese
91beef7797
Improve emoji blot and override clipboard behavior 2020-11-06 12:11:18 -08:00
Evan Hahn
3468de255d
Redux state: Allow multiple calls to be stored 2020-11-06 09:36:37 -08:00
Chris Svenningsen
fe298444fb
Bring up picker on backspace into mention 2020-11-05 13:18:42 -08:00
Chris Svenningsen
4def45b86a
Remove fuzzy @mention search 2020-11-04 14:04:48 -08:00
Evan Hahn
ca83281986
Add getOwn utility function 2020-11-04 11:56:49 -08:00
Evan Hahn
66da943f27
Call screen footer styling improvements 2020-11-04 11:56:03 -08:00
Chris Svenningsen
158ed4e455 Fix several composer bugs 2020-11-04 13:03:13 -06:00
Chris Svenningsen
53c89aa40f Send @mentions 2020-11-04 13:03:13 -06:00
Chris Svenningsen
ff18063f89 Ensure emoji picker can insert without composition box focus 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
Evan Hahn
184f7e1bf3 Remove ESLint no-continue rule 2020-11-04 13:00:41 -06:00
Evan Hahn
8073ccd32c Rewrite <CallScreen> component with hooks 2020-11-04 13:00:41 -06:00
Scott Nonnenberg
8fd4ff95db CompositionInput: Submit trimmed text instead of not submitting 2020-11-04 13:00:40 -06:00
Chris Svenningsen
13333e0b0d Fix enter/ctrl+enter in expanded composer
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-11-04 13:00:40 -06:00
Josh Perez
928bfcc221 Recent Media list: Round file sizes 2020-11-04 13:00:40 -06:00
Josh Perez
de45db255c Improve context menus 2020-11-04 13:00:40 -06:00
Sidney Keese
fbf93374c1 Replace Draft with Quill for composition area
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-11-04 13:00:40 -06:00
Josh Perez
7d29cb5edf Calling participants list 2020-11-04 13:00:40 -06:00
Evan Hahn
5275915072 Minor: fix calling button <Tooltip> warning 2020-11-04 13:00:40 -06:00
Evan Hahn
48e8cd0138 Remove unused callState prop from <CallingLobby> 2020-11-04 13:00:40 -06:00
Scott Nonnenberg
18c71b291c
Fix left pane draft display and GV2 typing indicators 2020-11-03 16:16:20 -08:00
Scott Nonnenberg
ab89c6c704 Lightbox.tsx: Fix formatting 2020-11-02 17:12:27 -08:00
Vin Howe
526ab4fe29
Add menu option for copying supported images in lightbox (#4614) 2020-11-02 16:47:46 -08:00
Scott Nonnenberg
05f905fd10
A few small bugfixes 2020-10-30 10:56:03 -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
04b7a29229 Modern profile sharing in 1:1 and GroupV1 groups 2020-10-26 15:48:44 -07:00
Evan Hahn
de5595514b
Ensure left pane properly handles just pinned/archived 2020-10-16 15:05:40 -07:00
Josh Perez
fb7c1e9030 Use a diff type of blur one that does not flicker 2020-10-15 19:00:36 -04:00
Sidney Keese
b199d5fe58 Stop event propagation on reaction skin tone selection 2020-10-15 19:00:02 -04:00
Josh Perez
8446b2dc61 Calling: Match buttons in other clients 2020-10-15 14:35:51 -04:00
Chris Svenningsen
fe7008b6b1 Do not show headers in LeftPane without multiple Conversation types 2020-10-15 14:35:44 -04:00
Josh Perez
1507dea351
Move calling duration timer into redux state 2020-10-13 14:02:43 -07:00
Chris Svenningsen
492bb283ee A few Delete For Everyone fixes
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-10-12 18:10:08 -04:00
Josh Perez
59a181bd30 Calling: Lobby 2020-10-12 18:10:08 -04:00
Scott Nonnenberg
b914b59969 Disable obsolete feature flags 2020-10-12 18:10:08 -04:00
Scott Nonnenberg
33ca9c48af SafetyNumberViewer: Disable for contacts with missing data 2020-10-12 18:10:08 -04:00
Scott Nonnenberg
d51a0b5ece GroupsV2: Better group invite behavior 2020-10-12 18:10:08 -04:00
Sidney Keese
c3ddedfde1 Reactions: skin tone support 2020-10-12 18:10:08 -04:00
Chris Svenningsen
6a7d45b6fc Pinned Chats 2020-10-12 18:10:08 -04:00
Evan Hahn
c57f7f1cdb Call requests: caller 2020-10-12 18:10:08 -04:00
Evan Hahn
2637d90df0 Minor: remove two anys from <CallScreen> 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
Josh Perez
a581f6ea81 Calling: Picture-in-picture 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
3ca547f3dd Only fuzzy linkify TLDs in place in 2010 2020-10-12 18:10:08 -04:00
Evan Hahn
313faab774 Outbound link previews 2020-10-12 18:10:08 -04:00
Scott Nonnenberg
6b3d5c19b3 GroupV2: Show better strings for 'added but previously invited' cases 2020-10-12 18:10:07 -04:00
Scott Nonnenberg
d39ede068a Two small bugfixes 2020-10-12 18:10:07 -04:00
Sidney Keese
dabab60f56 Remove TSLint
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
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
Scott Nonnenberg
4e223def29
Improved support for images with extreme ratios 2020-09-23 12:07:27 -04:00
Josh Perez
2d5292b2f3 Render quoted mentions as text 2020-09-21 15:42:51 -04:00
Scott Nonnenberg
bc3b61db1d Add p-queue timeouts; fix search crash; improve promise rejection logging 2020-09-21 15:42:51 -04:00
Scott Nonnenberg
9f9ce91a9c Allow for very tall portrait images in lightbox 2020-09-21 15:42:51 -04:00
Scott Nonnenberg
ec8ac1db58 Outgoing: Ensure that sends still succeed without CDS 2020-09-21 15:42:51 -04:00
Chris Svenningsen
5364de90a4 migrate components stickers to eslint 2020-09-21 15:42:51 -04:00
Sidney Keese
2ade4acd52 Migrate util, types, state, sticker-creator to ESLint 2020-09-21 15:42:51 -04:00
Chris Svenningsen
372aa44e49 Migrate conversations to ESLint 2020-09-21 15:42:51 -04:00
Chris Svenningsen
b13dbcfa77 Migrate components to eslint 2020-09-21 15:42:50 -04:00
Josh Perez
9657c38987 @mentions receive support 2020-09-21 15:42:37 -04:00
Grace Shaw
8b7db94882
Defer to default keybindings for alt + enter 2020-09-14 17:27:16 -05:00
Scott Nonnenberg
7a02cc815d Support for new GroupV2 groups 2020-09-09 17:34:57 -07:00
Chris Svenningsen
8a2c17f65f Apply new ESLint rules to legacy code 2020-09-09 17:34:57 -07:00
Scott Nonnenberg
91cf075697 ProfileChangeNotification: Ensure emoji are rendered properly 2020-09-09 17:34:57 -07:00
Josh Perez
aeff7540c8 Calling type improvements 2020-09-04 14:41:07 -05:00
Josh Perez
9eeb68a9a7 Blocking/Unblocking improvements for message requests 2020-09-01 17:11:16 -04:00
Josh Perez
bb7d9cec7e Message Requests: Swap Unblock/Delete buttons to match mobile apps 2020-09-01 17:11:16 -04:00
Chris Svenningsen
5b1536cc02 Initial move towards new ESLint config supporting TS
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-09-01 17:11:16 -04:00
Evan Hahn
2e1e6e847a Widen the set of link previews which can be received 2020-09-01 17:10:18 -04:00
Scott Nonnenberg
035f704b07 Storybook: A little bit of organization 2020-08-28 15:42:25 -04:00
Josh Perez
036ce0a6d9 Calling device selection: Localize 'default' 2020-08-28 15:42:25 -04:00
Josh Perez
84e52c948b Mute conversations 2020-08-28 15:42:25 -04:00
Jim Gustafson
90bf0f4eea Update to RingRTC v2.5.1
Co-authored-by: Vladimir Skuratovich <vlad@signal.org>
2020-08-28 15:42:25 -04:00
Chris Svenningsen
bcd4f6407f Migrate MessageDetail to Storybook 2020-08-28 15:42:25 -04:00
Chris Svenningsen
a7de10f628 Delete unused Quote.md 2020-08-28 15:42:25 -04:00
Chris Svenningsen
cb367bfdb4 Migrate Quote to Storybook 2020-08-28 15:42:25 -04:00
Chris Svenningsen
b9c5e7bf1d Migrate Message to Storybook 2020-08-28 15:42:25 -04:00
Chris Svenningsen
0051253125 Migrate MessageBody to Storybook 2020-08-28 15:42:25 -04:00
Josh Perez
8ab1013f70 Calling: Device Selection 2020-08-28 15:42:25 -04:00
Sidney Keese
b3a54870b8 Migrate ScrollDownButton to Storybook
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-08-28 15:42:24 -04:00
Sidney Keese
15c7e9bf72 Migrate Timestamp to Storybook
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
2020-08-28 15:42:24 -04:00
Sidney Keese
ac0ddf34ea Migrate StagedXXX components to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
1894ff0dc1 Migrate Timeline, TimelineLoadingRow to storybook 2020-08-28 15:42:24 -04:00
Josh Perez
25dabd56fd Outgoing call: Show safety number dialog if change detected 2020-08-28 15:42:24 -04:00
Sidney Keese
45b9bbc837 Migrate Typing/Unsupported/Verification components to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
58844f92ab Migrate ImageGrid to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
5aac427017 Migrate StickerButton, StickerManager, StickerPicker to storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
7098c8b393 Migrate Image to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
db7aa6223f Migrate ConversationListItem to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
de72a2f6c6 Migrate SafetyNumberNotification to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
7b75f8bb2e Migrate ReactionViewer to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
fba8f7bf1e Migrate TimerNotification to storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
252c101e06 Migrate AttachmentSection to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
812b1c5b21 Migrate ResetSessionNotification to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
58db34c5e8 Migrate LastSeenIndicator to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
15e817c3e2 Migrate Linkify to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
d27a15a3eb Migrate MessageSearchResult to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
0e79f83a42 Migrate EmbeddedContact to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
84fee07a72 Migrate LightboxGallery to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
4b0c206128 Migrate Lightbox to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
3591fa005e Migrate Spinner to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
b8cc7e8107 Migrate MainHeader to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
db1f4d107f Migrate Emojify to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
88dce16b32 Migrate MediaGridItem to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
ac28f9f13c Migrate ExpireTimer to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
6494818f76 Migrate ContactDetail to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
702913b21a Migrate LeftPane to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
b112666239 Migrate MediaGallery to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
2de4a3177a Migrate MessageBodyHighlight to storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
f1d04f4751 Migrate Intl to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
6aeaabf505 Migrate countdown to storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
1ca3ec47f8 Migrate StartNewConversation to storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
309332d943 Migrate Emoji to storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
67d2dd07c3 Migrate AttachmentList to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
3416818e01 Migrate DocumentListItem to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
8975b3473c Migrate EmptyState to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
2cd187abaf Migrate AddNewLines to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
25ab4df9cc Migrate ShortcutGuide to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
d1d1436fde Migrate composition input to storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
cebe72ece7 Migrate AvatarPopup to Storybook 2020-08-28 15:42:24 -04:00
Chris Svenningsen
c8e8291da4 Migrate Caption Editor to Storybook 2020-08-28 15:42:24 -04:00
Sidney Keese
24dfaa4da4 Migrate composition area to storybook 2020-08-28 15:42:24 -04:00
Evan Hahn
aa43f322b3
Remove scrollbar from author title in quotes 2020-08-13 15:21:05 -07:00
Scott Nonnenberg
3615096497
Fix contact name rendering on call screen 2020-08-13 18:02:28 -04:00
Chris Svenningsen
d3d3c41f94
Convert <Avatar /> component to Storybook
Co-authored-by: Chris Svenningsen <chris@carbonfive.com>
Co-authored-by: Sidney Keese <me@sidke.com>
2020-08-13 13:53:45 -07:00
Scott Nonnenberg
eb44e2fc6a
Calling: Show call event summaries in left pane 2020-08-12 19:52:34 -04:00
Evan Hahn
a8090d8c66
A few CSS fixes for message bubbles 2020-08-12 15:47:20 -07:00
Josh Perez
6a68b37c83
New message state: Partially sent 2020-08-06 18:22:52 -07:00
Scott Nonnenberg
81cb7730a5
Message Requests improvements 2020-08-06 20:50:54 -04:00
Scott Nonnenberg
57308d3104
Fixes several bugs 2020-08-04 21:13:19 -04:00
Scott Nonnenberg
d75eee015f Show notifications when a user's profile name changes 2020-07-30 13:27:44 -07:00
Scott Nonnenberg
7ef5dc6401 AvatarPopup: Show profile name if we have it 2020-07-30 13:27:44 -07:00
Scott Nonnenberg
d07b8e82b2 First-class profile name rendering 2020-07-30 13:27:41 -07:00
Josh Perez
5b83485c89 Update safety number change warning dialog 2020-07-30 13:10:05 -07:00
Peter Thatcher
d3a27a6442 Calling support 2020-07-30 13:08:47 -07:00
Ken Powers
83574eb067 Message Requests 2020-07-30 13:08:44 -07:00
Scott Nonnenberg
2e01c9fb87 Lint fixes 2020-07-01 11:05:41 -07:00
Jan Janik
1503053496
Close/cancel draft "reply to" on Escape (#4387) 2020-06-30 18:59:38 -07:00
Jan Janik
fd6358ac9d
GroupNotification: Fix 'joined group' pluralization (#4380) 2020-06-25 15:36:24 -07:00
Scott Nonnenberg
6aedb30905 getPropsForSearchResult: Harden to missing conversation 2020-06-23 17:31:21 -07:00
Scott Nonnenberg
205ee6c6ac
GroupNotification: Use singular string when we have just one contact 2020-06-11 13:32:21 -04:00
Nat Talbot
66aa6f142a
Avatar color on ReactionViewer is now Contact Color, not Grey (#4325)
Fixes #4167. A user's avatar, if they do not have a profile picure,
now shows up with their assigned color rather than as grey in the
reactionviewer.

Changed the ReactionViewer from field to make the
color a ColorType rather than a string, and passed that to the color prop
of the Avatar rendered in the viewer.
2020-06-10 14:48:26 -07:00
Scott Nonnenberg
56470d8374 View All Media -> View Recent Media 2020-06-10 14:39:45 -07:00
Ken Powers
480e1808ba Enable React with any Emoji 2020-06-10 14:39:45 -07:00
Ken Powers
5c6a474ec9
Disable skin tones for reaction emoji 2020-05-11 16:14:02 -07:00
Ken Powers
7a55c68c6c
Remove emojification on message send 2020-05-07 12:58:28 -07:00
Ken Powers
0865a5481c Pre-alpha: React with any emoji, behind flag 2020-05-05 14:18:46 -07:00
Ken Powers
ba5e2ff6e5 Receive support for DOE messages 2020-04-29 17:42:41 -07:00
Josh Perez
752cd75c54 Make RelinkDialog supersede the NetworkDialog 2020-04-29 17:42:41 -07:00
Ken Powers
980862768b Linkify URLs containing @ 2020-04-29 17:42:41 -07:00
Josh Perez
d5925ac9d5 LeftPane: Measure content above list to calculate list size 2020-04-29 17:42:41 -07:00
Scott Nonnenberg
ebb3864f58 New keyboard shortcuts: Ctrl+1..9, Ctrl+Tab/Ctrl+Shift+Tab
* New keyboard shortcuts: Ctrl+1..9, Ctrl+Tab/Ctrl+Shift+Tab

* Add new shortcuts to the shortcut guide
2020-04-29 17:42:41 -07:00
Josh Perez
4dc7631851
Decouple RelinkDialog from NetworkStatusDialog 2020-04-16 12:20:52 -07:00
Ken Powers
2f2d027161 Port StickerPreviewModal to storybook 2020-04-15 14:45:11 -07:00
Scott Nonnenberg
71436d18e2 Include sender in group update notifications 2020-04-15 14:44:46 -07:00
Josh Perez
e716652b94
Adjust LeftPane height when NetworkDialog pops out of view 2020-04-08 12:00:14 -07:00
Scott Nonnenberg
30e5051239 Eliminate clipped error icon for wide messages with errors 2020-03-25 16:47:42 -07:00
Ken Powers
17f212ffcf CompositionInput: Fix high CPU usage 2020-03-24 17:03:22 -07:00
Scott Nonnenberg
6bd5587d50 Retry websocket connect if error returned is 502
* Retry websocket connect if error returned is 502

* Introduce connect button on 'Disconnected' left-pane dialog

* NetworkStatus: If user clicks connect, show connecting for 5s
2020-03-24 17:03:22 -07:00
Josh Perez
4830213a12 Sort by inbox position to match phone after link 2020-03-24 17:02:01 -07:00
Ken Powers
31f219690a Show "you" instead of "me" in the group members list 2020-03-24 17:02:01 -07:00
Ken Powers
a90246cbe5 Passive UUID support
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Ken Powers
faa2b13026
Reactions: Go directly to all tab, show 'You' for current user 2020-03-03 14:33:54 -08:00
Ken Powers
4d4c522c7f
Emojify group title updates 2020-02-28 11:11:15 -08:00
blckfalcon
e3e25e1144
Fix focus on CompositionInput (#3973) 2020-02-26 18:09:19 -08:00
Josh Perez
018dc34e47 Fix for fallback update dialog 2020-02-20 16:24:40 -08:00
Josh Perez
be819f9fdd
Fix : blocking emoji insertion from emoji picker 2020-02-18 11:58:23 -05:00
Josh Perez
18fd44f504
Move all status/alert dialogs into the Left Pane 2020-02-12 13:30:58 -08:00
Ken Powers
101070bf42
Prevent replies/reactions on messages with errors 2020-02-07 15:13:46 -08:00
Ken Powers
8d4125f0a8
Lint fixes 2020-02-07 12:07:43 -08:00
Scott Nonnenberg
3938eb9801
A set of fixes and upgrades
* writeToDownloads: Add missing await
* Remove window.isFocused() - not used anywhere!
* Update typescript, p-queue, make necessary changes to fix build
* Slow down sender certificate retries with no existing cert
* Slow down signed prekey refreshes when unlinked - 5s -> 5m
* Update protobufjs to 4.1.2
2020-02-07 14:37:04 -05:00
Ken Powers
38c7fa3da6
Storybook: Basic messages and messages with reactions 2020-02-07 11:07:22 -08:00
Ken Powers
c9292544aa
Show clicked-on reaction in ReactionViewer 2020-02-06 11:57:46 -08:00
Ken Powers
0fc178d887
StoryBook: Fully support themes in pop-up components 2020-02-06 11:28:01 -08:00
Ken Powers
6a9d8b86d8
Add "all" tab to ReactionViewer 2020-02-05 15:14:25 -08:00
Ken Powers
c6a23ff4f6
Remove "you" qualifier from ReactionViewer and ContactName 2020-02-05 14:28:54 -08:00
Scott Nonnenberg
22a53153f8 ContactName: Fix case in import 2020-02-03 12:53:59 -08:00
Ken Powers
539c02cb92 Remove reaction send flag 2020-02-03 12:05:21 -08:00
Ken Powers
01d4aa0772
Update to new message bubble reactions design 2020-02-03 12:02:49 -08:00
Ken Powers
7461250caf
Indicate when reaction is from the current user 2020-01-29 13:58:50 -08:00
Ken Powers
04d0a3c523 ReactionViewer: Handle an entirely removed category 2020-01-24 14:54:57 -08:00
Ken Powers
153503efc5 Send Reactions 2020-01-23 15:57:37 -08:00
josh-signal
de7bc8b1b1 Upgrade emoji support to Unicode v12 2020-01-23 16:17:06 -05:00
Ken Powers
1b975bec65 Stop propagation in ReactionViewer 2020-01-23 11:59:29 -08:00
Scott Nonnenberg
bfa76b05d2 No propagate, fix 'attachment save' cancel
* Quote: Ensure that clicks don't propagate to parent
* Attachment Save: Check for null; returned if user cancels out
2020-01-22 14:34:36 -05:00
Ken Powers
6cc0f2abce Render incoming Reactions 2020-01-17 14:23:19 -08:00
Ken Powers
1c906e76f9 Handle non-square stickers via 'contain' 2020-01-15 11:19:56 -08:00
Scott Nonnenberg
4f50c0b093 Use 1x icon in View-once bubbles, explanatory expired toasts 2020-01-10 11:29:51 -05:00
Scott Nonnenberg
744d1b5295 Message bubble: Larger stickers; handle non-square aspect ratios
* Sticker picker: Handle non-square stickers
* Message bubble: Larger stickers; handle non-square aspect ratios
2020-01-09 14:27:49 -05:00
Ken Powers
0d3b390129 Upgrade Prettier 2020-01-08 09:44:54 -08:00
Ken Powers
681222c0c0 Fix styleguide: upgrade deps, lock core-js to version babel needs 2020-01-06 17:49:00 -08:00
Scott Nonnenberg
e5d2952c90 Lint fixes after recent merges 2020-01-06 17:47:40 -08:00
sha-265
5ca53baeae Add RTL support in conversation list message text (#3539)
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-01-06 16:56:50 -08:00
Scott Nonnenberg
2bf9cf6716 Auto-dismiss 'pack installed' tooltip after 10 seconds (not 1m) 2019-12-18 14:28:34 -05:00
Ken Powers
11d47a8eb9 Sticker Creator 2019-12-17 12:28:46 -08:00
Scott Nonnenberg
2c7baad68d macOS shortcuts: Only listen for command key, not control key 2019-12-17 13:52:36 -05:00
Ken Powers
d86e8ef7ec Add sticker introduction tooltip image 2019-12-17 10:30:03 -08:00
Scott Nonnenberg
991d7f9336 Flow installedPack property down from CompositionArea 2019-12-16 15:00:24 -08:00
Ken Powers
3b604bb13d Composition Input: If string is : alone, do not recurse 2019-12-16 15:00:24 -08:00
Scott Nonnenberg
3aff3ed181 MainHeader: Ensure unmount doesn't double-remove on popperRoot 2019-12-04 17:30:36 -05:00
Scott Nonnenberg
e9f08c3da9 Bugfixes for v1.29
* If focus was set to document.body during archive, focus left pane
* Shortcut Guide: Add space between text and shortcut highlight
* Ensure that draft attachment can be closed with click on X button
* Move to keyDown event for user idle checking
* Additional resiliency around avatars; check for them on on-disk
* Increase timeouts to preserve websocket connection
* On startup, be resilient to malformed JSON in log files
* Don't crash if shell.openExternal returns an error
* Whenever we request a contact/group sync, also request block list
* Avatar popup: Ensure styling is mouse- and keyboard-appropriate
* MainHeader: Create popperRoot on demand, not on mount
* CompositionInput: Disable default Ctrl-/ shortcut
* Update libphonenumber
2019-12-03 15:02:50 -05:00
jjkaufman
ee9e86ab7a Show message sent time (not received time) in search results (#3769) 2019-12-02 13:40:38 -08:00
Scott Nonnenberg
2a0a73cfc1 Keyboard/mouse mode and keyboard support bugfixes 2019-11-21 14:16:06 -05:00
Scott Nonnenberg
0876bf7ae7 Visual bug fixes for v1.29 2019-11-21 10:17:55 -08:00
Scott Nonnenberg
e23d7a75b0 Open conversation menu: Ctrl-Shift-I -> Ctrl-Shift-L 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
0512d08d61 Disable emoji and sticker pickers if conversation has open panels 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
01bf53776b CompositionInput: Prevent ctrl+shift+m from adding a newline 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
5750412fda Hover/focus styles for embedded contacts, default action 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
79b9408f1f Message: Only focus if focus is not inside container already 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
6b60ca6bd7 Handle Ctrl+/ in the application instead of via Electron
To prevent 'select all' on Linux.
2019-11-15 14:34:24 -08:00
Scott Nonnenberg
3c6e23cc5e Shortcuts: Check for both capital and lowercase characters 2019-11-14 12:37:28 -08:00
Scott Nonnenberg
20a892247f Keyboard shortcuts and accessibility 2019-11-13 16:53:42 -08:00
Scott Nonnenberg
8590a047c7 Change domain for sharing sticker packs 2019-11-13 19:12:36 -05:00
Ken Powers
430b6377b0 Trim text coming out of CompositionInput 2019-11-13 15:35:44 -08:00
Ken Powers
7064691696 Revert custom caret navigation logic 2019-11-12 15:44:41 -08:00
Scott Nonnenberg
08dbff803a Update timer and group/profile icons 2019-11-11 13:03:15 -05:00
Ken Powers
bbb3b0467f Ensure second line of message body is never visible in LeftPane 2019-11-06 15:32:40 -08:00
Ken Powers
0fc384cfa3 Fine-tune editing logic within message composition box 2019-11-06 15:29:19 -08:00
Ken Powers
8659f1dd23 Fix a number of emoji bugs in message composer 2019-10-31 12:32:10 -07:00
Ken Powers
94dde6f799 Trim text coming out of CompositionInput 2019-10-21 14:57:05 -07:00
Scott Nonnenberg
dd1f9b055f New AvatarPopup component 2019-10-17 14:22:07 -04:00
Scott Nonnenberg
2e2c5ebf9a When showing draft in left pane, don't show last message status 2019-10-10 14:56:14 -07:00
Scott Nonnenberg
c81c25bb85 Update colors, icons, and fonts 2019-10-10 14:56:14 -07:00
Scott Nonnenberg
5c00b89600 Support for receiving View Once Video 2019-10-10 14:56:14 -07:00
Scott Nonnenberg
8ccb89310b New Idle timer; messages not marked read if user is idle 2019-09-24 13:43:08 -07:00
Scott Nonnenberg
43ac8ce37e Lightbox: Ensure that click of video pauses it 2019-09-24 13:43:08 -07:00
Scott Nonnenberg
3215be7849 Add aria-live to network status area, left pane, and timeline 2019-09-18 16:08:46 -07:00
Scott Nonnenberg
18d6582466 SearchResults: Add row and header roles 2019-09-18 16:08:46 -07:00
Scott Nonnenberg
1984ffc94c Timeline: Add role='row' to each element item rendered 2019-09-18 16:08:46 -07:00
Scott Nonnenberg
0e25b405e1 Timeline: Increase 'at bottom' threshold so we stick to bottom 2019-09-18 16:08:46 -07:00
Scott Nonnenberg
095cd884a2 Prevent >64k text in composition box; truncate too-large drafts 2019-09-16 15:47:52 -07:00
Scott Nonnenberg
e39c6e5321
Don't search conversations if searching within conversation 2019-09-05 08:59:21 -07:00
Ken Powers
e567e25318 Move expand composition area button into a notch 2019-09-04 12:02:28 -07:00
Ken Powers
1d3fe4bbf3
Split search actions between discussions and messages 2019-09-04 10:46:28 -04:00
Scott Nonnenberg
8fe73fa884 Timeline: Only call setIsNearBottom if value has changed 2019-09-03 16:06:17 -04:00
Scott Nonnenberg
979841f36c Optimize scrolling: resize only changed row index and higher 2019-08-23 15:56:49 -04:00
Ken Powers
0beb1416d1 Only pop emoji autocomplete for strict set of characters 2019-08-22 14:34:03 -07:00
Scott Nonnenberg
b19659f5ac Address beta feedback
* Use signal blue for search box focus outline
* Reduce debounce for draft saves
* Be less aggressive in our scrolling corrections
* Lightbox: Ensure that a tall image is still fully visible
* Fix spell checking after Electron API breaking changes
* Fix link preview image generation
* Message highlight: Move to border in signal blue
2019-08-22 17:11:36 -04:00
Ken Powers
eec0fce62a Fix composition area link previews with multiline text 2019-08-22 13:42:03 -07:00
Scott Nonnenberg
90c2a97aa7 Address alpha feedback 2019-08-21 14:55:18 -07:00
Ken Powers
ea7d7217b5 Keyboard shortcut to toggle large composition mode 2019-08-21 14:55:12 -07:00
Scott Nonnenberg
0b0214cbf9 Some fixes for windowed render 2019-08-21 14:55:12 -07:00
Scott Nonnenberg
c39d5a811a Full-text search within conversation 2019-08-21 14:52:30 -07:00
Scott Nonnenberg
6292019d30 Virtualize search results - only render what's visible 2019-08-21 14:52:30 -07:00
Scott Nonnenberg
9d4f2afa5a Persist drafts 2019-08-21 14:52:30 -07:00
Scott Nonnenberg
5ebd8bc690 Virtualize Messages List - only render what's visible 2019-08-21 14:52:30 -07:00
Ken Powers
79bba52cfb Large Message Composition 2019-08-21 14:52:30 -07:00
Ken Powers
4d659f69cb Fix emoji autocompletion absorbing non-spaced emojis 2019-08-21 14:52:30 -07:00
Ken Powers
3946b5aec6 Fix ctrl-m shortcut for Windows and shift-del shortcut for Linux 2019-08-14 10:32:38 -07:00
Ken Powers
1c5450122f Composition Input: use state ref
* Use editorStateRef for submitting messages

This fixes sending messages with IME input

* Use editorStateRef for emoji input

* Use editorStateRef for external state listeners

* Rename editorState to editorRenderState
2019-08-08 14:09:08 -07:00
Scott Nonnenberg
6b6da04a65 Fix clicks on sticker picker buttons to page left/right 2019-08-05 16:23:47 -07:00
Scott Nonnenberg
7f958b0ff0 Lint fixes 2019-08-05 16:23:47 -07:00
Ken Powers
6c0365a770 One emoji image set for picker, composition, message bubble 2019-07-25 09:28:44 -07:00
Ken Powers
464361b2eb Animate in-conversation panels on show/hide 2019-07-25 09:24:03 -07:00
Ken Powers
c952d628c1 Emoji Typeahead Enhancements (Feedback)
* Wrap around completion menu with arrow keys
* Replace emoji text when typing final colon
2019-07-23 16:19:57 -07:00
Ken Powers
7b645011c2 New composition area with emoji typeahead 2019-07-17 11:29:51 -07:00
Scott Nonnenberg
e62a1a7812 Receive support for View Once photos 2019-07-17 11:29:51 -07:00
Buck Doyle
f2dd10cd1a Update search for colon-syntax emoji to ignore case (#3443)
* Add tests for existing replaceColons functionality

* Update to lowercase before matching short names

* Update lib_test.ts
2019-07-08 16:38:25 -04:00
Scott Nonnenberg
1464167e6b Lint fixes 2019-06-27 15:45:28 -07:00
Ken Powers
35b12d9b72 Preload emoji images in queue 2019-06-27 15:33:15 -07:00
Ken Powers
45f2bef8fe Tokenize fuzzy search for emoji 2019-06-27 15:21:08 -07:00
Scott Nonnenberg
102b93241c Only preload emoji after the window is fully loaded 2019-06-20 17:48:54 -07:00
Ken Powers
dcf6a5f59c Use individual images in emoji picker rather than a spritesheet 2019-06-17 11:46:42 -07:00