sachaaaaa
334be8c169
Merge pull request #46 from sachaaaaa/fix_insert_or_replace
...
create UNIQUE INDEX for contact prekeys (to allow using REPLACE)
7 years ago
sachaaaaa
97d0df9b79
Merge pull request #45 from BeaudanBrown/filter-messages
...
Filtering incoming messages
7 years ago
Beaudan
5278abefb6
Removed id which was not needed for seen messages. Refactored filter logic into function and found function name error
7 years ago
sachaaaaa
1bd7c5d862
create unique index for contact prekeys (to allow using REPLACE)
7 years ago
Beaudan
712566ef3b
Created new table to store the received message hashes. Checking this table when receiving messages to look for duplicates. Should be cleared of expired messages on app start and every hour after
7 years ago
Mikunj
34f43088ff
Fix incoming messages being deleted on startup.
7 years ago
Mikunj
4148628e70
Remove any unsent messages when app is started.
7 years ago
Mikunj
33ee45b819
Cleaned up SQL for getMessagesByConversation.
7 years ago
Mikunj
1150f0f915
Allow fetching conversation messages by a specific type.
7 years ago
Mikunj
d5154bef73
Move version 7 schema to version 6.
7 years ago
Mikunj
e678d84d7e
Oops forgot semi colons
7 years ago
Mikunj
abe7170b4e
Added sql deletion of contact pre keys and contact signed pre keys
7 years ago
Mikunj
98185fa6fd
Added sql migration.
7 years ago
Mikunj
77602e3dbb
Moved contactPreKey and contactSignedPreKey to sql.
7 years ago
Mikunj
525007f944
Added fetching preKey by recipient.
7 years ago
Mikunj
f589fdac5c
Merge signal changes into branch.
7 years ago
Scott Nonnenberg
2cfbfe477a
Better handle large numbers of messages in cache on startup
7 years ago
Scott Nonnenberg
cd60bdd08a
Move conversations to SQLCipher
7 years ago
Scott Nonnenberg
48d937b66a
Follow symlinks on target file path as well as user/config paths
7 years ago
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.
7 years ago
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.
7 years ago
Scott Nonnenberg
9f920aa35b
Re-enable orphaned attachment cleanup
7 years ago
Scott Nonnenberg
a247ffe5cf
When iOS device has been linked, use iOS color scheme
7 years ago
Scott Nonnenberg
fba8e8d479
Add logging to help diagnose protocol handler false positives
7 years ago
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
7 years ago
Scott Nonnenberg
727925a266
Clean up old messages, better handle errors from sending
7 years ago
Scott Nonnenberg
6e193456f9
Eliminate orphaned external message files on startup
...
Attachments, visual attachment thumbnails, video attachment screenshots
Quote thumbnails
Contact avatars
7 years ago
Scott Nonnenberg
c56ea55e36
Fix duplicate message detection
7 years ago
Scott Nonnenberg
4d5894bf04
Ensure that all multi-statement sql functionss are serialized
7 years ago
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
7 years ago
Scott Nonnenberg
5933a34a18
Use window.log in browser context, turn on console eslint rule
7 years ago
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
7 years ago
Scott Nonnenberg
3a2582a087
Permissions: 'return callback(true)' instead of 'return true'
7 years ago
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
7 years ago
Scott Nonnenberg
4415293100
Make all OS menus localizable
...
Turns out that Electron is not localizing the 'role' elements like we
expected would happen.
7 years ago
Scott Nonnenberg
7c3325f55e
File protocol filter: log when non-absolute path is rejected
8 years ago
Scott Nonnenberg
beb65b14c0
Deny all permissions we don't actually need
8 years ago
Scott Nonnenberg
eec61f5289
Fine-tune file protocol filter
8 years ago
Scott Nonnenberg
06b0544bbe
Hardening: normalize on-disk attachment paths before save/load
8 years ago
Scott Nonnenberg
53a471b2b1
Expand set of blocked URI schemes
8 years ago
Scott Nonnenberg
e2d044e02b
Filter file scheme; disable http, https and ftp entirely
8 years ago
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.
8 years ago
Daniel Gasienica
f56dc09d01
Add `getAbsoluteAttachmentPath`
8 years ago
Daniel Gasienica
394d2f0bff
Fix type signature
8 years ago
Daniel Gasienica
24f4ad53bc
Use single quotes for identifiers
8 years ago
Daniel Gasienica
5a6668e677
Add `Attachments.createWriteForExisting`
...
This function lets us choose where to write attachment to instead of picking
random name.
8 years ago
Daniel Gasienica
efd673083d
Rename `writeAttachmentData` to `writeNewAttachmentData`
8 years ago
Daniel Gasienica
36771a2dab
Prefer double quotes over backticks for identifiers
8 years ago
Daniel Gasienica
8474f3cf7f
Use `create*` prefix to clarify curried functions
8 years ago
Daniel Gasienica
d9be6a0f94
Destructure Lodash `require`s
8 years ago