Commit graph

54 commits

Author SHA1 Message Date
Audric Ackermann
b45109985c
use timestamp offset in for messages storage requests (#1892)
* add using timestamp offset from network for sending part1

* remove MessageController as we now rely on the database

* fix tests for message sending overriding timestamp
2021-09-16 14:48:46 +10:00
audric
8462d7d38e make encrypted content fast load if already stored decrypted 2021-09-02 10:33:42 +10:00
audric
cdd11eee47 speed up attachment loading by only loading those inview 2021-08-27 16:57:29 +10:00
Audric Ackermann
c8aa73626e
do not load right panel data unless it is visibl 2021-07-06 14:02:47 +10:00
Audric Ackermann
01fd927070
match envelope type with ios protos 2021-06-10 08:55:25 +10:00
Audric Ackermann
118813661d
remove inte tests + handle opengroupv2 messages in chunk
this is to avoid freezing UI and is only a temporary fix

We need to have webworkers in this app
2021-06-03 18:27:11 +10:00
Audric Ackermann
b15eeb00cd
fixup duration missing 2021-05-27 11:05:00 +10:00
Audric Ackermann
5cab7908b4
add some test for partial path rebuilding 2021-05-19 15:54:31 +10:00
Audric Ackermann
c2298c4c30
Merge branch 'clearnet' into scoring-system 2021-05-19 10:43:49 +10:00
Audric Ackermann
3393c7dfe4
Consider anything padding (#1641)
* Session v1.6.2 (#1639)

* padd Message buffer for all outgoing messages (even opengroupv2)

* pad and unpad message everywhere

attachment not padded for opengroup only

* lint

* enable fileserver v2 sending side

* removed all en unused local strings

* remove all unused keys for other locales

* update displayname even if we dont have avatar on incoming profile

* redesign group invitation message type

* ask confirmation before joining opengroup invitation

* remove the channelId from groupInvitation

* fallback to envelope timestamp if dataMessage.timestamp is 0

* match group invitation design with ios

* speed up first load of room message by prefetching token

* create convo for members if they don't exist

also, removing a private convo does not remove it entirely as we need
the convo to be able to remove members

* fix avatar download on restore when linking device

Fixes  #1601

* make sure the left member convo exist in rendering GroupUpdate

* Reply attachments (#1591)

* First attachment showing in reply composition.

* WIP: Adding thumbnail to quote response composition component.

* Added icon for voice recording attachment

* Updated formatting.

* Formatting.

* removed duplicate styling.

* WIP: Converting quote component to functional components.

* Fix bug where thumbnails for attachment replies wasn't showing.

* yarn Formatting.

* Removed old quote component.

* Add type to contentTypeSupported method.

* Moved  quote subcomponents out of Quote component.

* yarn format

* Add export to quote subcomponents.

* Fixing linting errors.

* remove commented line.

* Addressing PR comments.

* Allow pasting images into composition box as attachments (#1616)

* Allow pasting images into composition box as attachments

* Fix linter errors

* Fix typo

* Get snode from snode (#1614)

* force deleteAccount after 10sec timeout waiting for configMessage

* move some constants to file where they are used

* add a way to fetch snodes from snodes

* remove a snode from a pubkey's swarm if we get 421 without valid content

* remove getVersion from snodes

* hide groupMembers in right panel for non-group convo

* Fix fonts sans serif (#1619)

* force deleteAccount after 10sec timeout waiting for configMessage

* move some constants to file where they are used

* add a way to fetch snodes from snodes

* remove a snode from a pubkey's swarm if we get 421 without valid content

* remove getVersion from snodes

* hide groupMembers in right panel for non-group convo

* fix font sans serif by using roboto instead

Fixes #1617

* WIP: User nicknames (#1618)

* WIP Adding change nickname dialog.

* WIP adding nickname change dialog.

* WIP nickname dialog.

* WIP: Able to set conversation nicknames. Next step cleaning and adding to conversation list menu.

* Fix message capitilisations.

* Add change nickname to conversation list menu.

* Enable clear nickname menu item.

* Added messages for changing nicknames.

* Clearing nicknames working from header and message list.

* Adding modal styling to nickname modal.

* Reorder nickname menu item positions.

* Add group based conditional nickname menu options to conversation header menu.

* minor tidying.

* Remove unused error causing el option.

* Formatting.

* Linting fixes.

* Made PR fixes

* Prioritise displaying nicknames for inviting new closed group members
and updating closed group members.

* Fix app image start for non-debian based distribs (#1622)

Fixes #1620

* fixup nickname dialog for enter key pressed event (#1623)

also add some type for it and remove unused props

* Fix attachment extension vnd (#1628)

* allow openoffice document extension and don't use

* allow opendocument to be shared with the extension rather than mimetype

Fixes #1593

* allow message without padding

* add test for odt files

* More Japanese translations (#1632)

* Translate some untranslated strings into Japanese

* Tweak some Japanese translations

* Add new Japanese translations

* WIP: Closed group reliability (#1630)

* WIP: added non-durable messaging function.

* WIP: Non-durable sending

* WIP: adding dialog box.

* Creating dialog if group invite message promises don't return true.

* removed console log

* applied PR changes, linting and formatting.

* WIP: allowing resend invite to failures.

* using lookup.

* WIP: recursively opening dialog.

* WIP: debugging reject triggering on confirmation modal.

* register events fix.

* Closed group invite retry dialog working.

* Added english text to messages.

* Prevent saving of hexkey pair if it already exists.

* Fixed nickname edit
input trimming end letter.

* Don't show closed group invite dialog unless it has failed at least once.

* Fix linting error.

* Fix plurality.

* Ensure admin members are included in all invite reattempts, mixed plurality.

* test fixing windows build

* Revert "test fixing windows build"

This reverts commit 8ed2e0891d.

Co-authored-by: Warrick <wcor690@aucklanduni.ac.nz>
Co-authored-by: shellhazard <unva1idated@protonmail.com>
Co-authored-by: beantaco <64012487+beantaco@users.noreply.github.com>

* attachment padding not enforced to be 0x00

* add message an attachment padding test

Co-authored-by: Warrick <wcor690@aucklanduni.ac.nz>
Co-authored-by: shellhazard <unva1idated@protonmail.com>
Co-authored-by: beantaco <64012487+beantaco@users.noreply.github.com>
2021-05-19 10:27:29 +10:00
Audric Ackermann
57192699fa
attachment padding not enforced to be 0x00 (#1640) 2021-05-19 10:04:51 +10:00
Audric Ackermann
c599d0b629
WIP 2021-05-17 14:39:56 +10:00
Audric Ackermann
12d40aa94e
Fix attachment extension vnd (#1628)
* allow openoffice document extension and don't use

* allow opendocument to be shared with the extension rather than mimetype

Fixes #1593

* allow message without padding

* add test for odt files
2021-05-13 13:32:52 +10:00
Audric Ackermann
e733f29395
lint 2021-05-07 11:49:45 +10:00
Audric Ackermann
c063848167
pad and unpad message everywhere
attachment not padded for opengroup only
2021-05-07 10:56:14 +10:00
Audric Ackermann
7b96aba1bf
padd Message buffer for all outgoing messages (even opengroupv2) 2021-05-07 10:16:15 +10:00
Audric Ackermann
bdcdca206b
write attachment path with absolute attachment to disk for opengroupv2 2021-04-30 15:48:12 +10:00
Audric Ackermann
f7581cf4eb
increase prettier maxWidth to 100 2021-04-22 18:03:58 +10:00
Audric Ackermann
42f0d21740
generate attachment key on migration 2021-04-14 10:33:52 +10:00
Audric Ackermann
050739b0ab
cleanup old blobs from time to time 2021-04-13 14:16:50 +10:00
Audric Ackermann
ed30be5334
fix attachments loading for avatar and exporting files 2021-03-26 16:31:27 +11:00
Audric Ackermann
def03c8baa
working encrypt/decrypt of attachments 2021-03-26 13:07:42 +11:00
Audric Ackermann
35e57f2509
move mnemonic.js to typescript 2021-03-05 14:52:44 +11:00
Audric Ackermann
8ea9f02cec Move data.js to data.ts 2021-02-15 15:16:52 +11:00
Audric Ackermann
3b3378a2ee
finish explicit group updates 2021-02-08 15:33:16 +11:00
Audric Ackermann
6e11c6db2e
remove all reference to closed group update v2 2021-01-28 12:06:51 +11:00
Audric Ackermann
a0703bc2f9
remove primary and secondary device separate status 2021-01-21 17:49:13 +11:00
Audric Ackermann
eb9828a3b7 fix tests 2021-01-14 10:44:15 +11:00
Audric Ackermann
d43ae09eb0
first working version of closed group v2 2021-01-12 16:56:21 +11:00
Audric Ackermann
adf0d03d35
add test for the MessageEncrypter using Session protocol 2021-01-05 14:48:46 +11:00
Audric Ackermann
b0a229bf13 add Dialog on app start to ask to update SessionID 2020-12-16 16:35:30 +11:00
Audric Ackermann
1045bfeba8 add SessionProtocol wip 2020-12-16 13:56:29 +11:00
Audric Ackermann
cd3ec67099 add the encryptWithSessionProtocol method 2020-12-15 17:15:00 +11:00
Audric Ackermann
f28dfe5a94 use fallbacks for message even if we have a session with the device 2020-12-07 17:06:46 +11:00
Audric Ackermann
215c964fab
fix padding for medium group 2020-09-17 19:36:58 +10:00
Audric Ackermann
04063cd0fb
make medium group pubkey be in bytes rather than str 2020-09-15 09:04:10 +10:00
Maxim Shishmarev
6351fc1d4c Lint 2020-07-13 12:40:03 +10:00
Maxim Shishmarev
f6223ce5ab Use message queue for medium group chat messages 2020-07-13 12:35:42 +10:00
Maxim Shishmarev
237bd84b35 Fix medium group sending for single device users; protocol changes 2020-07-10 17:59:33 +10:00
Vincent
68f2a90f7c pubkeys-in-message-encryptor-init 2020-07-10 11:24:23 +10:00
Mikunj
646973e330 Made changes to how messages are sent.
Instead of blocking the message queue when we don't have a session, we instead just send out a session request and send the queued messages using fallback encryption.
This means that users will be able to message right away without having to wait.
The only down side is that all messages sent before sessions are established will be using the weaker encryption.

This change also means we have to detach session requests from envelope type (which is a good thing) and thus now a message is a session request if it contains a preKeyBundle.
2020-07-10 10:00:21 +10:00
Mikunj
93c19395c1 Change back to old window syntax and allow stubbing of it 2020-06-16 11:14:58 +10:00
Mikunj Varsani
542615961c
Merge pull request #1170 from Mikunj/message-sender-retry
Message sender retry
2020-06-10 17:54:32 +10:00
Mikunj
3b8b9f7306 Added comments 2020-06-10 15:03:36 +10:00
Audric Ackermann
f17ffd295a
Merge remote-tracking branch 'upstream/clearnet' into message-sending-refactor 2020-06-10 10:38:26 +10:00
Audric Ackermann
7a797737e0
rename SessionReset -> SessionRequest 2020-06-10 10:07:44 +10:00
Mikunj
653efaf9cf Fixed libsignal-protocol declaration 2020-06-09 16:18:02 +10:00
Mikunj
1dad49057b Implement MessageSender 2020-06-05 16:20:09 +10:00
Mikunj
21e2469b75 Add more tests 2020-06-02 14:57:54 +10:00
Mikunj
cd58e9b86e Add utils for stubbing.
Added ImportMock for easier es6 stubbing.
2020-06-02 12:13:13 +10:00