* commit '5c8558e293989094693f918a63b672301f1aeb55':
v1.21.1
v1.21.1-beta.1
Fix: Navigation to message via quote click didn't always work
mainWindow.close - be ready for null mainWindow
Ensure that Curve.async points to worker after startWorker call
Protect against unhandled promises when calling checkForUpdates
Reenable send when link preview is missing an image
# Conflicts:
# package.json
* textsecure/master: (26 commits)
v1.21.0
v1.21.0-beta.4
Dark Theme: Preserve blue background on app loading screen
Localization updates
Fix width of audio player when window is very narrow
A number of small fixes for Link Previews
Get rid of the white flash when the app starts up (#3083)
v1.21.0-beta.3
Lint fixes
Introduce new language: NB
Fail over to all numbers in retry if errors don't have numbers
Use the proper method for pulling attachments off disk for retry
Fix rendering bug with verified state in updateVerified()
Update electron-builder and electron-updater
Ensure that dialog pops up when permissions denied for voice note
Lint fixes
Large update to localization strings
Link Previews
Ensure that blocked messages are dropped even after sealed sender
Don't linkify quoted message contents
...
# Conflicts:
# .github/PULL_REQUEST_TEMPLATE.md
# _locales/cs/messages.json
# background.html
# config/default.json
# index.html
# js/models/conversations.js
# js/modules/web_api.js
# js/settings_start.js
# js/views/conversation_view.js
# js/views/settings_view.js
# package.json
# protos/SignalService.proto
# stylesheets/_index.scss
# stylesheets/_settings.scss
* Prevent FOUC on startup, use Signal Blue instead
Instead of flashing a white background on startup, the app will show a blue background while everything is loading.
* Make sure tests are rendered on white background
* Use `icon_250.png` as the loading image
* Remove hardcoded 'Loading...' text from template
Fix case where db is deleted but password hash still remains which causes user to never register.
Allow password to have symbols and other characters.
Added more tests.
Moved passHash from config into the sqlite db.
We can do this because we assume if sql failed to initialise then the key provided was wrong and thus we can show the user the password page.
First, we write the key a whole lot less. We write it on creation, then
never again.
Second, it's in a file we control very closely. Instead of blindly
regenerating the key if the target file generates an error on read,
we block startup unless the error is 'ENOENT' - the file isn't there
at all.
This still allows for the key.txt file to be deleted or corrupted
somehow, but it should be a lot less common than the high-traffic
config.json used for window location and media permissions.
Quite a few other fixes, including:
- Sending to contact with no avatar yet (not synced from mobile)
- Left pane doesn't update quickly or at all on new message
- Left pane doesn't show sent or error status
Also:
- Contributing.md: Ensure set of linux dev dependencies is complete
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