A private messenger for Windows, macOS, and Linux.
Go to file
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
.github Update links to community forum (#2083) 2018-02-28 15:50:56 -05:00
.tx Transifex config specific to electron, updated translations (#1478) 2017-09-14 17:48:09 -07:00
_locales UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
app UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
audio Fix audio notifications on linux (#1526) 2017-10-03 11:08:14 -07:00
build Bypass often-corrupt node_modules/.bin/grunt.cmd on windows (#1481) 2017-09-15 10:20:29 -07:00
components Update libphonenumber (#1598) 2017-10-30 14:45:57 -07:00
config New design for import/install, 'light' import (#2053) 2018-02-22 10:40:32 -08:00
fonts Add fonts so we don't have to hit googlefonts 2015-02-11 17:37:57 -08:00
images New design for import/install, 'light' import (#2053) 2018-02-22 10:40:32 -08:00
js UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
libtextsecure Auto-orient image attachments based on EXIF metadata 2018-02-21 10:28:13 -05:00
protos Sync Protocol Buffers with `libsignal-service-java` (#2046) 2018-02-15 15:06:14 -05:00
stylesheets Show View -> Debug on OSX, ensure Debug Log is visible (#2089) 2018-03-01 12:04:13 -08:00
test UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
.aptly.conf Setup publishing to s3 2017-09-14 16:53:36 -07:00
.bowerrc Rename bower_components 2014-10-30 16:53:08 -07:00
.editorconfig UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
.eslintignore Auto-fixes: UX Improvements (#2077) 2018-03-02 15:54:15 -05:00
.eslintrc.js Security: Replace Unicode order overrides in attachment names 2018-02-22 13:21:53 -05:00
.gitignore Remove built assets from repo, updates to docs + GH templates (#1955) 2018-01-09 15:31:23 -08:00
.jscsrc Fix minor style errors 2016-02-18 13:45:22 -08:00
.jshintrc jshint: Turn on ES6 mode, fix a few issues in new logging file 2017-09-25 15:32:31 -07:00
.nvmrc Upgrade to Electron 1.8.2 / Node.js 8.2.1 (#2066) 2018-03-02 14:43:03 -05:00
.travis.yml Upgrade to Electron 1.8.2 / Node.js 8.2.1 (#2066) 2018-03-02 14:43:03 -05:00
.yarnclean Clean logs on start - and eslint/mocha with code coverage (#1945) 2018-01-08 13:19:25 -08:00
CONTRIBUTING.md Big update to new signal branding (#2018) 2018-01-30 14:22:51 -08:00
Gruntfile.js Auto-orient image attachments based on EXIF metadata 2018-02-21 10:28:13 -05:00
LICENSE Add GPLv3 LICENSE file (#1309) 2017-10-20 09:36:49 -07:00
README.md Update links to community forum (#2083) 2018-02-28 15:50:56 -05:00
about.html Merge branch 'master' into development 2017-11-21 18:25:59 -08:00
appveyor.yml Upgrade to Electron 1.8.2 / Node.js 8.2.1 (#2066) 2018-03-02 14:43:03 -05:00
aptly.sh aptly.sh: Fix broken switch commands - distro and config fix 2017-12-04 18:51:38 -08:00
background.html UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
bower.json Auto-orient image attachments based on EXIF metadata 2018-02-21 10:28:13 -05:00
dev-app-update.yml.sample Show dialog box when there's an update for download 2017-09-14 16:53:50 -07:00
find_broken_perms.sh Add two scripts to handle broken permissions in release dir 2017-09-14 16:53:49 -07:00
fix_broken_perms.sh Beta builds: A few updates required for successful release (#1739) 2017-11-08 19:32:44 -08:00
index.html App loading screen: show messages processed so far 2017-08-04 12:03:25 -07:00
main.js UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
package.json UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
preload.js UX Improvements: Global Menu & Copy Changes (#2078) 2018-03-02 15:59:39 -05:00
prepare_beta_build.js New design for import/install, 'light' import (#2053) 2018-02-22 10:40:32 -08:00
prepare_import_build.js New design for import/install, 'light' import (#2053) 2018-02-22 10:40:32 -08:00
travis.sh Remove built assets from repo, updates to docs + GH templates (#1955) 2018-01-09 15:31:23 -08:00
yarn.lock Update `yarn.lock` after manual `package.json` changes (#2097) 2018-03-02 15:22:22 -05:00

README.md

Build Status Signal Desktop

Signal Desktop is an Electron application that links with your Signal Android or Signal iOS app.

Install production version: https://signal.org/download/

Install the beta

You can install it on a computer which already has the production version installed. It uses different data and install locations.

Got a question?

You can find answers to a number of frequently asked questions on our support site: https://support.signal.org/. The community forum is another good place for questions: https://community.signalusers.org/.

Found a Bug? Have a feature request?

Please search the existing issues for your bug and create a new one if the issue is not yet tracked!

https://github.com/signalapp/Signal-Desktop/issues

Contributing Translations

Interested in helping to translate Signal? Contribute here:

https://www.transifex.com/projects/p/signal-desktop

Contributing Code

Please see CONTRIBUTING.md for setup instructions and contributor guidelines. And don't forget to sign the CLA.

Contributing Funds

You can donate to Signal development through the Freedom of the Press Foundation.

Cryptography Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

License

Copyright 2014-2017 Open Whisper Systems

Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html