Krille Fear
9a87850092
Revert "feat: non cached fragmented timeline"
...
This reverts commit 09b324674e
2022-05-12 09:46:29 +02:00
Henri Carnot
09b324674e
feat: non cached fragmented timeline
2022-05-03 14:08:33 +00:00
td
60fb103563
Merge branch 'krille/remove-deprecations' into 'main'
...
refactor: Remove old deprecations
See merge request famedly/company/frontend/famedlysdk!1017
2022-04-27 05:35:32 +00:00
Christian Pauly
bce45cbf2b
refactor: Remove old deprecations
...
They have been lived long
enough and the next version
will have breaking changes
anyway.
2022-04-22 12:44:45 +02:00
h.carnot
eaa2f73bcc
feat: make image size editable
2022-04-21 15:45:38 +02:00
Krille Fear
c5a6cc9a52
Merge branch 'krille/get-event-from-push' into 'main'
...
feat: Get event from push notification
See merge request famedly/company/frontend/famedlysdk!1008
2022-04-14 15:08:46 +00:00
Christian Pauly
5973e629fe
feat: Get event from push notification
2022-04-14 17:01:05 +02:00
Christian Pauly
059a240214
feat: Add more localization strings and add default matrix localizations
2022-04-14 07:54:15 +02:00
Krille Fear
2f4d455eee
fix: Retry sending a file event
2022-04-08 08:41:55 +02:00
Krille Fear
e97fe621d6
chore: Allow custom image resizer to be an async method
2022-04-04 14:35:23 +02:00
Christian Pauly
ea3910001b
fix: Better fallback message for member events without any change
2022-03-31 12:20:23 +02:00
Christian Pauly
445252b3a5
feat: Pass through a custom image
...
resize function to the client
This allows the use of the
native imaging package in a more
easy way.
2022-03-30 10:35:17 +02:00
Techno-Disaster
885da787b4
fix: send oldusername in displayname changed event
2022-03-17 18:51:26 +05:30
Krille Fear
9fa5667234
refactor: Make MatrixFile final and move all image calculation into isolate
...
This makes all fields in a MatrixFile final and
the object therefore stateless. It also moves
all calculations into the isolate. After some
benchmarks it seems that this does not
really speed up the thumbnail creation
but it does no longer block the UI for
some seconds.
2022-03-15 08:27:40 +01:00
Krille Fear
a7f8838522
fix: UIA request stucks forever on unexpected matrixExceptions
2022-02-17 20:54:03 +01:00
Christian Pauly
68fcee98cb
fix: Show reactions as last events and refactor hasNewMessage
...
Reactions are triggering push
notifications and should therefore
be displayed as last events
in the room list of a client.
The body should just display
the reaction key.
This fixes that rooms with
new reactions can't set to
read.
2022-02-14 15:06:22 +01:00
Christian Pauly
12f846e101
fix: Resize image with compute by using const class arguments
2022-02-04 08:04:18 +01:00
Lanna Michalke
58f6cde0bf
BREAKING CHANGE: high-level hadling of image sizes
...
- By using [package:image](https://pub.dev/packages/image ), the
`MatrixImageFile` was given automatically generated width and heigth.
- Moreover, `MatrixImageFile` was given a factory to create the image
file from a given maximal dimension.
- When sending images without explicitly providing a thumbnail, the
thumbnail is automatically generated based on the provided image.
- The blur hash in generated automatically based on the provided image.
Fixes:
https://gitlab.com/famedly/company/frontend/famedly-web/-/issues/162 , https://gitlab.com/famedly/fluffychat/-/issues/756
Signed-off-by: Lanna Michalke <l.michalke@famedly.com>
2022-01-19 13:10:17 +01:00
Lanna Michalke
cab03aa73b
fix: Allow unpadded base64 decoding
2022-01-11 09:02:34 +00:00
Krille Fear
e9e9dcb4aa
Merge branch 'krille/newlinter' into 'main'
...
refactor: Remove unnecessary type checks and imports
See merge request famedly/company/frontend/famedlysdk!929
2022-01-03 11:45:06 +00:00
Krille Fear
3bce8b4489
refactor: Remove unnecessary type checks and imports
2021-12-23 11:46:45 +01:00
Krille Fear
326f1f3223
fix: Localize reactions
...
In notifications in FluffyChat we
have "Unknown event m.reaction"
for reactions. But it should just be
enough to display the body so it
should look like:
"username: :thumbs_up_emoji:"
2021-12-23 11:43:00 +01:00
Krille Fear
921c694888
feat: Add clear cache command
2021-11-23 09:48:08 +01:00
Krille Fear
a61e1ae4a3
feat: Add commands to create chats
2021-11-21 13:40:41 +01:00
Krille Fear
66bf8e6ace
fix: HtmlToText crashes with an empty code block
2021-11-16 08:18:07 +01:00
Nicolas Werner
d2e7de4702
fix: crash on invalid displaynames
2021-11-09 21:27:55 +01:00
Krille Fear
9abe1ed81d
fix: Dont enable e2ee in test verification DM room
2021-11-09 15:42:43 +01:00
Krille Fear
315ed7bdcb
feat: Add more benchmarks for sync, timeline, init
...
This also disables benchmarks if loglevel is higher than debug.
2021-11-09 10:03:59 +01:00
Krille Fear
9be87918f1
refactor: Make room in Event class not nullable
2021-11-04 14:21:04 +01:00
Sorunome
5c87b560b9
fix: obay explicitly set ports in mxc URLs
2021-11-03 08:54:04 +01:00
Nicolas Werner
6e20c53b01
refactor: remove redundant null checks
2021-10-28 14:32:09 +02:00
Nicolas Werner
ebd5bc3d24
refactor: make room nullsafe
2021-10-28 00:54:25 +02:00
Nicolas Werner
fb0a84d7b2
refactor: make client nullsafe
2021-10-25 16:34:02 +02:00
Nicolas Werner
17fd1f22b3
refactor: make event nullsafe
2021-10-25 10:10:25 +00:00
Krille Fear
faba36d476
fix: Missing null check in a nested json map
2021-10-18 15:45:29 +02:00
Nicolas Werner
60956bde00
chore: port the remaining encryption files to nullsafety
2021-10-13 13:58:21 +00:00
Krille Fear
3ae42d1a88
fix: Type error when using CryptoKey in dart web
...
In Dart Web when using CryptoKey we
get a type error. When using the html version of it
it seems to work fine.
2021-10-13 12:30:04 +00:00
Krille Fear
3603dae312
feat: Calc benchmarks for hive operations on init
2021-10-07 12:18:13 +00:00
Lukas Lihotzki
a7818bbd0f
refactor: null safety for all utils
2021-10-05 15:41:25 +02:00
Nicolas Werner
7dd176c278
fix: apply review feedback
2021-09-30 12:58:37 +00:00
Nicolas Werner
1c838e3be8
fix: Cleanup nullsafe encryption a bit
2021-09-30 12:58:37 +00:00
Lukas Lihotzki
da80658c09
refactor: simplify device_keys_list.dart
2021-09-30 12:58:37 +00:00
Nicolas Werner
a196b53219
refactor: nullsafe encryption
2021-09-30 12:58:37 +00:00
Lukas Lihotzki
1d0202e14e
refactor: null safe matrix_id_string_extension
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
3b1c6e3d2b
refactor: arbitrary components in _parseIdentifierIntoUri
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
fb0ea2efc3
refactor: parseIdentifierIntoParts
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
7fce5b6040
refactor: inline parseQueryString in parseIdentifierIntoParts
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
8ea01fcee0
refactor: simplify parseQueryString in parseIdentifierIntoParts
2021-09-27 12:59:51 +00:00
Jayesh Nirve
77ca7523d0
refactor: remove unused clientId
2021-09-24 16:05:05 +02:00
Lukas Lihotzki
42434761e8
chore: dart analyze fix
2021-09-23 14:57:30 +02:00
Lukas Lihotzki
5da26a6923
refactor: null safe commands_extension
2021-09-23 00:15:05 +00:00
Lukas Lihotzki
01c3b4d0bc
refactor: null safe MatrixFile
2021-09-22 23:40:21 +00:00
Lukas Lihotzki
7a3553839c
fix: remove unused parameter in VariableTimeoutHttpClient
2021-09-21 07:12:07 +00:00
Lukas Lihotzki
f491cfacc2
refactor: null safe http_timeout
2021-09-21 07:12:07 +00:00
Sorunome
6f0c7c5f64
feat: Add /discardsession command
2021-09-17 05:52:53 +00:00
Christian Pauly
e13b00d127
refactor: Make RoomUpdate class null safe by removing it
...
RoomUpdate came from a time where we had no data model for
SyncUpdates but now we have and therefore this class is just
code duplication. This removes the class
and uses the SyncRoomUpdate class from
the package matrix_api_lite instead.
It needed a lot of refactoring at some places
where I also have removed some unnecessary null or type checks.
2021-09-08 12:31:55 +00:00
Christian Pauly
5b13e0442e
refactor: Make Uri extension null safe
2021-09-08 12:31:55 +00:00
Christian Pauly
92755c07d3
refactor: Don't create dummy User object just to start a new chat
2021-09-08 12:31:55 +00:00
Christian Pauly
646d7e2640
fix: revert make bytes in EncryptedFile nullable
2021-09-06 09:35:53 +02:00
Christian Pauly
2cd32a8547
fix: Make bytes in encrypted file nullable
...
This was a mistake to make them non nullable. There are fields in the app where
we create this object without bytes.
2021-09-06 08:46:23 +02:00
Christian Pauly
9c1f79359e
refactor: Replace all logic regarding sortOrder
...
The current implementation of sortOrder can be made way more easier now
by just keeping the sortOrder of the list
and the timelineFragments in the hiveStore. This needed a huge
change but mostly removes a lot of code which can be done
way more easy now. This also needed some rewriting of the setState logic and changes to
the prevEvent calculation. This solution should also be more stable.
More information:
https://www.reddit.com/r/fluffychat/comments/pfnlhq/the_sort_order_of_matrix_timelines/
2021-09-02 07:13:38 +00:00
Christian Pauly
62694248b9
refactor: Make UIA Request null safe
2021-08-30 09:26:34 +02:00
Christian Pauly
efca583cf5
refactor: SyncUpdateExtension null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
8ae77215b5
refactor: SpaceChild and SpaceParent null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
dd48a379ec
refactor: runInRoot null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
8621f82333
refactor: Null safe receipt
2021-08-30 09:20:17 +02:00
Christian Pauly
607658dcda
refactor: Null safe QueuedToDeviceEvent and fix CamelCase filename
2021-08-30 09:20:17 +02:00
Christian Pauly
4b9a2945f4
refactor: Null safe multilock
2021-08-30 09:20:17 +02:00
Christian Pauly
0cd73e846d
refactor: Null safe matrix localizations
2021-08-30 09:20:17 +02:00
Christian Pauly
f311ca62e0
refactor: Make markedUnread null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
5eb2d22207
refactor: Make eventupdate null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
d75b27a0cd
refactor: Ignore import_of_legacy_library_into_null_safe
2021-08-30 09:20:17 +02:00
Christian Pauly
8f35683120
refactor: Make encryption utils null safe
2021-08-30 09:20:17 +02:00
Christian Pauly
4bee82dbe0
fix: uiaRequests send broken auth object at first try
...
We should just let the `auth` object null and dont send it at the
first try and wait for the servers response. This worked in the past
but now it is broken because of changes in the
matrix_api_lite. This could also be fault for some
bootstrap issues.
I have also removed an unnecessary check if a String is a String and just made it a
null check because this was intended at this point.
Because of that this blocks uiaRequests it is a hotfix and therefore directly bumps the version.
2021-08-30 08:31:20 +02:00
Sorunome
ffb6fd426c
fix: Requesting history being funky
...
As it turns out, some of the code set the prev_batch for rooms too
early to an empty string. For synapse this means "request from the start",
for conduit it is just an error. This commit fixes that by never resolving
null --> empty string, but instead throw an error.
2021-08-29 12:56:16 +02:00
Sorunome
024e0de4b9
fix: Don't lag when sending messages in big rooms
...
The old mentionMap was very inefficient to build and scaled badly with
room member size. This resulted in noticable lag when sending any message
in a large room, no matter if it contained a message or not.
Now, the algorithm is severly optimized and mentions (and emotes) are
only loaded when actually used.
2021-08-29 11:43:46 +02:00
Sorunome
f3f9b219e1
feat: Cleanup Event.plaintextBody and add [plaintextBody] to Event.getLocalizedBody
...
It appears that [hideEdit] in Event.getLocalizedBody was written in a way that it
assumes a valid event body. This was also fixed, while also adding tests for the
various parameters of Event.getLocalizedBody
2021-08-28 09:46:03 +00:00
Sorunome
b849c828e3
fix: String.parseIdentifierIntoParts not working with unicode matrix.to links
...
Some clients do not uri-encode the identifier for matrix.to links, so we must
handle if we can't uri-decode them
2021-08-28 11:19:26 +02:00
Christian Pauly
93c689fd4d
hotfix: Opt-out null safety for crypto files because of an error in web
...
`packages/matrix/src/utils/crypto/crypto.dart:19:1: Error: Null safe libraries are not allowed to export declarations from of opt-out libraries.
`
2021-08-20 13:56:15 +02:00
Christian Pauly
9b7474e2f2
refactor: Update to dart 2.12 and opt out in all files
...
This also adds some missing license headers, I have detected while
using license header search&replace to add the
null safety opt out
2021-08-18 08:09:39 +02:00
xenofem
a1b95c0915
feat(events): add plain-text body representation from HTML
...
Co-Authored-By: Sorunome <mail@sorunome.de>
2021-08-17 18:33:45 +02:00
Sorunome
fb16b96ea6
fix: Correctly parse the reason of a spoiler
...
Previously only the first child node of a spoiler was considered to
determine if there should be a spoiler reason. This was, unfortunately,
incorrect, as soon as e.g. the reason had more than one space. This is
fixed by properly iterating all child nodes to search for the reason.
2021-08-17 07:33:53 +00:00
Lukas Lihotzki
6d6830505f
refactor: implement http timeouts in this package
2021-07-26 15:33:36 +02:00
Lukas Lihotzki
8665f092f4
chore: matrix_api_lite 0.4.0
2021-07-26 14:54:22 +02:00
Christian Pauly
209035ffbd
refactor: Use official Dart isolates
...
The isolates package is discontinued and not compatible
with the newest Dart version.
dart:isolate is not an option because importing this
library makes it impossible to run the matrix
SDK on dart web native. It just won't
build. So we now just depend on
that the flutter app pass through the compute method.
2021-07-21 12:34:43 +02:00
Sorunome
a1594fd9ac
feat: Add general image pack handling as per MSC2545
...
This also deprecates the old ways to access just emoticons, as the MSC
now covers both emoticons and stickers!
2021-07-18 18:46:32 +02:00
Sorunome
ee287a09b9
feat: Add support for nicer mentions
...
This PR adds support for nicer mentions in markdown: You can now
fetch the mention string of a user with `user.mention` which is
human-friendly (typically contains the display name), which will get
properly pillified upon passing through the markdown parser.
2021-07-18 17:29:25 +02:00
Sorunome
44b7c96d73
fix: preserve homeserver port when creating thumbnail URIs
2021-07-11 13:15:57 +02:00
Sorunome
cd5131daa5
fix: Add locking to sending encrypted to_device messages to prevent potential race conditions
...
Due to chunked lazy sending of megolm sessions it was in theory that we encrypted two olm
messages to the same device in different futures out-of-order. Introducing locking here should
fix this (increadibly rare, so far only theoretical?) race-condition
2021-07-11 13:06:39 +02:00
Christian Pauly
c0c7f68bf3
chore: Rename to matrix
2021-06-18 09:58:25 +02:00
Christian Pauly
73db010db4
fix: Make QueuedToDeviceEvent store content as String OR Map
...
Temporary fix to stay compatible to Moor AND a key value store
2021-06-01 12:56:43 +02:00
Christian Pauly
c3d47b16c6
CI: Use correct image
2021-05-25 10:46:34 +02:00
Christian Pauly
c66e35c16c
refactor: Create a clean database API
2021-05-20 07:36:03 +00:00
Lukas Lihotzki
c196610998
chore: operation names from OpenAPI spec
2021-05-12 13:56:16 +02:00
Christian Pauly
ffef732103
refactor: enable more linter rules
...
enable prefer_final_locals and prefer_final_in_for_each linter rules
2021-04-14 10:29:29 +02:00
Lukas Lihotzki
545ce26e39
style: fix format and lint
2021-04-12 14:49:03 +02:00
Lukas Lihotzki
d413f54f10
refactor: use OpenSSL for file e2ee
2021-04-12 14:49:03 +02:00
Lukas Lihotzki
761138a56d
refactor: use OpenSSL for AES
2021-04-12 14:49:01 +02:00
Lukas Lihotzki
7faf05fe90
refactor: selectable hash for pbkdf2
2021-04-12 14:48:38 +02:00
Lukas Lihotzki
a25d1932ee
fix: fast pbkdf2 with OpenSSL
2021-04-12 14:48:38 +02:00
Lukas Lihotzki
4f32168017
chore: upgrade to markdown 4.0.0
2021-04-12 14:48:38 +02:00
Christian Pauly
fb0177ac5f
feat: Implement spaces
2021-04-12 09:24:20 +02:00
Lukas Lihotzki
2a2a170609
refactor: upgrade http package
2021-04-01 13:43:24 +02:00
Christian Pauly
0ceb2b26df
refactor: Constants names
2021-03-30 12:43:50 +02:00
Lukas Lihotzki
3d55abdd11
chore: upgrade to ffi 1.0.0
2021-03-29 16:37:29 +02:00
Christian Pauly
9012ce6b2c
fix: Display errors from isolates in the logs
2021-03-17 09:46:13 +01:00
Krille Fear
9bef8452d3
docs: Clean up dart documentations
...
Changing to `code` blocks where it cant be resolved to [stuff] things.
2021-03-16 12:32:21 +00:00
Krille Fear
9626c64993
docs: Fix deprecation warning
2021-03-16 09:23:44 +00:00
Christian Pauly
1f8285c3e7
refactor: Room states
2021-03-09 17:28:55 +00:00
Krille Fear
44ca96e544
refactor: Update pedantic
...
This enforces to NOT use curly braces in Strings where not needed
and not await non-future variables.
2021-03-09 17:28:04 +00:00
Christian Pauly
c9d3c327f6
refactor: Deprecate eventType in EventUpdate
2021-02-26 13:06:02 +01:00
Sorunome
e7c8e754a1
chore: Update matrix scheme parsing to match updated MSC
2021-02-23 16:34:43 +01:00
Nicolas Werner
ac1ad1b897
fix: escape attributes in markdown less aggressively
2021-02-17 22:56:31 +01:00
Sorunome
681b27e269
fix: Don't allow transitive trust unless it is for ouself
2021-02-15 12:19:05 +01:00
Christian Pauly
fd05f642d8
feat: Implement cancel uiarequest
2021-02-10 13:41:09 +01:00
Sorunome
fcb8d48bd7
feat: Add command parser
2021-02-09 18:19:38 +01:00
Sorunome
44a1bcfd57
fix: Accidental pills in URLs
2021-01-20 12:02:40 +01:00
Christian Pauly
03e17f890e
change: Deprecate senderName
2021-01-15 14:24:30 +01:00
Christian Pauly
39b776716c
refactor: Olm Exceptions
2021-01-07 12:53:49 +01:00
Christian Pauly
9ffecd845a
chore: Update license header
2021-01-04 10:34:50 +01:00
Christian Pauly
e450a09fb5
refactor: External matrix api
2021-01-04 10:26:29 +01:00
Sorunome
19d96595cc
feat: Add identifier string parsing
2021-01-01 15:28:25 +01:00
Sorunome
6723c01a31
feat: Lazy-send room keys, chunked and sorted by importance
2020-12-29 14:46:36 +01:00
Sorunome
58044be1ba
feat: Add animated property to thumbnails
2020-12-29 10:32:18 +01:00
Sorunome
768baa7602
chore: Implement a proper deep-copy function for json maps
2020-12-28 14:35:21 +01:00
Sorunome
48904b3a1b
fix: Cache the result of the self-signature check
2020-12-23 10:52:39 +01:00
Sorunome
6f9deb5ae2
fix: Verify device signatures before storing devices and block those with invalid signatures
2020-12-22 10:22:42 +01:00
Sorunome
b00a9e8834
feat: Better determine which devices to encrypt to
2020-12-21 15:26:46 +01:00
Christian Pauly
57286d4c28
feat: Use logger package
2020-12-19 12:04:25 +00:00
Sorunome
405306f84e
feat: Add == operator to the Receipt, User and Room objects
2020-12-19 12:15:50 +01:00
Christian Pauly
d3c44687f6
fix: Missing null check which F*cks me up!
2020-12-14 13:24:39 +00:00
Christian Pauly
6657e073a0
refactor: Follow up clean up bootstrap
2020-12-11 09:57:45 +01:00
Christian Pauly
b563aec7bb
refactor: Add secretstoragekeycontent
2020-12-10 11:03:45 +01:00
Sorunome
49f0679fbf
feat: Add bootstrapping
2020-12-10 08:13:24 +00:00
Christian Pauly
bec1761172
refactor: content parsing
2020-11-30 15:34:46 +01:00
Christian Pauly
9181701df0
fix: Display stateKey when changing displayname
2020-11-23 17:35:50 +01:00
Christian Pauly
411d29cc89
feat: Implement room tombstones
2020-11-21 15:28:05 +01:00
Sorunome
66572bd032
feat: Check if event type is known
2020-11-08 13:52:10 +01:00
Sorunome
5924e57cf1
feat: Add broadcast to-device verification
2020-10-30 11:40:19 +01:00
Sorunome
ad0192e8e1
fix: Greatly improve latex markdown
2020-10-24 12:08:23 +02:00
Christian Pauly
66e590073e
refactor: Event Update Type
2020-10-22 13:01:35 +02:00
Sorunome
be6824b746
feat: Add LaTeX markdown rendering as per MSC2191
2020-10-21 11:20:19 +02:00
Sorunome
01bb3f5b50
fix: Make key backup work in web
2020-10-14 12:18:20 +02:00
Christian Pauly
84cc925b08
fix: Mimetype null
2020-09-28 12:43:23 +02:00
Sorunome
86a4f90a5a
fix: Run automated key requests in root zone
2020-09-21 18:11:14 +02:00
Christian Pauly
b05e4da34f
fix: Last event calculation
2020-09-16 10:23:37 +02:00
Sorunome
c90e18b55d
fix: Handle domains with port or ipv6 addresses correctly
2020-09-15 12:40:29 +02:00
Sorunome
bbc1b63695
feat: Auto-verify own master key, if there is a valid signature chain within the same account
2020-09-10 13:04:24 +02:00
Sorunome
99d536b14f
feature: Upload to online key backup
2020-09-09 09:53:26 +02:00
Sorunome
f7e63097b4
chore: Update emotes to match MSC
2020-09-07 09:34:14 +00:00