Commit Graph

523 Commits

Author SHA1 Message Date
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
Scott Nonnenberg 1e4b562922 Multiple images can now be selected in file chooser and drag/drop 2019-01-16 10:32:57 -08:00
Scott Nonnenberg 0de54e125c Improve caption editor usability, new 'add attachment' affordance 2019-01-15 10:51:49 -08:00
Scott Nonnenberg aab2a57b48 Some style and interaction fine-tuning 2019-01-14 17:40:31 -08:00
Scott Nonnenberg f9ea7be61f Reintroduce single attachment limit 2019-01-04 12:25:48 -08:00
Scott Nonnenberg 985b1d6aa6 New staged attachments UI, multiple image attachments per message 2019-01-04 12:21:26 -08:00
Scott Nonnenberg 79a861a870 Typing Indicators 2018-11-26 15:26:04 -08:00
Scott Nonnenberg 99252702e1 Support receiving multiple images in one messages 2018-11-26 15:26:04 -08:00
Scott Nonnenberg 1755e0adfd Move all remaining stores to SQLCipher 2018-10-31 17:36:51 -07:00
Scott Nonnenberg a7d78c0e9b Sealed Sender support
https://signal.org/blog/sealed-sender/
2018-10-29 14:49:18 -07:00
Scott Nonnenberg ca61c9cb85 Warnings for dangerous files 2018-10-09 13:48:32 -07:00
Scott Nonnenberg 9c399624cc Support for blocking groups on mobile, via group/blocked syncs 2018-09-14 16:25:43 -07:00
Scott Nonnenberg 46dac94ab8 Pop toast on attempted attach if image attachment is too large 2018-09-05 17:48:43 -07:00
Scott Nonnenberg 8290146721 Show generic attachment for non-loading/too-large images/videos 2018-09-05 17:48:43 -07:00
Scott Nonnenberg b3d56276a8 Conversations now better take advantage of wide screens 2018-08-15 17:00:32 -07:00
Scott Nonnenberg fedfbed304 Copy quoted message contents into quote on receipt
Also:
  - visually distinguish any reference we couldn't verify on receipt
  - show toast on quote click if we can't scroll to message
  - toast visuals redesigned to match rest of app
