Commit graph

444 commits

Author SHA1 Message Date
Evan Hahn
44ecfe4746
Shorten spell check preferences string 2021-05-12 10:38:17 -07:00
Jacob Kiesel
75d54e7737 Add launch-on login option
See [#5244][0].

[0]: https://github.com/signalapp/Signal-Desktop/pull/5244
2021-05-11 15:59:21 -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
fe772af251
Show "no groups in common" warning for relevant message requests 2021-04-30 15:58:57 -07:00
Evan Hahn
e7ef3de6d0 Profile name spoofing dialog 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
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
Josh Perez
6c0acd09df
Sync mute state 2021-04-09 11:19:38 -05:00
Evan Hahn
c8dc8a7398 Don't let users leave groups if they're the only admin 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
15227aa962
Clarify warning text for local message deletion
Co-authored-by: Jost Schulte <jost@jibble.io>

See [#5130][0].

[0]: https://github.com/signalapp/Signal-Desktop/pull/5130
2021-04-02 15:28:37 -05:00
Fedor Indutny
05f59f3db1 Add download button and pending spinner for audio messages 2021-03-19 16:57:36 -04:00
Evan Hahn
b81a52bbdd New Group administration: Add users 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
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
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
Scott Nonnenberg
a8d7d718b5
Fix string for unattributed admin approval enable 2021-02-08 14:04:56 -06: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
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
Scott Nonnenberg
272e6cc614 Group V2 invite links: in-conversation messages 2021-01-25 18:28:58 -08:00
Josh Perez
016fc62b8b
When group call is empty you are now full screen 2020-12-10 10:40:34 -08:00
Scott Nonnenberg
8c771ccb89
New Group migration dialog: Migrate -> Upgrade 2020-12-09 09:57:45 -08:00
Josh Perez
456c51308f
Group Calling: You is in this call 2020-12-08 18:35:21 -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
Josh Perez
81cc8a1211
Group Calling: blocking participants
Co-authored-by: Evan Hahn <evanhahn@signal.org>
2020-12-01 19:30:25 -06:00
Scott Nonnenberg
b3c161f484
Migration: Use pendingMember roles, better 'you were invited' 2020-12-01 15:45:39 -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
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
Scott Nonnenberg
3ee830ae63
Prevent send and show toast for invalid conversations 2020-11-16 15:34:41 -06:00
Chris Svenningsen
d593f74241
New contact popup when clicking on group member or avatar 2020-11-11 09:36:05 -08:00
Chris Svenningsen
c408072576 Mark conversation as unread
Co-authored-by: Sidney Keese <sidney@carbonfive.com>
2020-11-04 13:03:10 -06:00
Josh Perez
3f623d9348 Minor reaction string change in shortcuts 2020-11-04 13:00:40 -06:00
Josh Perez
7d29cb5edf Calling participants list 2020-11-04 13:00:40 -06:00
Vin Howe
526ab4fe29
Add menu option for copying supported images in lightbox (#4614) 2020-11-02 16:47:46 -08:00
jimio-signal
1c057323ba Point to support flow instead of github 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
Scott Nonnenberg
d0cfd7b7db
Remove 'call you' from message requests copy 2020-10-15 15:03:28 -04:00
Josh Perez
8446b2dc61 Calling: Match buttons in other clients 2020-10-15 14:35:51 -04: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
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
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
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
333dc17c0a Proper call requests for callee 2020-10-12 18:10:07 -04:00
Evan Hahn
bdd71e4898 Support APNGs in Sticker Creator 2020-10-12 18:10:07 -04:00
Scott Nonnenberg
6b3d5c19b3 GroupV2: Show better strings for 'added but previously invited' cases 2020-10-12 18:10:07 -04:00
Evan Hahn
eba1bf3100 Add software acknowledgments, link to them from About window 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
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
Scott Nonnenberg
7a02cc815d Support for new GroupV2 groups 2020-09-09 17:34:57 -07:00
Evan Hahn
91a591c6ca Show group names in notifications, and only show the latest 2020-09-09 17:34:57 -07:00
Evan Hahn
496a90efbb More descriptive notification/left pane text 2020-09-09 17:34:57 -07: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
hashes4merkle
243ed832ba
Fix typos in messages.json (#4471) 2020-08-31 20:59:14 -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
Josh Perez
8ab1013f70 Calling: Device Selection 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
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
u32i64
0c9e7ced60
Fix some typos in messages.json (#4447) 2020-08-14 10:01:51 -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
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
6afa6db5be Conversation.getTitle(): return 'unknown contact' if no data 2020-07-13 16:06:29 -07:00
Scott Nonnenberg
a8789919e8 Github -> GitHub 2020-06-24 17:26:37 -07:00
Ken Powers
b842b69660 Help Menu changes 2020-06-23 17:30:33 -07:00
Scott Nonnenberg
56470d8374 View All Media -> View Recent Media 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
Ken Powers
ba5e2ff6e5 Receive support for DOE messages 2020-04-29 17:42:41 -07:00
Scott Nonnenberg
464c814a95 Remove all IndexedDB migration code 2020-04-29 17:42:41 -07:00
Scott Nonnenberg
df849c65a8 Settings pane -> Preferences pane
* Settings pane -> Preferences pane

* Remove 'settings' string
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
Scott Nonnenberg
71436d18e2 Include sender in group update notifications 2020-04-15 14:44:46 -07:00
Ken Powers
c780c12df7
Use multiple spellCheckDirty messages 2020-03-25 08:16:10 -07:00
Ken Powers
4a8f5db0a4 Use Electron Spellchecker 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
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
Josh Perez
2138395bcb Improve UI around Voice Message limits 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
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
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
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
55eff02872 Reintroduce file chooser dialog for every attachment save 2020-01-15 17:23:02 -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
f7568810ea Sticker Creator: New toaster implementation, better error handling 2020-01-06 18:20:16 -08:00
Ken Powers
fe65fd3eaa Sticker creator updates: new 200 sticker max, WebP supported 2019-12-19 15:27:02 -08:00
Ken Powers
11d47a8eb9 Sticker Creator 2019-12-17 12:28:46 -08:00
Scott Nonnenberg
b168d96a56 Lint fix 2019-12-17 11:06:06 -08:00
Ken Powers
d86e8ef7ec Add sticker introduction tooltip image 2019-12-17 10:30:03 -08:00
Scott Nonnenberg
bee52bf7e2 Voice Note -> Voice Message 2019-11-15 14:34:24 -08:00
Scott Nonnenberg
20a892247f Keyboard shortcuts and accessibility 2019-11-13 16:53:42 -08:00
Scott Nonnenberg
dd1f9b055f New AvatarPopup component 2019-10-17 14:22:07 -04:00
Artem Varaksa
de16d5cee7 Fix typos in messages.json (#3668)
* Fix typo in messages.json
* Fix description of `Disappearing Video` string
2019-10-11 08:46:23 -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
c39d5a811a Full-text search within conversation 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
Artem Varaksa
cd8421caf2 Fix typo: saftey -> safety (#3470) 2019-07-22 09:53:32 -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
Scott Nonnenberg
277780360c Update string for unspported message after upgrade 2019-06-19 15:52:57 -07:00
Scott Nonnenberg
9fd867fdd1 Support new 'requiredProtocolVersion' in DataMessage
* Add new requiredProtocolVersion field to DataMessage

* Message.requiredProtocolVersion, warning if version mot supported

* Update strings; limit width; new left pane preview text
2019-06-10 17:40:02 -04: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
fd36720079 Add "system" theme setting for MacOS 2019-05-16 17:15:54 -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
b31fbcaa17 Don't send if message body is too long 2019-04-16 14:35:16 -07:00
Scott Nonnenberg
c8ea2e9463 Download and install updates without the help of electron-updater 2019-04-05 17:18:37 -07:00
Scott Nonnenberg
8c4d90df07 Send long text as an attachment instead of inline
Remove Android length warning

Handle incoming long message attachments

Show long download pending status in message bubble

Fix the width of the smallest spinner

Remove Android length warning from HTML templates
2019-03-14 17:30:46 -07:00
Scott Nonnenberg
42041d955c Fix typo in 'move to inbox' string 2019-03-13 09:15:03 -07:00
Scott Nonnenberg
6ffbc0ac06 Archive Conversation 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
Scott Nonnenberg
ae161c6cf6 Update to Electron 4.x 2019-03-12 17:44:14 -07:00
Scott Nonnenberg
5165eb3bd4 On database error: show popup, allow user to delete and relaunch 2019-02-20 16:51:30 -08:00
Scott Nonnenberg
a43a78731a Note to Self 2019-02-12 16:08:51 -08:00
Scott Nonnenberg
0d7480bd92 A number of small fixes for Link Previews 2019-02-05 13:55:55 -08:00
Scott Nonnenberg
813924685e Link Previews 2019-01-29 13:53:14 -08:00