Fedor Indutny
7288b07e0a
Add comments to titlebar-related variables
2022-07-28 09:35:09 -07:00
Scott Nonnenberg
1bb91758e6
Spell check: Restore english region support
2022-07-15 15:37:19 -07:00
Scott Nonnenberg
3cd77b0d53
main.ts: Fix main title bar check
2022-07-15 14:50:24 -07:00
Scott Nonnenberg
4b8a37f519
Fix missing titlebar on Windows
2022-07-14 12:07:45 -07:00
Fedor Indutny
f92be05b15
Titlebar fixes
2022-07-05 09:44:53 -07:00
Fedor Indutny
d8e32d39ff
Don't save window stats after shutdown request
2022-06-30 14:33:58 -07:00
Fedor Indutny
1b6cd3d16b
Handle render-process-gone
2022-06-30 12:00:40 -07:00
Scott Nonnenberg
054e443071
Spellcheck: Use full locale, otherwise all which match base
2022-06-27 13:44:13 -07:00
Fedor Indutny
f9fb09b734
Fix titlebar button height
2022-06-23 17:40:45 -07:00
Fedor Indutny
96b864d6a9
Monkey-patch os.hostname on Windows 7
2022-06-23 12:15:27 -07:00
Fedor Indutny
6ad091bfe3
Shift titlebar on Windows 11
2022-06-23 08:40:36 -07:00
Fedor Indutny
9407654262
Counteract zoom-level changes in custom titlebar
2022-06-20 11:26:31 -07:00
Fedor Indutny
dacbee711f
Polyfill os.hostname() on Windows 7
2022-06-20 10:43:15 -07:00
Fedor Indutny
8b32811440
Add extra pixel to titlebar on Windows 11
2022-06-15 11:21:03 -07:00
Scott Nonnenberg
3b2000a0ba
Force 'password-store' to 'basic' on all platforms
2022-06-15 09:40:01 -07:00
Fedor Indutny
253e050262
CDSI Support
2022-06-14 18:15:33 -07:00
Scott Nonnenberg
2464e0a9c1
Convert signal.js and preload.js to Typescript
2022-06-13 14:39:35 -07:00
Fedor Indutny
5634601554
Use patched frameless-titlebar on Windows
2022-06-08 15:00:32 -07:00
Evan Hahn
f50a6abe36
Remove unused eslint-disable
s
2022-06-03 14:07:51 -07:00
Fedor Indutny
ecdc583f2a
Add debug log url when submitting it to Support
2022-06-02 16:24:35 -07:00
Scott Nonnenberg
4f2c868b1e
Append 'password-store=basic' switch on startup
2022-05-26 17:38:33 -07:00
Scott Nonnenberg
ce7a2ded14
Make that theme values are in the expected range
2022-05-25 15:19:16 -07:00
Scott Nonnenberg
68f705e6ad
Reset MessageReceiver processed count after reporting it
2022-05-25 11:15:09 -07:00
Fedor Indutny
bdc4f53e91
Disable 2d canvas acceleration
2022-05-12 12:41:37 -07:00
Fedor Indutny
b30c7f9c46
Dark theme loading screen
2022-05-11 15:58:14 -07:00
Scott Nonnenberg
364d690cf3
On database error: Escape copies error and quits, additional logging
2022-05-03 12:06:47 -07:00
Fedor Indutny
99de97a099
Update electron to 18.1.0
2022-04-27 14:15:57 -07:00
Fedor Indutny
5d65e3b36c
Revert update to electron 18.1.0
...
* Revert "Update electron-builder to 23.0.8"
This reverts commit c8842d94ec
.
* Revert "Update to electron@18.1.0"
This reverts commit 5f3a62cbb6
.
2022-04-26 18:15:43 -07:00
Fedor Indutny
b7f0ec61b9
Resolve attachments folder before using it
2022-04-26 17:31:01 -07:00
Fedor Indutny
5f3a62cbb6
Update to electron@18.1.0
2022-04-25 13:58:01 -07:00
Josh Perez
b550f64a4b
Merge signalapp/Signal-Desktop#5633
2022-04-14 13:04:19 -04:00
Scott Nonnenberg
9e54f55c22
Ensure that waitForAll functions catch and log thrown errors
2022-04-11 10:53:57 -07:00
Scott Nonnenberg
bddd55d574
Challenge: Save conversationIds and start queues
2022-03-21 14:19:37 -07:00
Fedor Indutny
4123c12303
Drop unused downloadsPath
2022-03-11 14:49:16 -08:00
Fedor Indutny
0c8c332805
Use new CDS implementation in staging
2022-03-09 11:28:40 -08:00
Fedor Indutny
4f53a41340
Enable background throttling for beta users
2022-03-07 15:21:41 -08:00
Josh Perez
91119a261a
Ignore hardware media keys
2022-03-02 10:57:23 -06:00
Evan Hahn
052a8e65e2
Add "clean up timer if necessary" utility
2022-02-25 10:37:15 -08:00
Fedor Indutny
6281d52ec6
Storage service tests and benches in ts/test-mock
2022-02-11 14:32:51 -08:00
Fedor Indutny
0174687542
Use esbuild
2022-02-11 13:38:52 -08:00
Evan Hahn
60d348e7cb
Open all Signal links in app
2022-02-02 10:29:01 -08:00
Evan Hahn
1c43e7501c
Simplify spellcheck download URL, disable spellcheck in most windows
2022-01-28 16:27:18 -06:00
Fedor Indutny
0cf28344a6
Enable background throttling for alpha users
2022-01-26 12:17:46 -08:00
Fedor Indutny
3aa488c3d5
Avoid calling tray.destroy()
when quitting
2022-01-24 16:18:53 -08:00
Josh Perez
7a502ea776
Remove env vars
2022-01-24 12:37:24 -08:00
Fedor Indutny
1a313b88f8
Fix crash report location on Windows
2022-01-19 17:50:16 -08:00
Fedor Indutny
145d9287d9
Add tentative prefix to crash report uploads
2022-01-14 13:50:45 -08:00
Fedor Indutny
7486312e4e
Start worker threads after second instance check
2022-01-14 10:23:46 -06:00
Fedor Indutny
91f1b62bc7
Detect startup after recent crashes
2022-01-11 12:02:46 -08:00
Evan Hahn
d9b951bfcb
Update base config logging, removal, and tests
2022-01-11 11:12:55 -08:00
Josh Perez
5a3c9c7332
Use app.getLocale to setup spellchecker locale
2022-01-11 11:05:22 -08:00
Evan Hahn
206f461370
Move menu tests to TypeScript
2022-01-11 09:28:04 -08:00
Evan Hahn
09af7eeece
Add workaround for fullscreen debug log causing unresponsive app
2022-01-07 09:30:47 -06:00
Scott Nonnenberg
c72c5a0bdc
Protocol filter: Support home path mapped to UNC share
2022-01-06 09:53:29 -08:00
Fedor Indutny
46ddcc50f9
Update electron to 16.0.6
2022-01-03 17:43:42 -08:00
Fedor Indutny
9f15f26828
Support running test-electron manually
2021-12-17 15:12:42 -08:00
Evan Hahn
3fa911598b
Use Signal's spellcheck dictionary files
2021-12-17 14:24:54 -08:00
Fedor Indutny
fed84be0b6
Fix crashes when playing media on legacy OS
2021-12-10 15:27:42 -08:00
Evan Hahn
0e3d12c457
Prevent display sleep while on a call
2021-12-10 16:53:10 -06:00
Fedor Indutny
bbc13d058e
Update electron to 16.0.4
2021-12-09 09:06:04 +01:00
Josh Perez
69edaeabfb
Do not show window if launched as hidden
2021-12-06 18:19:47 +01:00
Josh Perez
27f4dc6177
Adjusts app min width to account for larger left pane
2021-12-01 12:19:10 -06:00
Fedor Indutny
7c1ce3366d
Move StandaloneRegistration to React
2021-11-30 09:51:53 -08:00
Jordan Rose
7edf3763a8
Hang up any active calls when quitting
2021-11-30 09:36:20 -06:00
Fedor Indutny
599c7afe8b
Initialize locale
earlier to avoid races
2021-11-29 10:04:14 -08:00
Evan Hahn
5619eeca83
Upgrade Prettier to 2.4.1
2021-11-11 16:43:05 -06:00
Fedor Indutny
631e36dc0a
Use invoke
/handle
in settingsChannel
2021-11-09 16:56:56 -08:00
David Sanders
50dc534164
Simplify permissions popup IPC
2021-11-09 07:35:31 -08:00
Fedor Indutny
409bf1fc82
WebSocket API for CDS
2021-11-08 15:32:31 -08:00
Fedor Indutny
519ca05911
Update electron to 15.3.0
2021-11-08 22:43:37 +01:00
Evan Hahn
f647c4e053
Display user badges
2021-11-02 16:01:13 -07:00
Fedor Indutny
76d8b5e375
Get rid of electron.remote
2021-10-27 10:54:16 -07:00
David Sanders
79b3b6408e
Fix microphone permission checking for audio recording
...
See [#5580 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5580
2021-10-27 11:16:09 -05:00
Evan Hahn
74fde10ff5
Prefer import type
when importing types
2021-10-26 14:15:33 -05:00
Scott Nonnenberg
be862afd1a
base_config: Don't throw if loaded config file is empty
2021-10-25 14:41:44 -05:00
Scott Nonnenberg
191bfee18c
Show What's New dialog in app via Help -> Go to release notes
2021-10-22 17:41:45 -07:00
Fedor Indutny
2c51c3fe84
Use console logger when regular is not available
2021-10-21 12:49:53 -07:00
Scott Nonnenberg
2e9eaa855a
main/second-instance: If logger isn't ready, skip further checks
2021-10-20 15:40:12 -05:00
Fedor Indutny
50c9b1bf7f
Cache system-tray-setting in ephemeral config
2021-10-20 14:56:49 -05:00
Evan Hahn
0b57bcd36c
DRY out path getters
2021-10-19 16:24:03 -07:00
Josh Perez
d4e2911450
Resize debug log, rename save button
2021-10-15 11:11:59 -07:00
Evan Hahn
fe98f90d70
Only enable background throttling in development
2021-10-14 11:09:30 -07:00
Evan Hahn
940f009987
Bullet-proof tray icon against nonexistent icon file
2021-10-07 13:09:56 -07:00
Josh Perez
fa66ddde0f
Context isolation for the debug log window
2021-10-06 09:16:51 -07:00
Scott Nonnenberg
bd380086a4
Send related emoji along with Sticker, fix SendMessage types
2021-10-05 17:10:08 -05:00
Scott Nonnenberg
9a1430a460
Typescriptify main.js
2021-10-01 13:49:59 -05:00
Fedor Indutny
4ef0bf96cc
Uint8Array migration
2021-09-23 17:49:05 -07:00
Josh Perez
829e42ca6e
Move i18n setup to TypeScript
2021-09-17 20:30:08 -04:00
Josh Perez
91af0dad78
Faster preferences window
2021-08-18 13:08:14 -07:00
Fedor Indutny
61b7eebfcf
Modernize Benchmarks CI
2021-08-11 12:29:07 -07:00
Scott Nonnenberg
7ce89414bf
Support for alpha build channel
2021-08-06 14:21:01 -07:00
Josh Perez
12d2b1bf7c
Avatar defaults and colors
2021-08-05 20:17:05 -04:00
Fedor Indutny
c3bdf3d411
Show lightbox for GIFs
2021-07-14 16:39:52 -07:00
Quentin Hibon
3779147987
Toggle window visibility on tray icon click
...
Fixes #3045 .
2021-07-02 16:12:54 +02:00
Fedor Indutny
759ced3417
Updater debug utility
2021-06-30 14:27:18 -07:00
Evan Hahn
8b30fc17cd
Officially support the system tray on Linux, in beta only
2021-06-29 14:29:40 -05:00
Evan Hahn
af1f2ea449
Officially support the system tray on Windows
2021-06-29 12:18:03 -05:00
Scott Nonnenberg
24960d481e
Move all files under /app to typescript
2021-06-18 10:04:27 -07:00
Jordan Rose
0615e5528f
Improve menu bar on macOS
2021-06-14 12:01:49 -07:00
Fedor Indutny
33595646c1
Add user path to logging exceptions
2021-06-01 11:15:23 -07:00
Fedor Indutny
0e19c17160
Initialize IPC channels early
2021-06-01 11:06:38 -07:00
Josh Perez
ceffc2380c
Add screensharing behind a feature flag
2021-05-20 17:37:19 -07:00
Evan Hahn
18abe93022
Remove many instances of deprecated url.parse
2021-05-20 17:37:07 -07:00
Fedor Indutny
37c8c1727f
Types, better-sqlite3, and worker_threads for our sqlite
2021-04-08 23:53:18 -04:00
Alex Hirsch
901a54b149
Tray: Use 32x32 icon on Windows
...
See [#5072 ][0].
[0]: https://github.com/signalapp/Signal-Desktop/pull/5072
2021-04-02 15:29:04 -05:00
Fedor Indutny
1934120e46
Disable Dev Tools in production releases
...
`--enable-dev-tools` will bring it back.
2021-03-19 16:53:51 -04:00
Evan Hahn
3306c82992
Fix "URI malformed" crashes on Windows
2021-02-22 14:01:40 -08:00
Scott Nonnenberg
2f90d6aca9
Manually manage full-text search table
2021-02-04 12:46:55 -08:00
Evan Hahn
bc37b5c907
Add an assertion when updating conversations; update cleanData
2021-02-04 11:54:03 -08:00
Evan Hahn
a8787e7c9e
Convert logging infrastructure to TypeScript
2021-01-27 13:13:33 -08:00
Evan Hahn
f404904a49
Convert dock_icon.js to TypeScript
2021-01-25 18:29:01 -08:00
Evan Hahn
a2f285d243
Put group calling behind a remote feature flag
2020-12-07 14:35:14 -06:00
Brandon Outlaw
2013378136
MacOS – Add shortcut for Window -> Show ( #4632 )
2020-11-10 16:30:56 -08:00
Evan Hahn
8bfaf598af
Add license headers across the project
2020-11-04 13:03:13 -06:00
Vin Howe
526ab4fe29
Add menu option for copying supported images in lightbox ( #4614 )
2020-11-02 16:47:46 -08:00
hashes4merkle
b8dbd5970d
Fixing spelling errors ( #4615 )
2020-11-02 16:46:49 -08:00
jimio-signal
1c057323ba
Point to support flow instead of github
2020-10-26 15:48:44 -07:00
Scott Nonnenberg
bc3b61db1d
Add p-queue timeouts; fix search crash; improve promise rejection logging
2020-09-21 15:42:51 -04:00
Evan Hahn
6d2e994f9f
Windows: mark downloads as "from the internet"
2020-09-21 15:42:50 -04:00
Chris Svenningsen
8a2c17f65f
Apply new ESLint rules to legacy code
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
Evan Hahn
f8fc23a7a3
Improve nested path detection across app
2020-08-28 15:42:25 -04:00
Peter Thatcher
d3a27a6442
Calling support
2020-07-30 13:08:47 -07:00
Scott Nonnenberg
2529c7f9e3
Ensure that 'Join the Beta' menu item shows in production
2020-07-27 14:39:19 -07:00
Ken Powers
b842b69660
Help Menu changes
2020-06-23 17:30:33 -07:00
Scott Nonnenberg
6b094e1514
Refactor: Move data-access code to Typescript w/ shared interface
2020-04-15 14:45:11 -07:00
Ken Powers
14b11041ea
Spellcheck: Fallback to all xx-YY locales when xx isn't available
2020-04-15 13:44:46 -07:00
Ken Powers
90130e3be0
Don't start Signal if DB version is greater than we expect
2020-04-06 17:12:16 -07:00
Ken Powers
750e50812c
Introduce dialog for long database migrations
2020-03-25 16:47:42 -07:00
Ken Powers
4a8f5db0a4
Use Electron Spellchecker
2020-03-24 17:03:22 -07:00
Ken Powers
a90246cbe5
Passive UUID support
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-03-24 16:59:35 -07:00
Scott Nonnenberg
a840e2e5b1
Remove legacy import flow
2020-03-04 17:12:56 -08:00
Scott Nonnenberg
1726e1b77a
Fix windows fast-glob usage in lint-deps test task
...
* Introduce normalize-path wherever we use fastGlob
* CI: Update yarn version; install yarn via npm on windows
* Add more logging to Grunt file spectron usage
* Lock core.js to what it was resolving to before: 2.4.1
* test/index.html: Remove nonexistent test file
* test/index.html: Remove missing registration.js
* preload.js: Introduce client-side logging for load failures
* Gruntfile: Introduce better debuggability if prod test fails
* Reintroduce glob for searches inside asar
2020-02-26 17:53:39 -08:00
Ken Powers
8d9ccd3c0a
Ensure proper file permissions on startup
...
Co-authored-by: Scott Nonnenberg <scott@signal.org>
2020-02-21 15:40:04 -08:00
Scott Nonnenberg
68ee557dcf
Update SQLCipher to 4.3.0
2020-02-19 16:11:06 -05:00
Josh Perez
afddc852cc
Add interpolation for fallback dialog messages
2020-02-13 10:14:08 -08:00
Scott Nonnenberg
3938eb9801
A set of fixes and upgrades
...
* writeToDownloads: Add missing await
* Remove window.isFocused() - not used anywhere!
* Update typescript, p-queue, make necessary changes to fix build
* Slow down sender certificate retries with no existing cert
* Slow down signed prekey refreshes when unlinked - 5s -> 5m
* Update protobufjs to 4.1.2
2020-02-07 14:37:04 -05:00
Scott Nonnenberg
55eff02872
Reintroduce file chooser dialog for every attachment save
2020-01-15 17:23:02 -05:00
Scott Nonnenberg
8a51ca9e71
Lint fix
2020-01-14 12:32:49 -08:00
Scott Nonnenberg
11266cb775
Handle both given and family name in decrypted profile name
...
* Decrypt given and family names from profile name string
* Handle both given and family name from decrypted profile name
* Ensure we properly handle profiles with no family name
2020-01-13 17:28:28 -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
Tim Ruffing
016a0caf17
Improve query performance using explicit INDEXED BY ( #3550 )
2020-01-06 16:54:58 -08:00
Ken Powers
11d47a8eb9
Sticker Creator
2019-12-17 12:28:46 -08: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
0876bf7ae7
Visual bug fixes for v1.29
2019-11-21 10:17:55 -08:00
Scott Nonnenberg
8194b2446b
Move to CTRL+= for windows, remove the need for the shift
2019-11-15 14:34:24 -08:00
Scott Nonnenberg
927a0677f1
Zoom In: Remove custom accelerator for windows/linux
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
d9b96a415b
Eliminate unnecessary param in getTapToViewMessagesNeedingErase
2019-10-11 16:00:40 -07:00
Scott Nonnenberg
c81c25bb85
Update colors, icons, and fonts
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
0c09f9620f
Improve message download performance
2019-10-10 14:56:14 -07:00
Scott Nonnenberg
9db42bc4c6
sql_channel: Ensure we save reference to MultipleQueue to start
2019-09-24 13:43:08 -07:00
Scott Nonnenberg
2a7cfd9776
Startup: integrity_check in addition to cipher_integrity_check
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
85e01ad037
SQL channel: Only serialize data access functions which need it
2019-09-03 16:10:32 -04:00
Scott Nonnenberg
edf66f7552
Migrate from schema_version to user_version
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
d3d2b0ec52
Use curve functions from native module
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
e29eee4583
Update Electron to 6.0.1, SQLCipher to 4.2.0
2019-08-21 14:55:12 -07:00
Scott Nonnenberg
b6da081d05
Only log to console if we're on a TTY stdout interface
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
Scott Nonnenberg
d42eb2126e
Changes to View Once
2019-08-05 16:23:47 -07:00
Scott Nonnenberg
cb9ba0fe7f
Re-register support for sealed sender when a device is re-linked
2019-08-05 16:23:47 -07:00
Scott Nonnenberg
e62a1a7812
Receive support for View Once photos
2019-07-17 11:29:51 -07:00
Scott Nonnenberg
48691a2558
Clean up transaction handling in sql.js
2019-06-24 14:43:45 -04:00
Scott Nonnenberg
ca1e6c3ccd
To prevent crashes, catch thrown error from tray.setIcon
2019-06-10 17:41:05 -04:00
Scott Nonnenberg
67c4b0885d
Move emojis.shortName from STRING to TEXT to avoid coercion
2019-05-30 12:43:18 -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
Botond Horvath
ffb0b5a27b
Hide from Dock on macOS when the tray icon is enabled and the window is closed
2019-05-06 12:46:26 -04:00
Scott Nonnenberg
6cf4f19317
Add a new env variable to the hardening list
2019-04-16 14:35:16 -07:00
Scott Nonnenberg
f92769db8c
Windows: Return real path, not lowercase path
2019-04-10 13:57:27 -07:00
Scott Nonnenberg
be86169a8a
Windows: Do our file filtration with case-insensitive checks
2019-04-10 12:37:41 -07:00
Jonathan Canfield
97b26778b3
Remap zoom to Command+= on macOS ( #3296 )
2019-04-08 10:17:35 -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
6ef0eb7284
When closing database, be resilient to null db
2019-03-28 17:23:09 -07:00
Scott Nonnenberg
b3ac1373fa
Move left pane entirely to React
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
ca5132f712
Present 'database error' dialog in more situations
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
e4b0901620
If logs are malformed on startup, delete them all and start over
2019-03-12 17:44:14 -07:00
Scott Nonnenberg
6bcd434585
Prevent crash when tray icon no longer available (due to apt)
2019-02-20 16:51:30 -08: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
3fb6ab295f
Debug log optimizations and improvements
2019-02-20 16:51:30 -08:00
Scott Nonnenberg
5b54c9554e
Remove groups table, conversation is single source of truth
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
041fe4be05
Remove JSON column and Backbone Model for unprocessed
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
9c540ab977
Add cache support to Signal Protocol Store
2019-02-13 16:04:58 -08:00
Scott Nonnenberg
1d2c3ae23c
Download attachments in separate queue from message processing
2019-02-12 16:34:21 -08:00
Scott Nonnenberg
462fa712bc
Show members: Pull conversation from group table
2019-02-11 18:32:05 -08:00
Scott Nonnenberg
0ec0ae9dac
Protect against unhandled promises when calling checkForUpdates
2019-02-08 11:54:22 -08:00
Scott Nonnenberg
813924685e
Link Previews
2019-01-29 13:53:14 -08:00
Scott Nonnenberg
92c2a0f996
Data infrastructure work
2019-01-14 17:40:31 -08:00
Scott Nonnenberg
e4babdaef0
Updates to backup infrastructure
2019-01-04 12:21:26 -08:00
Scott Nonnenberg
775e31c854
Lint fixes after recent PRs
2019-01-03 13:44:42 -08:00
Herohtar
22ca4f9cc7
Change tray icon click to always show/focus window ( #2984 )
...
* Added function to always show the window on tray icon click and reassigned click event
* Refactored the code to force the window on top into its own function
2019-01-02 14:42:31 -08:00
Scott Nonnenberg
68af1ae1ea
Show dialog if application fails to start up properly
2018-11-26 15:26:22 -08:00
Scott Nonnenberg
11fdf22881
Change sessions.id to a TEXT field to prevent type coercion
2018-11-26 15:22:55 -08:00
Scott Nonnenberg
fb670ad6b9
Remove IndexedDB files after removing IndexedDB database
2018-11-01 17:00:24 -07:00
Scott Nonnenberg
9f647f00d8
A couple fixes for the data layer, legacy message upgrade/migrate
2018-11-01 17:00:24 -07:00
Scott Nonnenberg
f11dd18536
Be resilient to malformed ephemeral.json
2018-11-01 09:34:24 -07: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
2cfbfe477a
Better handle large numbers of messages in cache on startup
2018-10-01 18:18:37 -07:00
Scott Nonnenberg
cd60bdd08a
Move conversations to SQLCipher
2018-10-01 18:18:37 -07:00
Scott Nonnenberg
48d937b66a
Follow symlinks on target file path as well as user/config paths
2018-09-20 15:30:26 -07:00
Scott Nonnenberg
998c35dcb3
Split configuration into low and high traffic files
...
Also, we're now handling config ourselves instead of using
electron-config and config dependencies.
2018-08-29 10:40:16 -07:00
Scott Nonnenberg
496ebf2a47
Store SQLCipher decryption key in separate file
...
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.
2018-08-16 17:01:32 -07:00
Scott Nonnenberg
9f920aa35b
Re-enable orphaned attachment cleanup
2018-08-15 17:45:24 -07:00
Scott Nonnenberg
a247ffe5cf
When iOS device has been linked, use iOS color scheme
2018-08-15 11:22:45 -07:00
Scott Nonnenberg
fba8e8d479
Add logging to help diagnose protocol handler false positives
2018-08-14 13:06:59 -07:00
Scott Nonnenberg
c88df69094
New SQL indices and query tweaks to eliminate table scans
...
Also: New logging on client side to track performance of db queries
2018-08-09 10:11:12 -07:00
Scott Nonnenberg
727925a266
Clean up old messages, better handle errors from sending
2018-08-07 18:29:33 -07:00
Scott Nonnenberg
6e193456f9
Eliminate orphaned external message files on startup
...
Attachments, visual attachment thumbnails, video attachment screenshots
Quote thumbnails
Contact avatars
2018-08-06 18:08:10 -07:00
Scott Nonnenberg
c56ea55e36
Fix duplicate message detection
2018-08-02 17:32:51 -07:00
Scott Nonnenberg
4d5894bf04
Ensure that all multi-statement sql functionss are serialized
2018-07-31 19:29:51 -07:00
Scott Nonnenberg
3105b77475
Migrate to SQLCipher for messages/cache
...
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
2018-07-31 17:08:45 -07:00
Scott Nonnenberg
5933a34a18
Use window.log in browser context, turn on console eslint rule
2018-07-21 14:52:43 -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
3a2582a087
Permissions: 'return callback(true)' instead of 'return true'
2018-07-12 14:52:34 -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
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
7c3325f55e
File protocol filter: log when non-absolute path is rejected
2018-05-31 13:25:45 -07:00
Scott Nonnenberg
beb65b14c0
Deny all permissions we don't actually need
2018-05-31 13:25:45 -07:00
Scott Nonnenberg
eec61f5289
Fine-tune file protocol filter
2018-05-31 13:25:45 -07:00
Scott Nonnenberg
06b0544bbe
Hardening: normalize on-disk attachment paths before save/load
2018-05-31 13:25:45 -07:00
Scott Nonnenberg
53a471b2b1
Expand set of blocked URI schemes
2018-05-23 16:26:48 -07:00
Scott Nonnenberg
e2d044e02b
Filter file scheme; disable http, https and ftp entirely
2018-05-23 16:26:40 -07:00
Scott Nonnenberg
754d65ae2e
Let's make it all pretty, shall we?
...
We missed a couple directories with previous attempts to turn this on
globally: app/ and libtextsecure/
Not to mention files in places we didn't expect: ts files that weren't
in the ts directory!
This turns prettier on for every file we care about (js, ts, tsx, md)
everywhere in the project but for a few key parts.
2018-05-02 13:40:57 -07:00
Daniel Gasienica
f56dc09d01
Add getAbsoluteAttachmentPath
2018-04-27 16:31:43 -04:00
Daniel Gasienica
394d2f0bff
Fix type signature
2018-04-27 16:31:43 -04:00
Daniel Gasienica
24f4ad53bc
Use single quotes for identifiers
2018-04-11 15:54:32 -04:00
Daniel Gasienica
5a6668e677
Add Attachments.createWriteForExisting
...
This function lets us choose where to write attachment to instead of picking
random name.
2018-04-04 18:41:50 -04:00
Daniel Gasienica
efd673083d
Rename writeAttachmentData
to writeNewAttachmentData
2018-04-04 18:41:50 -04:00
Daniel Gasienica
36771a2dab
Prefer double quotes over backticks for identifiers
2018-04-04 18:41:50 -04:00
Daniel Gasienica
8474f3cf7f
Use create*
prefix to clarify curried functions
2018-04-03 15:25:24 -04:00
Daniel Gasienica
d9be6a0f94
Destructure Lodash require
s
2018-04-02 15:12:04 -04:00
Daniel Gasienica
add5d4ab0b
Prevent macOS Spotlight indexing of attachments folder
...
See: https://apple.stackexchange.com/a/92785
2018-03-26 16:38:34 -04:00
Daniel Gasienica
10afcf1bb0
Add Attachments.deleteData
2018-03-26 16:38:34 -04:00
Daniel Gasienica
1c8123ff1a
Move writeAttachmentData
into Attachments
...
Encapsulates all attachment operations that require Node.js / Electron APIs,
e.g. file system access.
2018-03-26 16:38:34 -04:00
Daniel Gasienica
6355c54114
Return relative path from writeAttachmentData
...
This will make our app more robust to changes in location on the file system.
2018-03-26 16:38:34 -04:00
Daniel Gasienica
1262d1d696
Shorten prefix to 2 characters
...
Using 2 hex characters [0-9a-f] will give us 16 * 16 = 256 root folders which
seems more manageable than 4096 (16^3). Assuming a user has 10,000 attachments,
they should roughly distribute at ~40 per folder with prefix length 2 rather
than ~2.5 per folder with a prefix of 3.
2018-03-26 16:38:34 -04:00
Daniel Gasienica
e0428355be
Wire up writeAttachment
2018-03-26 16:38:34 -04:00
Daniel Gasienica
8a94ca5c42
🎨 Use Buffer.from
2018-03-26 16:38:34 -04:00
Daniel Gasienica
1283c77518
Switch from hashed to random attachment file names
...
Using hashes, we get the benefit of deduplication but if a user receives two
messages with the same attachment, deleting one would delete it for both since
they are only stored once. To avoid the complexity of tracking number of
references, we simply generate random file names similar to iMessage on MacOS
(?) and Signal Android.
2018-03-26 16:38:34 -04:00
Daniel Gasienica
d9de6dacba
Add writeAttachmentData
module
2018-03-26 16:38:34 -04:00
Scott Nonnenberg
2373840df8
Use proper logging if error pops when deleting all logs
2018-03-14 14:42:14 -07:00
Scott Nonnenberg
928906e0f3
Enable deletion of all logs on disk via IPC
2018-03-14 14:42:13 -07:00