2018-08-15 14:58:55 -07:00
Scott Nonnenberg 1d7987108b Show and log progress during the SQLCipher migration 2018-08-02 17:25:51 -07:00
Scott Nonnenberg 3b7ee3e2ce A couple copy changes: Show -> View, New Number -> Safety Number 2018-08-01 11:59:49 -07:00
Scott Nonnenberg e80857562a Disappearing messages: show 'disabled' instead of 'set to off' 2018-07-27 09:15:57 -07:00
Scott Nonnenberg 643739f65d
Responding to feedback on the updated visuals (#2549)
* Conversation List Item: timestamp bold only when convo has unread

* Preserve the positioning of overlays on re-entry into convo

* ConversationListItem: Handle missing and broken thumbnails

* Shorten timestamp in left pane for better Android consistency

* Update convo last updated if last was expire timer change

But not if it was from a sync instead of from you or from a contact.

* Make links in quotes the same color as the text

* MediaGridItem: Update placeholder icon colors for dark theme

* Ensure turning off timer shows 'Timer set to off' in left pane

* ConversationListItem: Show unread count in blue circle

* Add one pixel margin to blue indicator for text alignment

* Ensure replies to voice message can bet sent successfully
2018-07-20 16:37:57 -07:00
Scott Nonnenberg 2ef2235317 Show error if debug log upload fails 2018-07-19 10:21:53 -07:00
Scott Nonnenberg c517e4193b New option: Disable spell check 2018-07-18 19:41:16 -07:00
Scott Nonnenberg 3c69886320 Finish new Message component, integrate into application
Also:
- New schema version 8 with video/image thumbnails, screenshots, sizes
- Upgrade messages not at current schema version when loading messages
  to show in conversation
- New MessageDetail react component
- New ConversationHeader react component
2018-07-17 15:58:07 -07:00
Scott Nonnenberg 69f11c4a7b Include _locales/en/messages.json in prettier formatting 2018-07-17 15:53:32 -07:00
Scott Nonnenberg dc11db92f9 New React component: Message
Also: Use react to render contects on the 'show group members' screen
2018-07-17 15:53:33 -07:00
Scott Nonnenberg fc5c52fbdf Remove iOS theme in favor of plain light/dark themes 2018-07-17 15:45:40 -07:00
Scott Nonnenberg ad4387803b New media permission, show dialog when not enabled for voice msg
UI now in separate renderer:
  - the permissions popup
  - settings dialog
  - debug log dialog
  - about window

Couple bug fixes:
  - About Window: Fix 'escape' to close window
  - Remove outdated dist/copy tasks from Gruntfile

Eslintified settings_view.js
2018-07-03 16:04:21 -07:00
Scott Nonnenberg 9d9a797bda Handle timer updates along with group updates 2018-07-03 16:04:21 -07:00
Scott Nonnenberg 4415293100 Make all OS menus localizable
Turns out that Electron is not localizing the 'role' elements like we
expected would happen.
2018-07-03 16:04:21 -07:00
Scott Nonnenberg 1f02d411a1 Add missing timer option strings 2018-07-03 15:10:00 -07:00
Scott Nonnenberg 9ef7c42097 Add link to terms and privacy policy in about window 2018-06-21 15:38:11 -07:00
Scott Nonnenberg 01be58acc2 Remove formatting in importError localization string 2018-05-23 16:26:48 -07:00
Scott Nonnenberg ab00c71c46 Remove unused messages.json strings 2018-05-23 16:26:47 -07:00
Scott Nonnenberg 2988da0981 Turn on all of Microsoft's recommend lint rules
Biggest changes forced by this: alt tags for all images, resulting in
new strings added to messages.json, and a new i18n paramter/prop added
in a plot of places.

Another change of note is that there are two new tslint.json files under
ts/test and ts/styleguide to relax our rules a bit there. This required
a change to our package.json script, as manually specifying the config
file there made it ignore our tslint.json files in subdirectories
2018-05-23 16:26:47 -07:00
Scott Nonnenberg d54aedcefa
A few fixes for the contact detail screen (#2374)
* Only show 'send message' on contact detail when user has account

* Make contact detail headers visible in dark mode

* Fix vertical scrolling for very large contact in detail pane

* Fix a couple comment typos
2018-05-23 12:15:46 -07:00
Scott Nonnenberg eafa038ba4 Use backup labels if custom contact type labels are missing 2018-05-10 11:54:58 -07:00
Daniel Gasienica 3bf8a8966a Notification improvements
- Remove on read, on focus, and on exit.
- Show multi-message notifications like '5 new messages'.
2018-05-10 14:45:56 -04:00
Scott Nonnenberg 41be7f126b Visuals for embedded contacts as well as contact detail screen 2018-05-07 19:09:55 -07:00
Daniel Gasienica e167958135 Remove unused `messageCaption` 2018-05-02 18:11:13 -04:00
Scott Nonnenberg 82e2fe93a5
Show 'You' in Android theme quotes instead of contact name (#2312)
Show 'You' in Android theme quotes instead of contact name
2018-04-30 13:49:19 -07:00
Scott Nonnenberg c5935eef5d Show 'You' in Android theme quotes instead of contact name 2018-04-30 12:33:16 -07:00
Daniel Gasienica fa45656e8e Wire up media gallery empty state 2018-04-27 16:31:43 -04:00
Daniel Gasienica 9858e0e680 Fix translation description 2018-04-25 15:24:51 -04:00
Daniel Gasienica a86a596f34 Add translations for section headers in media gallery 2018-04-25 15:24:51 -04:00
Daniel Gasienica 273248d3fd Wire up ‘View All Media’ menu item 2018-04-25 15:24:50 -04:00
Scott Nonnenberg 7d11efc50b ConversationView: Add 'View All Media' menu item 2018-04-25 15:24:50 -04:00
Scott Nonnenberg ef1d568a80
Restore rendering of group update and end session messages
The previous work to refactor bubbles broke rendering for these message
types. :0/
2018-04-23 19:16:00 -07:00
Scott Nonnenberg 12257e1560
MessageView: Show menu w/ 'reply to message' on triple-dot click 2018-04-20 15:23:55 -07:00
Scott Nonnenberg 73e1498403
messages.json: Fix typo in replacement string 2018-04-16 12:16:11 -07:00
Scott Nonnenberg 087dd0f758
Support for iOS theme 2018-04-13 18:10:49 -07:00
Scott Nonnenberg 21bf02c94d
Fixed examples in Quote.md, rough Android visuals 2018-04-13 18:05:44 -07:00
Daniel Gasienica add19aa732 Add initialization view 2018-03-26 16:56:37 -04:00
Scott Nonnenberg 383e02edc4
New section in settings screen, full-screen 'are you sure?' 2018-03-14 14:42:13 -07:00
Daniel Gasienica 1e2cd3ae1f Rename ‘File a Bug’ to ‘Report an Issue’
This makes it more consistent with ‘Report an issue’ under View > Debug Log.

Not using ellipsis as menu item doesn’t require user confirmation:
https://stackoverflow.com/a/637708
2018-03-08 16:21:27 -05:00
Daniel Gasienica bd5f3bd73a Make dialog title consistent with menu bar item 2018-03-08 16:21:27 -05:00
Daniel Gasienica 3df22026ab UX Improvements: Global Menu & Copy Changes (#2078)
- [x] Removed ‘Restart Signal’ global menu item
- [x] Change _Click to create contact…_ to _Start conversation…_
- [x] Move global menu (top-left kebab) into OS menu bar,
      i.e. **Settings** > **Preferences…**
- [x] Add tests for OS menu bar templates
- [x] Fix bug with **Window** menu on macOS when showing setup options
- [x] Use _Title Case_ for all OS menu bar menu items for consistency

commit dedf7c9af0
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 16:53:42 2018 -0500

    Use ‘Title Case’ to be consistent with OS menus

    References:
    - Apple:
        - https://developer.apple.com/macos/human-interface-guidelines/menus/menu-anatomy/#menu-and-menu-item-titles
        - https://developer.apple.com/library/content/documentation/FinalCutProX/Conceptual/FxPlugHIG/TextStyleGuidelines/TextStyleGuidelines.html#//apple_ref/doc/uid/TP40013782-CH6-SW1
    - https://titlecaseconverter.com/

commit 3286da29b3
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 16:36:50 2018 -0500

    Fix bug for macOS ‘Window’ menu with setup options

commit 236a23d1ea
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 16:27:46 2018 -0500

    Test menus with included setup options

commit c5d5f5abb8
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 16:10:27 2018 -0500

    Move settings (‘Preferences’) into OS-level menu

    This reduces our reliance on custom UI until we have more design resources.

commit 027803f8f4
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 16:02:56 2018 -0500

    Prepare tests for menu with/without included setup

commit 9e2f006924
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 15:55:46 2018 -0500

    Destructure `includeSetup`

commit 6b2a1eccdf
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 15:55:14 2018 -0500

    🔤 `createTemplate` `options`

commit c2fecba34b
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 12:49:55 2018 -0500

    Test menu for Windows and Linux

commit 60281b1af9
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 12:40:39 2018 -0500

    Add `yarn run test-app` command

commit 1a0489919c
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 12:40:29 2018 -0500

    Add test for `SignalMenu.createTemplate` on macOS

commit 9638b86c0f
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 12:34:46 2018 -0500

    Make `createTemplate` pure

    Extracting `options.platform` makes it easier to test without having to
    stub `process.platform`.

commit 9c26404892
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:47:39 2018 -0500

    Extract `locale.load` `appLocale` & `logger` for testability

    This allows us to run this code in a non-Electron environment, e.g. Node.js
    Mocha test suite.

commit 710b22438d
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:46:13 2018 -0500

    🔤 npm scripts

commit 9ae22937fb
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:45:30 2018 -0500

    Use 2-space indendation for `app` module tests

commit 22c26baf61
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:22:55 2018 -0500

    Prefer named exports

commit 9c95261952
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:22:46 2018 -0500

    🔤 Organize `require`s

commit 2f144d24d9
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Tue Feb 27 11:13:50 2018 -0500

    Remove existing global hamburger menu

    This will be replaced by a OS-level ‘Preferences’ menu.

commit f5adb374cb
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Mon Feb 26 18:40:54 2018 -0500

    Remove ‘Restart Signal’ menu from settings

    Apparently, this is a remnant from the Chrome web application.

commit d7a206bc8e
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Mon Feb 26 17:16:49 2018 -0500

    Clarify label for starting a new conversation

    When user a enters a number that is not a contact, we prompt them to start a new
    conversation.

commit 715a406436
Author: Daniel Gasienica <daniel@gasienica.ch>
Date:   Mon Feb 26 16:46:26 2018 -0500

    Use ‘Enter name or number’ as prompt’

    This follows implementation of Android and recommendation from Alissa.
2018-03-02 15:59:39 -05:00
Scott Nonnenberg 426dab85a2
New design for import/install, 'light' import (#2053)
- A new design for the import flow. It features:
  - Icons at the top of every screen
  - Gray background, blue buttons, thinner text
  - Simpler copy
- A new design for the install flow. It features:
  - Immediate entry into the QR code screen
  - Animated dots to show that we're loading the QR code from the server
  - Fewer screens: 1) QR 2) device name 3) sync-in-progress
- When not set up, the app opens directly into the install screen, which has been streamlined. The `--import` command-line argument will cause the app to open directly into the import flow.
- Support for two different flavors of builds - the normal build will open into the standard registration flow, and the import flavor will be exactly the same except during setup it will open directly into the import flow.
- A new design for the (dev-only) standalone registration view
- When these install sequences are active, the OS File menu has entries to allow you to switch the method of setup you'd like to use. These go away as soon as the first step is taken in any of these flows.
- The device name (chosen on initial setup) is now shown in the settings panel
- At the end of a light import, we hand off to the normal device link screen, starting at the QR code. On a full import, we remove the sensitive encryption information in the export to prevent conflicts on multiple imports.
- `Whisper.Backup.exportToDirectory()` takes an options object so you can tell it to do a light export.
- `Whisper.Backup.importFromDirectory()` takes an options object so you can force it to load only the light components found on disk. It also returns an object so you can tell whether a given import was a full import or light import.
- On start of import, we build a list of all the ids present in the messages, conversations, and groups stores in IndexedDB. This can take some time if a lot of data is in the database already, but it makes the subsequent deduplicated import very fast.
- Disappearing messages are now excluded when exporting
- Remove some TODOs in the tests
2018-02-22 10:40:32 -08:00
Steven Leiva 742fe73d34 'Restart' -> 'Restart Signal' button in update dialog (#2024) 2018-02-01 11:35:15 -08:00
Scott Nonnenberg 7b49180bc0
Big update to new signal branding (#2018) 2018-01-30 14:22:51 -08:00
Scott Nonnenberg 72b7e4ec34
Process expireTimer and block status along with contact/group sync (#1980)
* Mark group as left = false if it is active in contact sync

* Handle expireTimer + blocked state along with contact/group sync
2018-01-29 18:14:39 -08:00
Martino Pilia cd50fe3123 Add a tray icon to the application (#1676)
This commit adds a tray icon to the application, shown in the system
tray bar, that can be used to minimise the application window.  This
is a common feature on most desktop messaging apps (e.g. Telegram
Desktop or Slack) and allows to save space in the system task bar.

The tray icon provides a context menu that contains a button to
show/hide the application window, and a button to quit the
application. When the tray icon is clicked, the visibility of the
window is toggled.  When the close (x) button of the window is
pressed, the application is not terminated but minimised to the tray
icon instead (it can be terminated by using the "Quit" entry in the
File menu or in the context menu of the tray icon).

The tray icon is disabled by default, and two command line arguments
are available to enable it:
  --use-tray-icon: enables the tray icon
  --start-in-tray: enables the tray icon and the application starts
                   minimised in the tray bar

Resolves: #1480
2017-11-27 14:48:09 -08:00
Scott Nonnenberg 0a4f984cf5
Properly localize group changes (#1802)
* Properly localize group updates

* Remove phone number in display name if contact in address book

* New string for multiple new group members
2017-11-21 16:38:13 -08:00
Scott Nonnenberg f07302c2cd
Add some copy clarifying the import process (#1803) 2017-11-21 14:51:58 -08:00
Vangelis c0c4730bad Added top level menu shortcuts, pull labels from messages.json (#1702)
* Added top level menu shortcuts (Fixes #1688 and #1695).

The ampersand (&) character in front of a letter in a menu label
indicates that the letter that follows '&' will be used as a keyboard
shortcut letter to access this menu. In Windows/Linux, the default
shortcut combination is Alt+<letter>.

* Use non-hardcoded menu labels.

The menu labels were hardcoded in English.
We should not be using plain strings right in the source code, but
pulling them from the `messages.json` files instead.
2017-11-07 15:14:20 -08:00
Scott Nonnenberg 845291c51e
Wait for IndexedDB transactions to complete for import scale (#1698)
* No longer reference 'Chrome App' on the start screen

* Imports are only complete when IndexedDB transaction is complete
2017-11-07 10:19:18 -08:00
Heather Booker 0d3c70151d Fix copy pasta of timestamp_m to timestamp_h in locales (#1582) 2017-10-20 15:51:28 -07:00
Scott Nonnenberg 75cece3358 Improve OS menu (#1563)
* Remove reload options, new file/help menus, tools/log at bottom

* Further menus refactor: install handlers at template creation

* WIP: Further tune menus, add custom about window

* New About window, new help menu items, menu labels now i18n

* Default device name on registration is now computer hostname

The OS of the device makes sense for those of us testing across a lot of
different OSes. And maybe for a user with just one desktop device. But
most users with multiple desktop devices are using the same OS for both.

* About window: Only show window when content is ready

* Fix typo in app/menu.js
2017-10-13 16:49:16 -07:00
Axel 3dc3667b45 Add setting to hide menu bar (#1551)
* Add setting to hide menu bar

Add a setting in the themes section to hide the menu bar.
The menu bar is not needed in everyday use and might not fit in with
signals dark theme. The hidden menu bar can still be shown by pressing
alt.
autoHideMenuBar is added to windowConfig and saved and restored on
startup to prevent flickering.

* Trigger events only when related setting changes

Set the event to trigger on instanciation of the view.
Notification settings no longer reapply the theme or menu bar settings.

* Save window state when closing the window

When not moving or resizing the window, no BrowserWindow config would be
created and saved.
2017-10-13 11:39:18 -07:00
Lilia 24f3763836 i18n group updates (#1549)
// FREEBIE
2017-10-10 08:49:12 -07:00
Scott Nonnenberg 8b60212c12 Update strings for fa, no, pt_BR, pt_PT, ro, zh_CN, zh_TW (#1517)
Also, remove unneeded (and potentially brittle) title from support link
in importError string.

FREEBIE
2017-09-28 17:44:41 -07:00
Scott Nonnenberg 0416d2162c
Tune the import error message: suggest re-export, debug log link
FREEBIE
2017-09-14 17:03:16 -07:00
Scott Nonnenberg 7f8ade7747
Remove migration-related functionality, leaving export stuff
FREEBIE
2017-09-14 17:03:14 -07:00
Scott Nonnenberg 413fba80af
Separate dir selection from import, better import button text
This allows us to show the 'import in progress' screen only when the
user has successfully selected a directory.

FREEBIE
2017-09-14 17:02:46 -07:00
Scott Nonnenberg ba347744ff
Import: choice on first startup, workflow, ported to Node.js fs API
FREEBIE
2017-09-14 17:02:43 -07:00
David Balatero 9a7f4ae41c
Show dialog box when there's an update for download 2017-09-14 16:53:50 -07:00
lilia 2528acc717
Remove platform-specific links from install flow
Mostly to satisfy the mac app store.

// FREEBIE
2017-09-14 16:53:43 -07:00
Scott Nonnenberg 00e1a6a36a Export: Improve usability - timing expectations, install button (#1474)
Because export might take a couple minutes, we now set expectations
that it might take 'several minutes' instead of just 'please wait.'

We also promote 'Install new Signal Desktop' from a text link in the
instructions to a button. This is important on the 'Completed' screen
because it is bigger and to the left of the 'Export Again' button, which
previously drew primary focus on that screen.

Lastly, we also remove the title-specific element of the support link,
so we're resilient to title changes in the future.

FREEBIE
2017-09-13 13:33:40 -07:00
Scott Nonnenberg c0cd733139 Full export, migration banner, and full migration workflow - behind flag (#1342)
* Add support for backup and restore

This first pass works for all stores except messages, pending some scaling
improvements.

// FREEBIE

* Import of messages and attachments

Properly sanitize filenames. Logging information that will help with
debugging but won't threaten privacy (no contact or group names),
where the on-disk directories have this information to make things
human-readable

FREEBIE

* First fully operational single-action export and import!

FREEBIE

* Add migration export flow

A banner alert leads to a blocking ui for the migration. We close the socket and
wait for incoming messages to drain before starting the export.

FREEBIE

* A number of updates for the export flow

1. We don't immediately pop the directory selection dialog box, instead
  showing an explicit 'choose directory' button after explaining what is
  about to happen
2. We show a 'submit debug log' button on most steps of the process
3. We handle export errors and encourage the user to double-check their
  filesystem then submit their log
4. We are resilient to restarts during the process
5. We handle the user cancelling out of the directory selection dialog
  differently from other errors.
6. The export process is now serialized: non-messages, then messages.
7. After successful export, show where the data is on disk

FREEBUE

* Put migration behind a flag

FREEBIE

* Shut down websocket before proceeding with export

FREEBIE

* Add MigrationView to test/index.html to fix test

FREEBIE

* Remove 'Submit Debug Log' button when the export process is complete

FREEBIE

* Create a 'Signal Export' directory below user-chosen dir

This cleans things up a bit so we don't litter the user's target
directory with lots of stuff.

FREEBIE

* Clarify MessageReceiver.drain() method comments

FREEBIE

* A couple updates for clarity - event names, else handling

Also the removal of wait(), which wasn't used anywhere.

FREEBIE

* A number of wording updates for the export flow

FREEBIE

* Export complete: put dir on its own line, make text selectable

FREEBIE
2017-08-28 13:06:10 -07:00
Scott Nonnenberg b2690afa32 Clarify someRecipientsFailed string via description
FREEBIE
2017-08-08 11:22:41 -07:00
Scott Nonnenberg 305bd6b3b8 App loading screen: show messages processed so far
Also, show the same loading screen on index.js before we've bootstrapped
the app.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 14765599f3 Delete individual message
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 782b8c7640 someRecipientsFailed string: Add period for consistency
... with messageNotSent.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 08ecb5f3d2 Improve wording on the 'SN changed' popup after verification
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 8112cd220a Show warning when we discover key change on verify
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 86b1aafe0c "Clear verification" -> "Mark as not verified"
We lose consistency with iOS, but it is more consisent with the other
phrasing used throughout the app.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg ff4fde651c Make it clear in conversation just some recipients failed
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 12914307f1 Improve experience when discovering identity key error on send
New experience in the Message Detail view when outgoing identity key
errors happen, matching the Android View.

'View' button is only shown on outgoing key errors right now.

When a contact with an outgoing identity key error is clicked, they are
taken to a view like the popup that comes up on Android: an explanation
of what happened and three options: 'Show Safety Number', 'Send Anyway',
and 'Cancel'

Contacts are now sorted alphabetically, with the set of contacts with
errors coming before the rest.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg b6cca41a0c Update verification-related strings to better match mobile app
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 1e8ae774a2 Differentiate between local and remote trust decisions
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 2778148179 Move unverified banner text to match Android
Longer, so it will wrap more often. We have the right alignment and
padding in place, though, so it looks pretty reasonable.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 12d7fb3b74 Left-align confirmation dialog text, explain more on 'send anyway'
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 16433d661a Show call to action on group member list when verifying
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 31bf05e14a Add verified state summary to top of safety number screen
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 1cf9289b1a Add items to conversation history when user verifies/unverifies
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 02973372aa Update strings to use 'Click to show' not 'Click to verify'
'Click to verify' suggests immediate action. We don't want that.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg a827334c3e Allow re-send of messages in msg detail view on OutgoingKeyError
We also show more errors than we used to in the MessageDetail screen
to help make it clear what is happening, and why the user would need to
re-send.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 8264f3ba33 Make the term 'Verified' fully localizable
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 3d61f87d86 Remove isVerified string from messages.json - don't use
We don't need this extra string for the safety number screen, since the
header includes the user's verified status.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg c7e385eb38 Remove 'safety number approval' option from settings dialog
Also sync templates in test/index.html and background.html

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg 243cbd8123 Confirmaton on send, banner when 'unverified'
Not yet using the new APIs, but ready to. Still to do:
- Send sync messages on trust decisions
- Respond to received trust decision sync messages
- Show trust decisions in the conversation history
- In that rare situation where a sent message ends up with a key error
  make it easy to retry the send.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg bedf10056b Support for group-member verifications via second-level panel
Also:
- All the necessary wire-up to update things in real time. If you have
a safety number page up via a group member view as well as via a 1:1
conversation with that contact, they'll both be updated as the
underlying model changes. Similarly, the overall group will update
in real-time as members change.
- A bit of special-casing for yourself in a group conversation - you're
shown as 'me' and are not clickable, where normally that would take you
to the Safety Number screen for that contact. You are also not included
in the trust calculations for a given group.

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg ae3587f05e Move all instances of 'verify identity' to 'show identity'
As discussed in standup this morning - only the act of verifying or a
statement about current status should use that word 'verify.'

FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg ee0b0f5ffb Remove all concept of 'key conflict' from the app 2017-08-04 12:03:25 -07:00
Ikarulus ec3278ca3a add message length warning for android clients 2017-06-07 15:53:14 -07:00
Scott Nonnenberg d294cc96a5 A few tweaks to safety number-related UI
* Show a pointer cursor on safety number change notification
* Add 'click to verify' to the text shown there
* Add ':' to the text shown on the safety number screen
* Limit the width of the safety number box, to force 3x4 layout
* Center the safety number box

FREEBIE
2017-05-23 15:50:22 -07:00
lilia 681418cf6b Restyle last seen indicator
Add horizontal line behind text.

// FREEBIE
2017-05-23 11:08:23 -07:00
Scott Nonnenberg 4c7bfbe9ff Scroll down button: when scrolled up, or new non-visible message
FREEBIE
2017-05-23 11:08:23 -07:00
Scott Nonnenberg fed26c36ca Add new Last Seen Indicator with unread count, scroll to it
This is to ensure that when there are a lot of unread messages, the user
is given the chance to see all of them by being scrolled to the oldest
new message.

When a new message comes in, the indicator will be incremented.

When the user sends a message or switches away from the conversation,
the last seen indicator will be removed.

FREEBIE
2017-05-23 11:08:23 -07:00
lilia bec69826ae Add descriptions to i18n messages about network status
A transifx translator requested some clarity around one of these strings, so
I've added brief descriptions for each of them.

// FREEBIE
2017-05-22 12:16:25 -07:00
lilia cfe0c77243 Conversation view blocks sending to left groups
Instead of attempting to send, which will throw an 'Unknown group' exception,
show a toast.

// FREEBIE
2017-05-16 12:10:29 -07:00
lilia 3ea5c0435b Update attachment style
Add names and sizes for all attachments except images, and (as with
arbitrary attachments), clicking on the text will open a save dialog.
In the absence of a filename, choose something that makes sense.

Display different icons for different media types, including distinct icons
for voice notes and audio files.

In iOS theme, audio, video, voice, and files are all encapsulated in bubbles.

Closes #804
Closes #842
Closes #836

// FREEBIE
2017-05-12 15:27:45 -07:00
lilia d3492960a6 Display info in network status when unlinked
When we can't connect due to being unlinked, network status indicator
will show an appropriate informational message and a button to open the
installer window to relink.

// FREEBIE
2017-04-12 20:43:16 -07:00
Sam Vevang ed4991974b set up a new view for displaying the network status
// FREEBIE
2017-04-08 00:10:56 -07:00
karissa eb5c95e287 Add a few missing translatable strings to conversation search view 2017-02-03 20:48:05 -08:00
Asa Ayers bda0430805 Add an option to play audio notifications 2017-02-02 09:00:14 -06:00
RiseT 96252a7ee6 Use singular form for per-conversation safety numbers
// FREEBIE
2016-12-03 20:58:33 +01:00
Ikarulus 53cd3af78b Added a dark theme
I added a dark theme in order to solve #328.
This may fix #328 at least partially.
2016-12-02 00:41:42 +01:00
lilia c0a160b1dd Yet more identity key -> safety numbers changes 2016-10-28 16:53:18 +09:00
lilia 74883ccd3c More identity key -> safety numbers changes 2016-10-28 16:47:45 +09:00
lilia a67bd75484 Update verification screen copy 2016-10-28 15:13:22 +09:00
lilia 635178b06f Fix string 2016-10-10 09:59:40 +09:00
lilia 6162f22766 Fix some localization descriptions 2016-10-08 11:24:19 +09:00