Commit graph

57 commits

Author SHA1 Message Date
Audric Ackermann cf44896a03
Minor call tweaks (#2051)
* show missed-call,started-call and answered call notification in chat

* fix types for createLastMessageUpdate

* show incoming dialog if we have a pending call when enable call receptio

* simplify a bit the avatar component

* move disableDrag to a custom hook

* speed up hash colors of avatarPlaceHolders

* fixup text selection and double click reply on message

* keep avatar decoded items longer before releasing memory

* add incoming/outgoing/missed call notification

also, merge that notification with the timer and group notification
component

* hangup call if no answer after 30sec

* refactor SessionInput using hook + add testid field for recovery

* disable message request feature flag for now

* fix merge issue

* force loading screen to be black instead of white

for our dark theme user's eyes safety
2021-11-29 17:40:46 +11:00
Audric Ackermann faeb6e206a
fix a bug releasing the decrypted attachment blobs too early 2021-11-23 16:18:52 +11:00
Audric Ackermann a629985a4f
fix toggling input source and off in video calls 2021-10-14 14:12:14 +11:00
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