Evan Hahn
a5a64f354f
Upgrade Prettier from v2.1.2 to v2.2.1
2021-04-29 14:27:36 -07:00
Evan Hahn
e7ef3de6d0
Profile name spoofing dialog
2021-04-29 14:27:35 -07:00
Scott Nonnenberg
86d2a4b5dd
decrypt/encrypt with libsignal-client, remove libsignal-protocol-javascript
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
353becffac
Various fixes for message forwarding
2021-04-28 15:44:48 -05: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
31a777a130
Merge branch 'WhyNotHugo-python3' into next-beta
2021-04-14 14:15:24 -07:00
Fedor Indutny
25458be515
upgrade electron-builder to 22.10.5
2021-04-13 18:27:43 -07:00
Josh Perez
ef781af0ce
Updates a11y dev deps
2021-04-13 17:33:24 -04:00
Evan Hahn
62f1a42c25
Add reusable <Modal> component, use with <Alert>
2021-04-13 09:20:02 -05:00
Hugo Osvaldo Barrera
207c533de1
Use a node-gyp version which supports Python3
...
The currently pinned version of `node-gyp` requires Python 2. Python 2
has reached its EOL a long time ago and is unsupported by upstream.
The requirement on Python 2 is also an unnecessary barrier for new
developers to contribute to Signal.
This changeset updates the required version of node-gyp to one
compatible with Python 3.
`CONTRIBUTING.md` remains unchanged, since this dependency was not
previously mentioned anyway.
Supersedes #4407
Fixes #4783
2021-04-09 22:13:11 +02:00
Evan Hahn
23b3d34eef
Upgrade Sharp to v0.28.1
2021-04-09 15:01:25 -04:00
Josh Perez
6c0acd09df
Sync mute state
2021-04-09 11:19:38 -05:00
Scott Nonnenberg
e0415de893
Don't always show an error on manual contact sync
2021-04-09 00:06:46 -04:00
Evan Hahn
a82fa86176
Fetch sender certificates on-demand
2021-04-09 00:06:46 -04:00
Fedor Indutny
4fd3ed7242
Bundle preload.js
2021-04-09 00:06:14 -04:00
Fedor Indutny
c609389aaf
Update to Webpack 5
2021-04-09 00:05:41 -04:00
Evan Hahn
f615b1a75f
Reject reactions with invalid number of graphemes
2021-04-08 23:53:18 -04:00
Fedor Indutny
37c8c1727f
Types, better-sqlite3, and worker_threads for our sqlite
2021-04-08 23:53:18 -04:00
Fedor Indutny
a97abf718d
Sort lint exceptions
2021-04-08 23:51:54 -04:00
Fedor Indutny
6e41009d74
Update zkgroup to the latest
2021-04-08 23:51:54 -04:00
Josh Perez
9438b7b3fe
Fixes pinned conversations sync
2021-04-08 15:27:20 -04:00
Scott Nonnenberg
a1c534ec0c
Fix CDS fetches; use proper hashing mechanism
2021-04-07 14:27:40 -07:00
Josh Perez
d6bb8ae35e
Adds axe-storybook-testing
2021-04-06 16:12:33 -04:00
Evan Hahn
a7c78b3b23
Storage service: save new AccountRecord fields to disk
2021-04-05 18:08:50 -04:00
Fedor Indutny
6cfb3c9867
Use synchronous crypto for sealed sender
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
130dac527f
Add types for <ConversationHeader>'s mute options
2021-04-05 18:08:50 -04:00
Evan Hahn
eb97c1194a
Add Zod for runtime and compile-time type checking, use it in logging code
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
Evan Hahn
1a9c6b9385
Clean up iterable utilities
2021-04-05 18:08:50 -04:00
Evan Hahn
bd48dea613
Add enum parser utility
2021-04-05 18:08:50 -04:00
Kasia Kosturek
d20cc59a26
getInitials: handle more cases
...
See [#5029 ]][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5029
2021-04-02 15:30:49 -05:00
rhklee
8b51f174d8
Remove backslash from search queries
...
Co-authored-by: Lee Randy <randy.lee@metronom.com>
Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
See [#5053 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5053
2021-04-02 15:29:54 -05:00
Jost Schulte
9823eb2201
Fix typos in TypeScript and SCSS files
...
See [#5136 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5136
2021-04-02 15:28:07 -05:00
Fedor Indutny
5c8cb6b89b
Decrease batcher wait time to speed up startup
2021-03-30 20:40:48 -04:00
Fedor Indutny
6f7ecb141f
filterAndSortContacts should tokenize
2021-03-29 17:19:59 -05:00
Fedor Indutny
990e501850
First pass on CI support
2021-03-25 19:02:53 -07:00
Fedor Indutny
746e99b8c2
Flush all watchers on empty queue
2021-03-25 17:00:03 -07:00
Evan Hahn
afe135df0c
Hide long message attachments in quotes
2021-03-25 11:36:50 -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
919259c960
Use non-subtle crypto in libsignal-protocol
2021-03-23 17:50:02 -07:00
Fedor Indutny
a75402d290
Add timestamp utilities with helpful names
2021-03-22 16:08:52 -05: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
Evan Hahn
c97bb0feee
Auto-scroll the left pane less frequently
2021-03-19 16:57:36 -04:00
Evan Hahn
b725ed2ffb
Refresh profiles on app start (at most every 12 hours)
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
f98c3cba8c
Preliminary support for better performance testing
2021-03-19 16:57:36 -04:00
Fedor Indutny
fd8339e2ff
Fix for UnregisteredUserError handling when fetching UUIDs
2021-03-19 16:57:36 -04:00
Fedor Indutny
b93164a8c0
Reduce size of asar file and unpacked asar folder
2021-03-19 16:57:35 -04:00
Josh Perez
62e04a1bbd
Fix for unread syncs and ooo reactions
2021-03-19 16:57:35 -04:00
Evan Hahn
45dbe4d145
In left pane and "add group member", sort E164-only contacts to the bottom
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
Josh Perez
0bd3c78187
Do not batch single saveMessage calls after start-up
2021-03-19 16:57:35 -04:00
Josh Perez
d85a43fe93
Replace bunyan with pino
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
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
3cc6c5f5ad
Fix for missing replacement text in bodyRanges
2021-03-19 16:57:35 -04:00
Josh Perez
d82ce07942
Improve cold start performance
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
c73e35b1b6
Support for translating Desktop sessions to libsignal-client sessions
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
7e629edd21
Move SignalProtocolStore to TypeScript
2021-03-19 16:53:52 -04:00
Evan Hahn
5de4babc0d
Support for creating New Groups
2021-03-19 16:53:52 -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
d0e3a2ce29
background.ts/conversation_view.ts modules, Whisper.View/ToastView in TS
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
Jack Lloyd
c33fea35dc
Fingerprint using SignalClient library
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
Scott Nonnenberg
98e7e65d25
Automatic session reset
2021-03-19 16:53:51 -04:00
Evan Hahn
fe187226bb
Upgrade protobufjs to 6.10.2
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
Scott Nonnenberg
220d906422
Update google-libphonenumber to v3.2.17
2021-02-16 12:14:54 -08:00
Scott Nonnenberg
9858ae0642
Honor messageKeysLimit, remove batching for session saves
2021-02-10 14:47:55 -08:00
Evan Hahn
24f2363ebe
Upgrade Sinon to latest version, v9.2.4
2021-02-10 14:47:55 -08:00
Scott Nonnenberg
e10ae03bb7
Create group link previews; don't open Signal links in browser first; allow ephemeral download of previously-error'd pack
2021-02-10 16:39:26 -06:00
Scott Nonnenberg
e8b6f15ff5
Remove unused lint-deps exception
2021-02-04 14:59:13 -08:00
Evan Hahn
bc37b5c907
Add an assertion when updating conversations; update cleanData
2021-02-04 11:54:03 -08:00
Scott Nonnenberg
089e2864b3
Reduce unnecessary or overly verbose logging
2021-02-04 11:39:07 -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
Evan Hahn
ddebbf8121
Hide title bar on macOS
2021-02-01 12:01:25 -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
Josh Perez
1b38db2d79
Fixes rendering of about bio
2021-01-27 19:18:50 -05:00
Scott Nonnenberg
12c44d40a8
makeLookup: Allow for key of zero
2021-01-27 14:39:45 -08:00
Evan Hahn
1da724edf2
Fix missing avatars in groups
2021-01-27 13:15:43 -08:00
Evan Hahn
a8787e7c9e
Convert logging infrastructure to TypeScript
2021-01-27 13:13:33 -08:00
Evan Hahn
10ace53845
Remove unnecessary query param for /v1/certificate/delivery endpoint
2021-01-27 11:10:00 -06:00
Josh Perez
258bd55dd2
Show about info from contact profiles
2021-01-25 18:29:01 -08:00
Evan Hahn
c8b551edab
Upgrade to Electron 11
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
ca669a2638
Update Sharp to the latest version, v0.27.0
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
Evan Hahn
c85c073669
Update Bunyan to the latest version, v1.8.15
2021-01-25 18:29:00 -08:00
Evan Hahn
7884f4033e
Patch over slow debug log rendering
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
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
12dbd38cb9
Clean up migrateColor utility
2021-01-25 18:28:59 -08:00
Evan Hahn
8ccf402497
Use consistent User-Agent when uploading debug logs
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
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
Scott Nonnenberg
4eb49ff304
Fix a few issues with linking a new Desktop instance
2021-01-19 17:35:07 -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
55091edefa
Avoid unnecessary re-render on CHECK_NETWORK_STATUS
2020-12-17 12:12:52 -05:00
Evan Hahn
116ff74be8
Update license tests in preparation for new year
2020-12-17 12:12:52 -05: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
Scott Nonnenberg
3f58a9b762
Clean up UUID-handling to prepare for future
2020-12-09 17:26:37 -05:00
Scott Nonnenberg
5369950c1d
Don't promote archived sessions, more logging on error
2020-12-09 14:05:11 -08: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
a2f285d243
Put group calling behind a remote feature flag
2020-12-07 14:35:14 -06:00
Evan Hahn
a9367f48f1
Dark theme for calling device selection
2020-12-04 15:03:01 -08:00
Scott Nonnenberg
6832b8acca
Timeline: repair oldest/newest metrics if we fetch nothing
2020-12-04 14:41:40 -06:00
Evan Hahn
511ad14137
Fix mutation in CallingParticipantList component
2020-12-03 09:24:44 -08: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
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
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
Evan Hahn
6d53cb1740
Group calling: Peek into a group call
2020-11-23 14:49:32 -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
Scott Nonnenberg
26884432a2
Update TypeScript, Prettier and typescript-eslint for new TypeScript 3.8 syntax
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
Chris Svenningsen
24b70e6edd
CompositionInput: Proper RTL support
2020-11-20 16:03:16 -08:00
Evan Hahn
814b9874d1
Add OS to User-Agent
2020-11-12 15:29:54 -08:00
Evan Hahn
947e9c366c
Improve missingCaseError error message
2020-11-12 10:09:39 -08: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
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
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
cb9a7f79d1
Rewrite Message model tests in TypeScript
2020-11-04 13:00:41 -06:00
Evan Hahn
8073ccd32c
Rewrite <CallScreen> component with hooks
2020-11-04 13:00:41 -06:00
Evan Hahn
dd8a2435ea
Add useRef()
React Hook to lint rules
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
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
60f2422e2a
Consolidate sleep
usages into a tested utility function
2020-10-26 15:48:44 -07:00
Evan Hahn
dd57963dab
Outbound link previews: more lenient loading
...
Signed-off-by: Josh Perez <josh.p@signal.org>
2020-10-15 14:34:45 -04:00
Josh Perez
1507dea351
Move calling duration timer into redux state
2020-10-13 14:02:43 -07:00
Josh Perez
47cd1ddbff
Fixes lint
2020-10-12 18:48:19 -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
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
6e1a83ae4e
Reject HTTP URLs when loading link previews
2020-10-12 18:10:08 -04:00
Evan Hahn
2637d90df0
Minor: remove two any
s from <CallScreen>
2020-10-12 18:10:08 -04:00
Josh Perez
a581f6ea81
Calling: Picture-in-picture
2020-10-12 18:10:08 -04:00
Josh Perez
27759233e4
Storage Service Write: Improved conflict handling
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
313faab774
Outbound link previews
2020-10-12 18:10:08 -04:00
Evan Hahn
bdd71e4898
Support APNGs in Sticker Creator
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
Sidney Keese
7b6d8f55d6
Migrate textsecure to eslint
...
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
Evan Hahn
eba1bf3100
Add software acknowledgments, link to them from About window
2020-09-21 15:42:51 -04:00
Josh Perez
64ba7b63d3
Fix lint
2020-09-21 15:42:51 -04:00
Josh Perez
22ba54ce5c
Don't count muted convos in badge count by default
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
Evan Hahn
b4f0f3c685
Upgrade node-fetch to v2.6.1
2020-09-21 15:42:51 -04:00
Chris Svenningsen
b13dbcfa77
Migrate components to eslint
2020-09-21 15:42:50 -04:00
Evan Hahn
6d2e994f9f
Windows: mark downloads as "from the internet"
2020-09-21 15:42:50 -04:00
Evan Hahn
ad555ec8a9
Cleanup and remove unused chunks of libsignal-protocol
2020-09-21 15:42:50 -04:00
Josh Perez
9657c38987
@mentions receive support
2020-09-21 15:42:37 -04:00
Evan Hahn
401cdfdb63
Speed up lint-deps
2020-09-21 15:42:36 -04:00
Scott Nonnenberg
7ee6584d8b
Fix linter: global state left on the regex causes problems
2020-09-21 15:42:36 -04:00
Josh Perez
d87335f5a6
Support server-determined build expiration
2020-09-09 17:34:57 -07:00
Scott Nonnenberg
7a02cc815d
Support for new GroupV2 groups
2020-09-09 17:34:57 -07:00
Josh Perez
1ce0959fa1
Storage Service: Write
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
Ken Powers
8290881bd8
Support for Contact Discovery Service
2020-09-09 17:34:57 -07:00
Evan Hahn
2bedd41e57
Upgrade node-sass to v4.14.1
2020-09-04 11:35:42 -04:00
Scott Nonnenberg
003015f628
Sort exceptions.json
2020-09-04 09:39:17 -04:00
Sidney Keese
48df8ab3b1
ESLint Migration
2020-09-04 09:39:17 -04:00
Josh Perez
9eeb68a9a7
Blocking/Unblocking improvements for message requests
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
Josh Perez
84e52c948b
Mute conversations
2020-08-28 15:42:25 -04:00
Evan Hahn
de7a69dee9
Improve parsing of sgnl:// hrefs
2020-08-28 15:42:25 -04:00
Chris Svenningsen
e9cf5ba67c
Remove react-styleguidist
...
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-08-28 15:42:25 -04:00
Chris Svenningsen
bcd4f6407f
Migrate MessageDetail to Storybook
2020-08-28 15:42:25 -04:00
Evan Hahn
f8fc23a7a3
Improve nested path detection across app
2020-08-28 15:42:25 -04:00
Chris Svenningsen
b9c5e7bf1d
Migrate Message to Storybook
2020-08-28 15:42:25 -04:00
Josh Perez
8ab1013f70
Calling: Device Selection
2020-08-28 15:42:25 -04:00
Evan Hahn
aaed0db2e5
Verify sticker data in getDataFromLink
2020-08-28 15:42:25 -04:00
Josh Perez
25dabd56fd
Outgoing call: Show safety number dialog if change detected
2020-08-28 15:42:24 -04:00
Evan Hahn
098bab2d5e
Update to Lodash v4.17.20
2020-08-28 15:42:24 -04:00
Danny Lin
c8261814fd
Add setting to toggle notification attention drawing ( #4457 )
...
In many GNU/Linux setups, drawing attention when a notification arrives
causes the Signal window to steal focus immediately and interrupt the
user from what they were doing before the notification arrived. GNOME
Shell is the most prominent example of this behavior, but there are
likely other cases as well. Suddenly stealing focus on external events
like this can even pose a security problem in some cases, e.g. if the
user is in the middle of a typing a sudo password on one monitor while a
notification arrives and focuses Signal on another monitor. See #4452
for more information.
Disabling attention drawing entirely for Linux is also problematic
because some users rely on it as the sole indication of a new message,
as seen in #3582 and #3611 .
Commit f790694559
improved the situation
by adding a hidden "--disable-flash-frame" command-line argument, but
this argument is undocumented and manually adding command-line arguments
to the application's .desktop file is not user-friendly.
This commit adds a settings option for whether to draw attention when a
new notification arrives to make it easy for all Linux users to obtain
the appropriate behavior without relying on an undocumented
command-line argument.
Fixes #4452 .
2020-08-24 14:45:31 -07: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
c369363e10
Storage Service: Don't create groups from incoming v1 records
2020-08-11 21:07:55 -04:00
Scott Nonnenberg
67058e27bb
Safely generate cached conversation props on startup
2020-08-11 19:15:06 -04:00
Evan Hahn
b32445cd20
Upgrade node-fetch to latest version, v2.6.0
2020-08-11 14:23:37 -07:00
Evan Hahn
4df52c5349
Add 9 dangerous extensions and ignore trailing dot
2020-08-10 13:13:06 -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
bab59ba2a1
Force social graph to pull down updates after beta.11 install
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
0f8a60acc3
Integrate message requests with storage service
2020-07-30 13:18:34 -07:00
Josh Perez
9433a1de99
Don't reset panel on close of recent media pane
2020-07-30 13:17:47 -07:00
Scott Nonnenberg
901179440f
Merge contacts when we discover split or duplicated contacts
2020-07-30 13:17:45 -07:00
Josh Perez
126b828f46
Storage Service: Update local manifest version when it changes
2020-07-30 13:10:05 -07:00
Josh Perez
8502d23576
Social Graph: read-only state sync with primary device
2020-07-30 13:10:05 -07:00
Scott Nonnenberg
7f71046f93
Restore ability to get to safety number screen from member list
2020-07-30 13:10:05 -07:00
Josh Perez
5b83485c89
Update safety number change warning dialog
2020-07-30 13:10:05 -07:00
Ken Powers
bf04c9114e
Harden UUID-handling code paths
2020-07-30 13:10:03 -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
Josh Perez
1ad2b175dc
Delete right away if we already have the message
2020-07-27 14:39:19 -07:00
Josh Perez
ba6cb653bf
Drop group messages that don't change group
2020-07-13 16:06:24 -07:00
Scott Nonnenberg
4289c28a38
Improve reliability of out-of-order reactions and DOE
2020-07-13 16:06:24 -07:00
Scott Nonnenberg
2e01c9fb87
Lint fixes
2020-07-01 11:05:41 -07:00
Scott Nonnenberg
55f4cd591c
Improve safety number logic in group conversations
2020-06-10 14:39:45 -07:00
Ken Powers
0865a5481c
Pre-alpha: React with any emoji, behind flag
2020-05-05 14:18:46 -07:00
Scott Nonnenberg
d13c3d3350
Link flow: Show 'you must upgrade' on 409 server response
2020-05-05 14:18:46 -07:00
Ken Powers
7bb7c0d1e1
Debug Log: Copy URL instead of open in browser
2020-05-05 14:18:46 -07:00
Scott Nonnenberg
721401bbeb
Introduce snyk, update dependencies
2020-05-05 14:18:46 -07:00
Ken Powers
ba5e2ff6e5
Receive support for DOE messages
2020-04-29 17:42:41 -07:00
Ken Powers
1b5c36a9a8
Add more safeguards to isTrustedIdentity
2020-04-29 17:42:41 -07:00
Scott Nonnenberg
5cfcedb549
Update dependencies
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
Ehren Kret
a0e9791623
Add support for receiving attachments from CDN 2
2020-04-29 17:42:41 -07:00
Scott Nonnenberg
c1dfe3e5b4
Adds support for versioned profiles
...
* Add zkgroup library
* tsconfig.json: Prettier wants to mess it up. :0(
* Initial take on versioned profile fetches
* Fix up the logging in getProfiles() - warn instead of error
* Introduce new VERSIONED_PROFILE_FETCH flag
* Update zkgroup dependency to v0.5.0
* Fix lint-deps - new zkgroup library brought in new debug dep
* ts/zkgroup: Introduce some commonly-used helper functions
* Update to latest serverPublicParams
* Don't derive profileKeyVersion unless flag is set
2020-04-15 16:12:28 -07:00
Scott Nonnenberg
97a6e01d24
MessageReceiver: Drop messages with GroupContextV2
2020-04-15 14:45:11 -07:00
Scott Nonnenberg
b7d56def82
Moves libtextsecure to Typescript
...
* Starting to work through lint errors
* libsignal-protocol: Update changes for primary repo compatibility
* Step 1: task_with_timeout rename
* Step 2: Apply the changes to TaskWithTimeout.ts
* Step 1: All to-be-converted libtextsecure/*.js files moved
* Step 2: No Typescript errors!
* Get libtextsecure tests passing again
* TSLint errors down to 1
* Compilation succeeds, no lint errors or test failures
* WebSocketResources - update import for case-sensitive filesystems
* Fixes for lint-deps
* Remove unnecessary @ts-ignore
* Fix inability to message your own contact after link
* Add log message for the end of migration 20
* lint fix
2020-04-15 14:45:11 -07:00
Scott Nonnenberg
6b094e1514
Refactor: Move data-access code to Typescript w/ shared interface
2020-04-15 14:45:11 -07:00
Scott Nonnenberg
9ab54b9b83
Move web_api.js and js/modules/crypto.js to TypeScript
2020-04-15 14:44:51 -07:00
Scott Nonnenberg
71436d18e2
Include sender in group update notifications
2020-04-15 14:44:46 -07:00
Josh Perez
d88c21e5b6
Support ultramarine convo colors from Android linked devices
2020-04-15 14:39:48 -07:00
Josh Perez
a12ac2aa37
Upgrade small logo icons
2020-04-15 10:25:20 -07:00
Josh Perez
e716652b94
Adjust LeftPane height when NetworkDialog pops out of view
2020-04-08 12:00:14 -07:00
Ken Powers
750e50812c
Introduce dialog for long database migrations
2020-03-25 16:47:42 -07:00
Ken Powers
c780c12df7
Use multiple spellCheckDirty messages
2020-03-25 08:16:10 -07:00
Ken Powers
a20c7c3357
Check targetTimestamp when looking for out-of-order reactions
2020-03-24 17:03:22 -07:00
Ken Powers
cbc670e855
Setup: Only display one QR code at a time
2020-03-24 17:03:22 -07:00
Ken Powers
a1270867ff
Debug Logs: gzip before upload
2020-03-24 17:03:22 -07:00
Ken Powers
4a8f5db0a4
Use Electron Spellchecker
2020-03-24 17:03:22 -07:00
Ken Powers
37ad95af27
Passive UUID fixes
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
a90246cbe5
Passive UUID support
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Scott Nonnenberg
a840e2e5b1
Remove legacy import flow
2020-03-04 17:12:56 -08:00
Ken Powers
faa2b13026
Reactions: Go directly to all tab, show 'You' for current user
2020-03-03 14:33:54 -08:00
Scott Nonnenberg
6e4dc2a117
Update electron, electron-builder and add more preload logging
...
* electron to 8.0.2, electron-builder to 22.3.5
* preload.js: add last-ditch logging on startup error
2020-03-02 17:13:45 -08:00
Scott Nonnenberg
1726e1b77a
Fix windows fast-glob usage in lint-deps test task
...
* Introduce normalize-path wherever we use fastGlob
* CI: Update yarn version; install yarn via npm on windows
* Add more logging to Grunt file spectron usage
* Lock core.js to what it was resolving to before: 2.4.1
* test/index.html: Remove nonexistent test file
* test/index.html: Remove missing registration.js
* preload.js: Introduce client-side logging for load failures
* Gruntfile: Introduce better debuggability if prod test fails
* Reintroduce glob for searches inside asar
2020-02-26 17:53:39 -08:00
Ken Powers
8d9ccd3c0a
Ensure proper file permissions on startup
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-02-21 15:40:04 -08:00
Josh Perez
6b56dd4ce0
Move registration from redux selectors to util
2020-02-21 15:08:21 -08:00
Scott Nonnenberg
f379c72aba
Lint fixes
2020-02-20 16:24:40 -08:00
Josh Perez
2138395bcb
Improve UI around Voice Message limits
2020-02-20 16:24:40 -08:00
Ken Powers
2f9bebe567
Upgrade to Electron 8
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-02-19 15:22:37 -08:00
Josh Perez
32c0a8fbf6
Lint fixes
2020-02-19 09:55:35 -08:00
Josh Perez
afddc852cc
Add interpolation for fallback dialog messages
2020-02-13 10:14:08 -08: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
43b5a9b5a4
Fix lint
2020-02-06 12:04:17 -08:00
Ken Powers
01d4aa0772
Update to new message bubble reactions design
2020-02-03 12:02:49 -08:00
Ken Powers
153503efc5
Send Reactions
2020-01-23 15:57:37 -08:00
Ken Powers
6cc0f2abce
Render incoming Reactions
2020-01-17 14:23:19 -08:00
Scott Nonnenberg
11266cb775
Handle both given and family name in decrypted profile name
...
* Decrypt given and family names from profile name string
* Handle both given and family name from decrypted profile name
* Ensure we properly handle profiles with no family name
2020-01-13 17:28:28 -05:00
Scott Nonnenberg
4f50c0b093
Use 1x icon in View-once bubbles, explanatory expired toasts
2020-01-10 11:29:51 -05:00
Scott Nonnenberg
1bf9ca7233
Save attachments with macOS quarantine attribute
...
* Attachments: Always save file to downloads directory, show toast
* Add new build:dev command for casual builds
2020-01-09 14:57:43 -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
Ken Powers
11d47a8eb9
Sticker Creator
2019-12-17 12:28:46 -08:00
Scott Nonnenberg
2df1ba6e61
Introduce two built-in sticker packs: Zozo and Bandit
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
Scott Nonnenberg
991d7f9336
Flow installedPack property down from CompositionArea
2019-12-16 15:00:24 -08:00
Scott Nonnenberg
5f58be1a29
Set focus properly in confirmation dialogs when in mouse mode
2019-12-16 15:00:24 -08: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
Scott Nonnenberg
2a0a73cfc1
Keyboard/mouse mode and keyboard support bugfixes
2019-11-21 14:16:06 -05:00
Scott Nonnenberg
ed55006f20
Update to Electron 6.1.4
2019-11-21 10:17:55 -08:00
Scott Nonnenberg
0876bf7ae7
Visual bug fixes for v1.29
2019-11-21 10:17:55 -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
20a892247f
Keyboard shortcuts and accessibility
2019-11-13 16:53:42 -08:00
Ken Powers
8659f1dd23
Fix a number of emoji bugs in message composer
2019-10-31 12:32:10 -07:00
Scott Nonnenberg
fd5af8bb62
SessionRecord: Once again serialize/deserialize within libsignal
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
3a0c50fb44
Batcher: Enable faster shutdown by flushing immediately
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
785e31b154
SettingsView: Remove unused localization strings
2019-10-30 12:12:30 -07:00
Scott Nonnenberg
104b694186
MessageReceiver: Ensure that we always clearTimeout before set
2019-10-30 12:12:30 -07:00
Ken Powers
76549a95fb
Fix linting exceptions
2019-10-21 15:38:25 -07:00
Scott Nonnenberg
dd1f9b055f
New AvatarPopup component
2019-10-17 14:22:07 -04:00
Scott Nonnenberg
c81c25bb85
Update colors, icons, and fonts
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
0f93c780ec
Kick off checks for updates in more situations
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
0c09f9620f
Improve message download performance
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
957f6f6474
Add entitlements and build configuration for MacOS catalina
2019-10-10 11:30:47 -07:00
Scott Nonnenberg
43ac8ce37e
Lightbox: Ensure that click of video pauses it
2019-09-24 13:43:08 -07:00
Scott Nonnenberg
a8a8d65e5b
MessageReceiver: Add note about out-of-band updateCache calls
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
1dea66dd73
Update Electron to 6.0.9
2019-09-13 13:55:13 -07:00
Ken Powers
1d3fe4bbf3
Split search actions between discussions and messages
2019-09-04 10:46:28 -04: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
Scott Nonnenberg
90c2a97aa7
Address alpha feedback
2019-08-21 14:55:18 -07:00
Scott Nonnenberg
d3d2b0ec52
Use curve functions from native module
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
e29eee4583
Update Electron to 6.0.1, SQLCipher to 4.2.0
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
b5ebd034db
Don't render left pane until we're done processing initial queue
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
e4d2e28ec4
Make identity key screen show up immediately
2019-08-21 14:52:30 -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
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
Scott Nonnenberg
50ca51ca2c
Update node gyp to remove fstream in production
2019-07-19 13:34:38 -04:00
Scott Nonnenberg
d5d8df3bf6
Update lodash
2019-07-17 11:29:51 -07:00
Scott Nonnenberg
cb2c691667
Improve queuing strategies in the app
2019-07-17 11:29:51 -07:00