Josh Perez
347f542ac0
Derive default conversation color from storage
2021-08-24 17:15:12 -07:00
Josh Perez
d5d808651a
Improved Lightbox experience
2021-08-23 16:14:53 -07:00
Evan Hahn
79c976668b
Receive rings for group calls
2021-08-20 09:06:15 -07:00
Josh Perez
e9308bbafb
New option for control over update downloads
2021-08-19 15:56:29 -07:00
Josh Perez
91af0dad78
Faster preferences window
2021-08-18 13:08:14 -07:00
Fedor Indutny
7a8363c7c8
Additional render optimizations
2021-08-18 08:34:22 -05:00
Evan Hahn
b054802758
Make isEditingAvatar impossible unless you're on the right step
2021-08-16 09:33:27 -05:00
Fedor Indutny
12c78c742f
Optimize rendering
2021-08-11 09:23:21 -07:00
Josh Perez
9078919545
Transcode heic/heif images
2021-08-09 13:06:21 -07:00
Josh Perez
12d2b1bf7c
Avatar defaults and colors
2021-08-05 20:17:05 -04:00
Evan Hahn
6b290a0f0c
@mentions notifications
2021-08-05 07:35:33 -05:00
Evan Hahn
8cadc40975
Replace MessageModel#isUnread with isMessageUnread utility
2021-07-29 09:29:07 -05:00
Josh Perez
56d5d283bd
Support for announcement-only groups
2021-07-20 13:18:35 -07:00
Josh Perez
cd35a29638
Edit profile
2021-07-19 12:26:06 -07:00
Fedor Indutny
ddbbe3a6b1
More protobufjs migration
2021-07-09 12:36:10 -07:00
Fedor Indutny
2cd4160422
Unify audio playback under App component
2021-06-29 12:58:29 -07:00
Fedor Indutny
cd28e71bc6
Default disappearing message timeout fixes
2021-06-25 16:52:56 -07:00
Josh Perez
01eabf9ec6
Option to send photos as high quality
2021-06-25 11:08:16 -05:00
Scott Nonnenberg
68f1023946
Move message.getPropsForBubble and friends to selectors
2021-06-17 10:15:10 -07:00
Evan Hahn
3389b2e2b8
Remove deleted messages from Redux search state
2021-06-16 09:39:09 -07:00
Fedor Indutny
8f5086227a
Enforce stronger types for ArrayBuffers and storage
2021-06-14 17:09:37 -07:00
Josh Perez
173771d34b
New top-level React root: <App />
2021-06-14 12:01:00 -07:00
Fedor Indutny
17e6ec468e
Faster WebSocket reconnects
2021-06-09 15:28:54 -07:00
Scott Nonnenberg
f226822dff
Conversation: Prevent getProps errors on initial link
...
Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2021-06-08 16:31:35 -05:00
Josh Perez
53d6065c00
Selects custom color when created
2021-06-03 14:34:36 -07:00
Josh Perez
bd46e3afd6
Fixes global chat color setting
2021-06-02 14:05:09 -07:00
Scott Nonnenberg
9705f464be
Group Description: Edit/Receive
2021-06-01 20:24:28 -04:00
Evan Hahn
36c15fead4
Group name spoofing warning
2021-06-01 16:30:25 -07:00
Fedor Indutny
19f8042cd3
Universal Disappearing Messages
2021-06-01 13:45:43 -07:00
Josh Perez
373ffe4663
Screen sharing improvements
2021-06-01 12:47:55 -07:00
Scott Nonnenberg
ee513a1965
Support for message retry requests
2021-05-28 12:11:19 -07:00
Josh Perez
28f016ce48
Conversation Colors
2021-05-28 09:15:17 -07:00
Evan Hahn
95d404c70b
Improve UI performance for no-op profile fetches
2021-05-21 12:53:05 -07:00
Josh Perez
ceffc2380c
Add screensharing behind a feature flag
2021-05-20 17:37:19 -07:00
Fedor Indutny
7fa730531a
Improve experience for contacts without signal accounts
2021-05-20 17:37:08 -07:00
Fedor Indutny
03eaa9eb3e
Apply reactions optimistically
2021-05-20 17:37:08 -07:00
Evan Hahn
d28678dbf9
Make it more difficult to blur avatars
2021-05-07 17:21:10 -05:00
Fedor Indutny
986d8a66bc
Show challenge when requested by server
2021-05-05 17:09:29 -07:00
Evan Hahn
736075322c
Render disappearing message timers generically
2021-05-03 16:24:40 -07:00
Evan Hahn
05703c2719
Blur avatars of unapproved conversations
2021-04-30 14:40:25 -05:00
Evan Hahn
1238cca538
Ensure group details screen has the latest data
2021-04-29 14:27:38 -07:00
Evan Hahn
e7ef3de6d0
Profile name spoofing dialog
2021-04-29 14:27:35 -07:00
Josh Perez
d203f125c6
Adds message forwarding
2021-04-27 18:35:35 -04:00
Josh Perez
5e2d48cc2f
Do not populate left pane on initial link
2021-04-20 19:16:49 -04:00
Evan Hahn
c0cc878a64
Merge branch 'hiqua-fix_hanging_search' into next-beta
2021-04-14 14:14:57 -07:00
Evan Hahn
ea6562b7ac
Merge branch 'hiqua-no_lower_limit_query' into next-beta
2021-04-14 14:14:57 -07:00
Quentin Hibon
08905e1386
Allow one-character search queries
...
Related: #5180 .
2021-04-14 14:14:56 -07:00
Fedor Indutny
eb6d1b7216
Fix StickerType in sql/Interface and fix query
2021-04-09 00:05:41 -04:00
Evan Hahn
b5269f4927
Remove unused isAccepted property from ConversationType
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
Quentin Hibon
8abd73fa4f
Do not search if normalized query is empty
...
Fixes #5137
2021-04-08 12:32:44 +02:00
Evan Hahn
b81a52bbdd
New Group administration: Add users
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
Evan Hahn
2cd29e1b63
In Redux action, log error on failure to create group
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
44dfd28017
Fix message retry and search results with mentions
2021-03-19 16:57:35 -04:00
Scott Nonnenberg
9e2411ce30
Remove getIsConversationEmptySelector in favor of messageCount
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
06fb4fd0bc
Add "new conversation" composer for direct messages
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
Josh Perez
34285054f6
Manual download of attachments with no blurHash
2021-02-11 17:50:11 -08:00
007
5fad43fcfb
fix: allow hyphen on search term ( #4731 )
2021-02-04 14:41:42 -08:00
Scott Nonnenberg
089e2864b3
Reduce unnecessary or overly verbose logging
2021-02-04 11:39:07 -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
258bd55dd2
Show about info from contact profiles
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
b281420a40
Group calling: add speaker view
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
Evan Hahn
8144d758ae
Hide direct call notification when window is active
2021-01-25 18:28:57 -08:00
Scott Nonnenberg
9f81b4157b
Also use sent_at whenever we query database with received_at
2021-01-19 17:35:11 -08:00
Evan Hahn
55091edefa
Avoid unnecessary re-render on CHECK_NETWORK_STATUS
2020-12-17 12:12:52 -05:00
Evan Hahn
eff2318157
Minor: mark reducer arguments as Readonly
2020-12-17 12:12:52 -05:00
Evan Hahn
db0ebc5779
Update group membership for a group call when it changes
2020-12-09 15:21:34 -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
Scott Nonnenberg
6832b8acca
Timeline: repair oldest/newest metrics if we fetch nothing
2020-12-04 14:41:40 -06:00
Evan Hahn
c85ea814b1
Group calling participants refactor
2020-12-02 10:14:03 -08:00
Evan Hahn
be99bbe87a
Calling selectors are now based on the root state
2020-12-02 10:11:54 -08:00
Evan Hahn
d1866a0e5d
Group calling: tell RingRTC about our rendered resolutions for perf
2020-12-01 17:52:01 -08:00
Evan Hahn
f3f2cb2b5e
Show active speaker in group calling PiP
2020-12-01 15:52:09 -08:00
Scott Nonnenberg
2b8ae412e0
New feature flag with ability to migrate GV1 groups
2020-12-01 10:42:35 -06: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
Evan Hahn
6d53cb1740
Group calling: Peek into a group call
2020-11-23 14:49:32 -05:00
Josh Perez
5cc7c9a66a
Group Calling: Improve mute state styling
2020-11-23 14:49:31 -05:00
Scott Nonnenberg
2c69f2c367
Support for GV1 -> GV2 migration
2020-11-23 14:48:12 -05:00
Josh Perez
1f0c091e13
Group calling enhancements
2020-11-23 14:45:44 -05:00
Evan Hahn
022c4bd0f4
Initial group calling support
2020-11-23 14:45:44 -05:00
Scott Nonnenberg
2977c0ca3d
Message Requests: Show blurhash for pending stickers
2020-11-12 16:22:40 -05:00
Chris Svenningsen
d593f74241
New contact popup when clicking on group member or avatar
2020-11-11 09:36:05 -08:00
Evan Hahn
3468de255d
Redux state: Allow multiple calls to be stored
2020-11-06 09:36:37 -08:00
Evan Hahn
7e23bb6246
Use thunks for calling action creators
2020-11-04 13:03:14 -06:00
Chris Svenningsen
53c89aa40f
Send @mentions
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
8c3da11996
Convert emoji actions to use redux-thunk
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
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
89d29b49a3
Conversation reducer: sort by received_at then sent_at like Backbone
2020-10-26 15:48:44 -07:00
Scott Nonnenberg
04b7a29229
Modern profile sharing in 1:1 and GroupV1 groups
2020-10-26 15:48:44 -07:00
Chris Svenningsen
fdc3476106
Fix a few pinned chat sync issues
2020-10-15 18:59:45 -04:00
Josh Perez
1507dea351
Move calling duration timer into redux state
2020-10-13 14:02:43 -07:00
Josh Perez
59a181bd30
Calling: Lobby
2020-10-12 18:10:08 -04:00
Evan Hahn
c57f7f1cdb
Call requests: caller
2020-10-12 18:10:08 -04:00
Josh Perez
a581f6ea81
Calling: Picture-in-picture
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
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
Sidney Keese
2ade4acd52
Migrate util, types, state, sticker-creator to ESLint
2020-09-21 15:42:51 -04:00
Evan Hahn
de66486e41
Add sound effect for notifications in Linux
2020-09-21 15:42:50 -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
84e52c948b
Mute conversations
2020-08-28 15:42:25 -04:00
Josh Perez
8ab1013f70
Calling: Device Selection
2020-08-28 15:42:25 -04:00
Sidney Keese
5aac427017
Migrate StickerButton, StickerManager, StickerPicker to storybook
2020-08-28 15:42:24 -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
Josh Perez
6a68b37c83
New message state: Partially sent
2020-08-06 18:22:52 -07: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
Peter Thatcher
c6d5607b8c
Fix incoming call ringtone by awaiting the playout
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
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
e536929e35
Handle messages with the same received_at
2020-07-13 16:06:24 -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
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
9a3ed5ac8d
Ensure UpdateDialog closes when restart signal is tapped
2020-04-06 17:12:16 -07:00
Scott Nonnenberg
30e5051239
Eliminate clipped error icon for wide messages with errors
2020-03-25 16:47:42 -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
a90246cbe5
Passive UUID support
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Josh Perez
018dc34e47
Fix for fallback update dialog
2020-02-20 16:24:40 -08:00
Josh Perez
18fd44f504
Move all status/alert dialogs into the Left Pane
2020-02-12 13:30:58 -08:00
Scott Nonnenberg
c147e6ce25
Restore contact/conversation differentiation in search results
2020-02-06 14:52:05 -05:00
Ken Powers
01d4aa0772
Update to new message bubble reactions design
2020-02-03 12:02:49 -08:00
Scott Nonnenberg
682ac656c6
Handle duplicate receivedAt timestamps for MESSAGE_RESET event
2020-02-03 14:32:03 -05:00
Scott Nonnenberg
4f16cf595c
Ensure that oldest/newest are correct given duplicate timestamps
2020-01-31 07:39:30 -08:00
Scott Nonnenberg
4af7a9ae2c
ducks/conversations: Ensure metrics agree with in-memory messages
...
* ducks/conversations: Ensure metrics agree with in-memory messages
* Clean up logic cleaning up metrics
2020-01-16 11:45:06 -05:00
Scott Nonnenberg
0f9bc57ccb
Only show pack installed tooltip for non-blessed, local installs
2020-01-09 09:35:33 -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
Scott Nonnenberg
2a0a73cfc1
Keyboard/mouse mode and keyboard support bugfixes
2019-11-21 14:16:06 -05:00
Scott Nonnenberg
20a892247f
Keyboard shortcuts and accessibility
2019-11-13 16:53:42 -08:00
Scott Nonnenberg
86864279b2
Ensure we track message height change when long message loads
2019-10-17 13:19:41 -04: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
e39c6e5321
Don't search conversations if searching within conversation
2019-09-05 08:59:21 -07:00
Scott Nonnenberg
dbc312e189
Timeline: Resize message if any attachment is no longer pending
2019-09-04 17:11:30 -04:00
Scott Nonnenberg
cbde0bb3d1
Timeline: Handle height change due to pending voice note
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
936768d9c1
Recalculate message height when pending sticker is loaded
2019-08-22 15:41:55 -07:00
Scott Nonnenberg
c570a92e76
Fixes for CI
2019-08-21 16:04:49 -07:00
Scott Nonnenberg
90c2a97aa7
Address alpha feedback
2019-08-21 14:55:18 -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
7b645011c2
New composition area with emoji typeahead
2019-07-17 11:29:51 -07:00
Ken Powers
be5d0837f8
Support additional sticker states
...
Co-authored-by: scott@signal.org
Co-authored-by: ken@signal.org
2019-05-29 11:01:32 -07:00
Ken Powers
0e9d549cf3
Fuzzy-Searchable Emoji Picker
2019-05-24 17:03:13 -07:00
Ken Powers
29de50c12a
Stickers
...
Co-authored-by: scott@signal.org
Co-authored-by: ken@signal.org
2019-05-16 16:10:37 -07:00
Scott Nonnenberg
c41bc53614
Refactor messages model; New timeline react components
2019-05-16 15:23:21 -07:00
Scott Nonnenberg
6ffbc0ac06
Archive Conversation
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
031b64a476
Disable full-text search until we can go to arbitrary messages
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
b3ac1373fa
Move left pane entirely to React
2019-03-12 17:44:14 -07:00