Commit Graph
100 Commits
Author SHA1 Message Date
PapaTutuWawa af3013ad67 refactor(service): Move manager overrides into moxxmpp/ 2022-11-09 16:43:44 +01:00
PapaTutuWawa d02fe73952 refactor(meta): Migrate to using moxxmpp
Fixes #139.
2022-11-09 16:41:38 +01:00
PapaTutuWawa 32444d5a7e fix(ui): Error messages now cannot be quoted
Fixes #142.
2022-11-09 11:56:04 +01:00
PapaTutuWawa b003b5e04b fix(ui): Make message draggable only in one direction
Fixes #118.
2022-11-09 11:47:55 +01:00
PapaTutuWawa 5d217a264a fix(shared): Fix smaller style issues 2022-11-09 11:38:08 +01:00
PapaTutuWawa 8d8c4d2da3 Merge pull request 'Add fallback body to quotes' (#134) from millesimus/moxxyv2:fix_quote_fallback into master
Reviewed-on: https://codeberg.org/moxxy/moxxyv2/pulls/134
2022-11-09 11:34:13 +01:00
PapaTutuWawa 42ebbdba6d Merge pull request 'Implement OMEMO' (#126) from feat/omemo into master
Reviewed-on: https://codeberg.org/moxxy/moxxyv2/pulls/126
2022-11-04 21:53:43 +01:00
PapaTutuWawa a2b477a3dc fix(ui): Add missing comma 2022-11-04 21:52:06 +01:00
PapaTutuWawa 3c7d5ad5ad feat(ui): Show a spinner while we are regenerating the device 2022-11-04 21:52:06 +01:00
PapaTutuWawa 4261e26f19 feat(ui): Update our own device fingerprint after regeneration 2022-11-04 21:52:06 +01:00
PapaTutuWawa a0ee4e1312 feat(xmpp): Add an event for receiving a device list update 2022-11-04 21:52:06 +01:00
PapaTutuWawa 93630650fc fix(xmpp): Sessions are not built for new Omemo devices 2022-11-04 21:52:06 +01:00
PapaTutuWawa 36b20fa2dd fix(xmpp): Wrong return for queued disco request 2022-11-04 21:52:06 +01:00
PapaTutuWawa ae1c4dd3e6 fix(xmpp): Remove unneeded critical section exit 2022-11-04 21:52:06 +01:00
PapaTutuWawa 69438f44b3 feat(service): Notify if we could not publish the Omemo device 2022-11-04 21:52:06 +01:00
PapaTutuWawa aceaa01cdb fix(xmpp): Disco#info requests stall after one fails 2022-11-04 21:52:06 +01:00
PapaTutuWawa 7fe220a630 feat(ui): Show which chats are encrypted 2022-11-04 21:52:06 +01:00
PapaTutuWawa f07599adf2 feat(ui): Warn when sending a file to multiple chats where >= 1 is unencrypted 2022-11-04 21:52:06 +01:00
PapaTutuWawa 1b89b16705 fix(xmpp): Awaiting a stanza does not return the transformed received stanza 2022-11-04 21:52:06 +01:00
PapaTutuWawa 0fb1148508 fix(meta): Ignore .android 2022-11-04 21:52:06 +01:00
PapaTutuWawa 208145d288 fix(xmpp): I think ratchet acking should work better now 2022-11-04 21:52:06 +01:00
PapaTutuWawa a6bd60077d fix(xmpp): Fix outgoing presence being wrongly processed 2022-11-04 21:52:06 +01:00
PapaTutuWawa 387c20a708 fix(xmpp): Fix encrypting direct Presence and IQs 2022-11-04 21:52:06 +01:00
PapaTutuWawa 1a9d34d347 fix(service): Fix dynamic access 2022-11-04 21:52:06 +01:00
PapaTutuWawa ed4ee53fdb fix(tests): Fix tests 2022-11-04 21:52:06 +01:00
PapaTutuWawa 4848a13fa0 fix(xmpp): Remove the sendRawXml method of Managers' attributes 2022-11-04 21:52:06 +01:00
PapaTutuWawa b9ebd506c8 chore(ui): Refactor 'Key' to 'Device' 2022-11-04 21:52:06 +01:00
PapaTutuWawa 249f49f7b3 feat(xmpp): Enable OMEMO for IQs and Presence Stanzas as well 2022-11-04 21:52:06 +01:00
PapaTutuWawa db3f5eb066 feat(service): Perform (most) file hashing operations on the native side 2022-11-04 21:52:06 +01:00
PapaTutuWawa c2f43e0096 chore(meta): Remove cryptography_flutter 2022-11-04 21:52:06 +01:00
PapaTutuWawa d81586d026 feat(service): Massively speed up BlurHash calculation 2022-11-04 21:52:06 +01:00
PapaTutuWawa 18a9419cef fix(service): Make HttpFileTransferService update messages on error 2022-11-04 21:52:06 +01:00
PapaTutuWawa 8a69083c19 feat(service): Improve encryption and decryption speed 2022-11-04 21:52:06 +01:00
PapaTutuWawa ba1b79f657 test(xmpp): Test hash parsing for SFS 2022-11-04 21:52:06 +01:00
PapaTutuWawa 1a2415925f feat(xmpp): Attempt PubSub subscription only once per session 2022-11-04 21:52:06 +01:00
PapaTutuWawa 16a597183a feat(xmpp): Log stanzas in their decrypted forms 2022-11-04 21:52:06 +01:00
PapaTutuWawa 2461430869 fix(xmpp): Tell the UI about the message change 2022-11-04 21:52:06 +01:00
PapaTutuWawa 605201dbc8 feat(xmpp): Try to keep our device list up-to-date 2022-11-04 21:52:06 +01:00
PapaTutuWawa 214d3250fe feat(service): Mark message if the chat is encrypted while the file isn't 2022-11-04 21:52:06 +01:00
PapaTutuWawa ea9c634a25 fix(xmpp): Fix a small logic bug in _findNewSessions 2022-11-04 21:52:06 +01:00
PapaTutuWawa 62095cb170 feat(service): Move isUploading and isDownloading to the database 2022-11-04 21:52:06 +01:00
PapaTutuWawa aba85c70c1 feat(service): Remove support for SIMS 2022-11-04 21:52:06 +01:00
PapaTutuWawa 98569cff69 feat(service): Pull the filename from SFS, if given 2022-11-04 21:52:06 +01:00
PapaTutuWawa 952dfdc521 feat(meta): Make gitlint rules nicer 2022-11-04 21:52:06 +01:00
PapaTutuWawa 93724802d8 feat(xmpp): Bail early on encryption if the stanza contains PubSub 2022-11-04 21:52:06 +01:00
PapaTutuWawa e5f19e3b8b feat(xmpp): Make SM's setState async 2022-11-04 21:52:06 +01:00
PapaTutuWawa 4479506ee0 fix(xmpp): Fix the Stream Management not counting awaited stanzas 2022-11-04 21:52:06 +01:00
PapaTutuWawa 359d4508b1 test(xmpp): Write test to ensure early-ended stanzas are counted 2022-11-04 21:52:06 +01:00
PapaTutuWawa ef9ba68790 fix(xmpp): Make SM counting run at the very beginning or end 2022-11-04 21:52:06 +01:00
PapaTutuWawa 53ce0d9e54 chore(xmpp): Track kex timestamp to prevent performing old kex 2022-11-04 21:52:06 +01:00
PapaTutuWawa 505921045e fix(xmpp): Fix receiving kex again breaking the ratchets 2022-11-04 21:52:06 +01:00
PapaTutuWawa 2c71e01e5a fix(xmpp): Do not try to decrypt if the stanza has no from 2022-11-04 21:52:06 +01:00
PapaTutuWawa c3cf84ee7d fix(service): Clear session related tables when regenerating the device 2022-11-04 21:52:06 +01:00
PapaTutuWawa 5787a8943d feat(xmpp): Ignore PubSub elements 2022-11-04 21:52:06 +01:00
PapaTutuWawa 313e276ad6 feat(service): Implement regenerating one's device 2022-11-04 21:52:06 +01:00
PapaTutuWawa 310891bf16 feat(ui): Add more confirmation prompts 2022-11-04 21:52:06 +01:00
PapaTutuWawa 8852356966 feat(xmpp): Work around ejabberd not accepting max in publish options 2022-11-04 21:52:06 +01:00
PapaTutuWawa 6243766ecc fix(ui): Fix not popping the dialog 2022-11-04 21:52:06 +01:00
PapaTutuWawa 2d5e987fcc feat(service): Implement deleting devices
- Fix accidentally deleting the entire bundles node instead of just
  retracting the single item.
- ASK IF THE USER WANTED TO DO THIS
- Fix checking for the wrong result type
2022-11-04 21:52:06 +01:00
PapaTutuWawa bf851c2bd6 fix(service): For now, revert the multiple PK situation 2022-11-04 21:52:06 +01:00
PapaTutuWawa 0327f254a2 feat(ui): Display warnings for messages 2022-11-04 21:52:06 +01:00
PapaTutuWawa a0c7078593 feat(service): Verify given file hashes 2022-11-04 21:52:06 +01:00
PapaTutuWawa 0cbea9607e feat(xmpp): Communicate encryption errors due to missing devices 2022-11-04 21:52:06 +01:00
PapaTutuWawa e799d516ea feat(xmpp): The send cancelled event now carries the handler data 2022-11-04 21:52:06 +01:00
PapaTutuWawa c630d8f091 fix(xmpp): Only add EME for messages 2022-11-04 21:52:06 +01:00
PapaTutuWawa 2494fbb837 fix(ui): Fix title of the contact devices page 2022-11-04 21:52:06 +01:00
PapaTutuWawa cb2560d46f fix(xmpp): Clean the publish method 2022-11-04 21:52:06 +01:00
PapaTutuWawa 240ed5f859 feat(ui): Add warning to enabling OMEMO by default 2022-11-04 21:52:06 +01:00
PapaTutuWawa 0365730e0e chore(xmpp): Move namespace into namespaces.dart 2022-11-04 21:52:06 +01:00
PapaTutuWawa b9d5eab3ea chore(xmpp): Move xep_0060.dart into its folder 2022-11-04 21:52:06 +01:00
PapaTutuWawa 16c84d59dc fix(service): Make more message attributes primary keys 2022-11-04 21:52:06 +01:00
PapaTutuWawa 621c396407 feat(service): Handle file decryption errors 2022-11-04 21:52:06 +01:00
PapaTutuWawa 3f2cc3d97a feat(xmpp): When sending is cancelled, return an error stanza
This will help once we try to encrypt IQ stanzas.
2022-11-04 21:52:06 +01:00
PapaTutuWawa ce927308c4 feat(xmpp): Allow stanza handlers to cancel sending 2022-11-04 21:52:06 +01:00
PapaTutuWawa df99eb0aab chore(service): Add TODO 2022-11-04 21:52:06 +01:00
PapaTutuWawa e8473d4f5b chore(service): Refactor the MediaFileLocation 2022-11-04 21:52:06 +01:00
PapaTutuWawa 1175d77c55 feat(service): Generate the OMEMO device in the background 2022-11-04 21:52:06 +01:00
PapaTutuWawa 570f4ca7d9 chore(service): Clean the cryptography service 2022-11-04 21:52:06 +01:00
PapaTutuWawa e4b9c8f1bc feat(service): Generate a plaintext hash in all cases 2022-11-04 21:52:06 +01:00
PapaTutuWawa ea6e7c5d8c feat(service): Hash the file before sending the metadata 2022-11-04 21:52:06 +01:00
PapaTutuWawa a462945c98 feat(service): Perform encryption and decryption off-thread 2022-11-04 21:52:06 +01:00
PapaTutuWawa 003d4d65e5 chore(meta): Bump omemo_dart 2022-11-04 21:52:06 +01:00
PapaTutuWawa 38fa5ab991 fix(service): Fix the result of file encryption 2022-11-04 21:52:06 +01:00
PapaTutuWawa e22e7b9c90 fix(xmpp): Fix not parsing ESFS 2022-11-04 21:52:06 +01:00
PapaTutuWawa fc6a8eae9d fix(service): Fix trust device list not loaded 2022-11-04 21:52:06 +01:00
PapaTutuWawa 4dab811388 fix(service): Fix file not encrypted before upload 2022-11-04 21:52:06 +01:00
PapaTutuWawa 012dc5ec69 feat(xmpp): Collection commit
- Fix Db issue when saving the trust device list
- Prevent constantly requesting our own device bundles if it's just our
  one device.
- Encrypt uploads and decrypt downloads
2022-11-04 21:52:06 +01:00
PapaTutuWawa f72f67342d feat(service): Implement a service for file cryptography 2022-11-04 21:52:06 +01:00
PapaTutuWawa 283ac315d8 feat(service): Also store the used encryption mechanism 2022-11-04 21:52:06 +01:00
PapaTutuWawa 1a5b0f372d chore(meta): Update DOAP 2022-11-04 21:52:06 +01:00
PapaTutuWawa de40e859d7 feat(xmpp): Implement XEP-0448 2022-11-04 21:52:06 +01:00
PapaTutuWawa 6140de8eea feat(ui): Add (untested) support for recreating own sessions 2022-11-04 21:52:06 +01:00
PapaTutuWawa a9fcbd7909 feat(xmpp): Add Message Processing Hints to OMEMO messages 2022-11-04 21:52:06 +01:00
PapaTutuWawa a963153c2a feat(service): Use cryptography_flutter for possible speedup 2022-11-04 21:52:06 +01:00
PapaTutuWawa 8efb743b84 feat(ui): Implement (untested) device deletion 2022-11-04 21:52:06 +01:00
PapaTutuWawa f251d6b97b feat(xmpp): Implement PubSub item delete 2022-11-04 21:52:06 +01:00
PapaTutuWawa 8a5a96d02c feat(ui): Implement enabling and disabling one's own sessions 2022-11-04 21:52:06 +01:00
PapaTutuWawa fc0dd14b4d feat(ui): Display key controls only on keys we have a session with 2022-11-04 21:52:06 +01:00
PapaTutuWawa 4d67c157f0 feat(service): Implement getting one's own device fingerprints 2022-11-04 21:52:06 +01:00
PapaTutuWawa a678ef70e7 fix(ui): isEmpty -> isNotEmpty 2022-11-04 21:52:06 +01:00