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
44dec45995
Ensure that all messages in cache are migrated properly
2018-08-06 18:08:10 -07:00
Scott Nonnenberg
a01db40e27
Ensure that a SQL command timeout results in an error
2018-08-06 18:08:10 -07:00
Scott Nonnenberg
22613c8cc4
Set disappearing check timer reliably - on all message saves
2018-08-02 22:31:27 -07:00
Scott Nonnenberg
3961778e53
Fixes for Chrome app import in this new SQLCipher world
2018-08-02 17:32:51 -07:00
Scott Nonnenberg
1d7987108b
Show and log progress during the SQLCipher migration
2018-08-02 17:25:51 -07:00
Scott Nonnenberg
b1c6a5fe19
When updating message schema pre-SQLCipher, use legacy save
2018-08-01 12:38:48 -07:00
Scott Nonnenberg
0d13d437fe
Delete before forced bulk insert to fix broken migrations
2018-07-31 19:52:10 -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
02675312c5
Introduce mandatary migration on startup, to minimum version
2018-07-27 10:55:10 -07:00
Scott Nonnenberg
f39a96bc76
Move to centralized message/cache data layer
...
Also, ensure that conversation.messageCollection has nothing in it
unless it has an associated ConversationView.
2018-07-27 10:55:10 -07:00
Scott Nonnenberg
34231168a7
On message delete, ensure that all external files are deleted
2018-07-27 09:15:57 -07:00
Scott Nonnenberg
573a26021b
file_input_view: Use makeVideoThumbnail on attach of video
2018-07-21 14:52:43 -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
cea38b7bc4
Log clear error if we fail to retrieve debug log upload key
2018-07-19 11:07:36 -07:00
Scott Nonnenberg
2ef2235317
Show error if debug log upload fails
2018-07-19 10:21:53 -07:00
Scott Nonnenberg
4ca674edb2
Remove User-Agent from form to upload debug log
2018-07-19 09:15:57 -07:00
Scott Nonnenberg
b159a8d7c7
Update the user agent for debug log requests
2018-07-18 20:00:10 -07:00
Scott Nonnenberg
675e34fc8d
New React component: ConversationListItem, installed in left pane
...
When collecting a conversation's last message, we grab that message's
status as well (if outgoing) and show it.
2018-07-17 20:25:55 -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
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
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
125c3fafa8
Idle detector: Fix bug preventing it from ever turning off ( #2487 )
2018-07-03 15:02:58 -07:00
Scott Nonnenberg
8eeaad8e18
Remove unused export/import functionality
2018-06-21 11:54:01 -07:00
Scott Nonnenberg
f3bd0cf903
Refactor api.js into web_api, which encapsulates all web access
2018-05-31 13:25:45 -07:00
Scott Nonnenberg
34f423b52c
Remove unused code; move signal.js to js/modules for eslint
...
(noticed as I was doing this that signal.js doesn't get eslint coverage)
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
80b069e9b6
Move phone number format/parse into ts/types/PhoneNumber
2018-05-10 11:54:58 -07:00
Scott Nonnenberg
aa13a2c6f7
Parse phone numbers into e164 as part of schema upgrade
2018-05-10 11:54:58 -07:00
Scott Nonnenberg
d2293d9592
parseAndWriteAvatar: Do shallow copy before omit() call
...
Otherwise, we get all prototype props/functions, which we can't save in IndexedDB
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
Daniel Gasienica
16bc1d34c6
Message schema 6: Change classification of media and documents
...
For an easier implementation, we change our original definition of
`initializeAttachmentMetadata`. This means we have to re-run it marked as
version 6 and mark schema version 5 as deprecated as its definition has changed.
2018-05-08 16:41:07 -04:00
Daniel Gasienica
101041f106
Derive Message.CURRENT_SCHEMA_VERSION
2018-05-08 16:41:06 -04:00
Scott Nonnenberg
26be658892
Remove 'Contact' from 'Contact.*' properties, clean->parse
2018-05-08 13:12:11 -07:00
Scott Nonnenberg
cda326ca45
Use protobuf enum values to eliminate magic numbers
2018-05-08 11:14:56 -07:00
Scott Nonnenberg
adbe989949
validateContact: Return error instead of logging
2018-05-08 10:31:16 -07:00
Scott Nonnenberg
d0efccd121
A couple renames in contact.js
2018-05-08 09:59:25 -07:00
Scott Nonnenberg
420f81ebcd
Move contact migrate code from message.js to contact.js
2018-05-08 09:48:47 -07:00
Scott Nonnenberg
37821e5a1b
Wire up all contact behaviors, refactor Contact type/selector
2018-05-07 19:11:35 -07:00
Scott Nonnenberg
3ea3e4e256
Contact sharing: protos and data pipeline
...
As of this commit: 82b76ccf37
2018-05-07 19:09:55 -07:00
Daniel Gasienica
a86056630f
Use Attachment.isVoiceMessage
2018-05-07 21:53:39 -04:00
Daniel Gasienica
5c8f734e67
Remove newlines from group IDs
2018-05-03 13:24:39 -04:00
Daniel Gasienica
a102016ed8
Port Settings
and OS
to TypeScript
2018-05-02 20:01:57 -04: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
6eca5ee940
Document that JPEG auto-orient strips EXIF metadata
2018-04-30 19:05:10 -04:00
Daniel Gasienica
1dd87ad197
Format all source code using Prettier
2018-04-30 16:53:34 -04:00
Daniel Gasienica
e4baf27fa7
Increase migration conversion speed by a factor of 3x
2018-04-30 16:51:14 -04:00
Daniel Gasienica
d00fb560b0
Avoid exposing AttachmentTS
2018-04-27 16:31:43 -04:00
Daniel Gasienica
f36f206a01
Use IndexablePresence
for hasFileAttachments
and hasVisualMediaAttachments
...
Reduces index size, makes it easier to debug using IndexedDB inspector, and
hopefully improves lookup performance.
2018-04-25 15:25:12 -04:00