Commit Graph

1447 Commits

Author SHA1 Message Date
Jindřich Pikora cf441e533d refactor: rename LoginState.logged to loggedIn 2021-08-03 12:26:17 +00:00
Nicolas Werner 162436cc8d fix: accidental OTK uploads on internal fakeSync 2021-08-02 20:52:09 +02:00
Christian Pauly 4ca69e3e1d fix: Missing required field `nextBatch` 2021-07-27 10:50:06 +02:00
Christian Pauly e8d511a371 fix: Missing null checks in syncUpdate handling 2021-07-27 10:49:50 +02:00
Lukas Lihotzki 46b2f8898e fix: use TryGet.optional 2021-07-26 15:33:36 +02: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
Lukas Lihotzki bc2dac2ecc refactor: use more specific type 2021-07-26 14:40:15 +02:00
Nicolas Werner 179f73db3a fix: Upload OTKs if the otk_count field is missing
fixes #180
2021-07-26 09:47:05 +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
Sorunome e86353a412
fix: Provide a reasonable well-known fallback
If the well-known look fails (not json, 404, etc.) we should assume a
reasonable fallback (domain part with https prepended). As clients are
expected to call Client.checkHomeserver on the resulting domain anyways
we can safely assume this default, as it is still validated, if there
is actually a matrix homeserver running on that endpoint.
2021-07-11 12:26:48 +02:00
Christian Pauly e86fd7cc07 refactor: Restructure states box and use dedicated members hive box
More description about this here: https://gitlab.com/famedly/company/frontend/frontend-issue-inbox/-/issues/40
2021-07-10 08:38:38 +00:00
Christian Pauly aeb808b5dc fix: Dont migrate from version null
If the currentVersion of the database is null then the database has never been used yet.
Therefore we store the current version and do not call the migrate method.
2021-07-10 08:38:38 +00:00
Sorunome 36a9b53de1
fix: Adjust emoji ranges to have less false positives
Before too many characters, e.g. kanji, were incorrectly detected
as emoji
2021-07-09 20:53:49 +02:00
Sorunome 4735d2d0a8
fix: Sending of the to_device key
With the switch to hive a regression of sending the to_device key was
introduced: When popping elements .deleteAt(), so deleting at the index,
was used, instead of .delete(), so deleting of the key. As the new events
pushed onto the queue used hives auto increment key, a .delete() is
appropriate here.
2021-07-09 19:43:48 +02:00
Christian Pauly 535a3b1d70 feat: Make it possible to get the current loginState
You may have missed the last valid loginState from the stream if you
listen too late to it. This makes it possible to
get always the current loginState.
2021-07-06 12:25:00 +00:00
Christian Pauly 7c0dd5d8fd fix: Broken nested accountData content maps
If you call BasicEvent.fromJson the given content is copied first
which recursively makes sure
that the Map is from type
Map<String,dynamic>.
Using just the constructor doesnt have this which can lead that nested Maps in
the content is InternallinkedHashMap and
therefore lead to type errors.
2021-07-06 08:11:30 +02:00
Christian Pauly ebc9be250d fix: Mark unsent events as failed
In Moor this was implemented but forgotten in Hive.
Events with status 0 (not sent yet) should be marked as failed on restart.
In fact they should be marked as failed if older than 1 minute. To not have a big startup job which iterates through all events in the database
we just do a time check when opening a room where we iterate through all events anyway.
The new implementation is now in the constructor of the Event and therefore
independent from the database implementation.
2021-07-05 08:37:46 +02:00
Sorunome b664640a05
fix: Don't run syncs while the client is being initialized
Fixes that a sync could be done / processed while the client was still being initialized (loaded from database). This has lead to multiple bugs, such as the verified status of keys getting lost, notifications that come in during app startup displaying oddly, etc.

Additionally, the init lock was released too early; it is now released when the init is actually done.
2021-06-25 13:26:23 +02:00
Christian Pauly 768b0623da feat: Implement sync status stream
This new sync status stream gives the current status of the sync to make it possible
to display in the UI where the sync currently hangs and
what the progress is while updating 1000 rooms. So the app can display a
progress bar.
2021-06-20 15:59:59 +02:00
Christian Pauly 96d28a1b76 feat: Implement migration for hive schema versions 2021-06-20 10:31:17 +02:00
Christian Pauly a7ffe4835d feat: Also migrate inbound group sessions
For users who do not use the chat backup this could be useful.
2021-06-19 11:03:52 +02:00
Christian Pauly 4dc62f6150 fix: Make sure hive keys only contain valid characters
There are some matrix IDs like room IDs which contain for example emojis.
This is valid from the spec and some people hack their Synapse to have this.
2021-06-19 10:51:17 +02:00
Christian Pauly 69b52ba85b refactor: Move pedantic to dev_dependencies
The unawaited method from the pedantic package was a historic solution
for the case that you dont want to await a future in an async function.
But now we can do this with just a comment which
is the recommended way to do this now.
This makes it possible to have pedantic as a dev_dependency which means just one dependency less.
2021-06-18 10:15:59 +02:00
Christian Pauly c0c7f68bf3 chore: Rename to matrix 2021-06-18 09:58:25 +02:00
Christian Pauly 38d81d6093 fix: Migrate missing device keys
Currently we only migrate the client and SSSSCache but this leads to the
problem that we are no longer self signed after the migration.
We need to migrate all device keys too.
This also abstracts the migration code in a method. init() is too large already...
2021-06-18 09:16:12 +02:00
Christian Pauly 14ee16fe16 feat: Implement new Hive Database
The hive database now implements the whole API except for storing files which
should be better done by the flutter_cache_manager package inside of the
flutter app. All tests already run with Hive now but the Moor database is still
tested too. We needed to change some wait jobs in the tests because the Hive
database is not 100% in memory for the tests like Moor.
For now both database implementations are equal and the developer can pick
which one to use but we plan to get rid of Moor in the future.
2021-06-16 08:43:33 +02:00
Christian Pauly 28dc8b4ff0 refactor: Improve clearing
This makes sure that the database is null after clearing so it will
be built again using the databaseBuilder.
Also this makes sure that the sync has
aborted BEFORE the clearing starts to
get rid of some warnings in the logs.
2021-06-14 11:00:41 +02:00
Christian Pauly fe06b96e93 fix: Do not logout before migration
Before the migration of the databases starts there is always a
logout signal sent. This was wrong.
This also cleans up the logs a little bit
and removes the useless parameters for the second init() call
because those are going to come from the new database anyway.
2021-06-14 08:29:03 +02:00
Christian Pauly 967712adfe feat: Implement database migration
This allows the user to give a legacyDatabaseBuilder to the client object
and in the init proccess the client checks by itself if there is old data in the legacy
database. If yes then it migrates them and
then deletes the old database. This uses the database_api and is agnostic to
the database implementation.
2021-06-11 10:10:18 +02:00
Christian Pauly c387b33e9f refactor: Make support for file storing optional in database API 2021-06-01 15:27:18 +02:00
Christian Pauly ab0ff46900 refactor: Remove types for timeline callbacks
These types weren't that helpful anyway and their names were not compatible
with the new linter rule of Flutter 2.2.
2021-06-01 12:57:52 +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 d0f67f914a refactor: Add sortOrderKey and check for this while Event creation
This makes it easier to write a store which just stores the Event json and
does not have a dedicated scheme for
each object like Moor has.
2021-06-01 12:55:45 +02:00
Christian Pauly 26261ecd5e feat: Add fromJson method for Room
This also included to move the room summary to a dedicated object inside
of the Room object because so it is easier to convert this to and from json.
2021-06-01 12:54:16 +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
Christian Pauly d1b76b01c4 fix: Try clear and try close database 2021-05-17 14:36:10 +02:00
Christian Pauly bb9a8ff7e9 fix: SdkError Exception can be anything so should be dynamic 2021-05-17 14:17:46 +02:00
Nicolas Werner 6f52c0e2c3 fix: Allow SDK users to delete the db after logout 2021-05-17 07:38:53 +00:00
Lukas Lihotzki c196610998 chore: operation names from OpenAPI spec 2021-05-12 13:56:16 +02:00
Christian Pauly 70ee808911 feat: Enhanced alias handling 2021-05-01 09:26:46 +02:00
Lukas Lihotzki b4f755388a refactor: high-level loops 2021-04-19 18:58:59 +02:00
Lukas Lihotzki 71fdd28a8a refactor: await unconditionally 2021-04-16 14:19:42 +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 ac9df588d1 chore: recreate database.g.dart 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 f69acda419 refactor: use parameters in EncryptedFile constructor 2021-04-06 18:57:34 +02:00
Lukas Lihotzki 2a2a170609 refactor: upgrade http package 2021-04-01 13:43:24 +02:00
Lukas Lihotzki 08043c06f4 refactor: high-level loops 2021-04-01 12:51:45 +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 97daae3419 refactor: Update to matrix_api_lite 0.2.0
This introduces a minor breaking change in the login method.
It now uses correctly the AuthenticationIdentifier
and deprecates the user, medium and address parameter.
2021-03-09 19:14:53 +01:00
Krille Fear 5cf97886b4 Merge branch 'soru/strip-at-room' into 'main'
feat: Escape @room in the reply fallback when replying

See merge request famedly/famedlysdk!667
2021-03-09 18:12:47 +00:00
Krille Fear 57fde98fec Merge branch 'soru/less-sql-statements' into 'main'
chore: Reduce needed database accessess

See merge request famedly/famedlysdk!666
2021-03-09 18:12:40 +00:00
Sorunome 6d171542af
feat: Escape @room in the reply fallback when replying 2021-03-09 18:29:13 +01:00
Sorunome c76dc0daa2
chore: Reduce needed database accessess 2021-03-09 18:28:58 +01: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
Krille Fear 0d8bddf708 Merge branch 'soru/fallback-keys' into 'main'
feat: Add fallback keys support

Closes #136

See merge request famedly/famedlysdk!653
2021-03-03 07:38:32 +00:00
Sorunome 498c7825a5
feat: Add fallback keys support 2021-03-02 16:17:32 +01:00
Christian Pauly 5c35799e18 refactor: Request user 2021-03-01 10:32:04 +01:00
Sorunome 885141968c Merge branch 'krille/refactor-event-update' into 'main'
refactor: Deprecate eventType in EventUpdate

See merge request famedly/famedlysdk!661
2021-02-26 16:11:57 +00:00
Sorunome 5431056c1c Merge branch 'krille/implement-canrequesthistory' into 'main'
feat: Implement can request history calculation

See merge request famedly/famedlysdk!659
2021-02-26 16:09:17 +00:00
Christian Pauly b8659213ae feat: Implement can request history calculation 2021-02-26 13:48:29 +01:00
Christian Pauly c9d3c327f6 refactor: Deprecate eventType in EventUpdate 2021-02-26 13:06:02 +01:00
Christian Pauly 29d0e673e0 fix: Sync error handling 2021-02-24 09:17:41 +01:00
Sorunome e7c8e754a1
chore: Update matrix scheme parsing to match updated MSC 2021-02-23 16:34:43 +01:00
Christian Pauly 72a7bc1637 feat: Implement upload sync filters 2021-02-18 14:03:58 +01:00
Christian Pauly c7f78bdaf5 fix: Dont catch sync errors 2021-02-18 13:01:13 +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
Krille Fear fb5a0bc6a2 Merge branch 'soru/membership-null' into 'main'
fix: Make defaults catch if constructor is null

See merge request famedly/famedlysdk!647
2021-02-13 10:38:49 +00:00
Christian Pauly fc8563849a feat: Custom Exception and return type for Change Homeserver 2021-02-13 09:08:56 +01:00
Sorunome f08dabaf03
fix: Make defaults catch if constructor is null 2021-02-11 12:09:44 +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
Christian Pauly d362d6db23 fix: Request history on limited timeline 2021-02-09 15:02:48 +01:00
Krille Fear 1154bc3606 Merge branch 'soru/replay-to-device' into 'main'
fix: Add to_device queue to prevent olm session corruptions

Closes #141

See merge request famedly/famedlysdk!640
2021-02-09 08:24:21 +00:00
Sorunome d373a06aa2
fix: Add to_device queue to prevent olm session corruptions 2021-02-08 14:57:19 +01:00
Christian Pauly 9faf07e31a refactor: New start direct chat method in client 2021-02-06 10:48:36 +01:00
Christian Pauly bd4c4a6131 chore: Add more bootstrap logging 2021-02-04 15:33:27 +01:00
Krille Fear a492fc8f96 Merge branch 'krille/updateuserdevicekeys' into 'main'
fix: Dont update user device keys if logged out

See merge request famedly/famedlysdk!628
2021-02-03 10:08:31 +00:00
Krille Fear f58da0c33f Merge branch 'krille/invite-direct-chat' into 'main'
chore: Determine invites as direct chats too

Closes app#1110

See merge request famedly/famedlysdk!624
2021-02-03 10:08:24 +00:00
Sorunome 21a5854fbf
fix: Attempt event decryption on fetching replied events 2021-02-02 12:51:43 +01:00
Christian Pauly fefa140758 fix: Dont update user device keys if logged out 2021-01-27 11:15:41 +01:00
Christian Pauly d16c9eaf32 fix: Trailing slash homeserver from wellknown 2021-01-27 09:41:18 +01:00
Christian Pauly 94e3e5f681 chore: Determine invites as direct chats too 2021-01-26 14:04:55 +01:00
Christian Pauly 7b29563caa change: requestHistoryOnLimitedTimeline by default false 2021-01-21 12:17:30 +01:00
Krille Fear c701268d71 feat: Do well known by default in check homeserver 2021-01-20 13:21:51 +00:00
Sorunome a35266f1e4
feat: Replay last sent olm message on olm session recovery from other device 2021-01-20 12:50:52 +01:00
Sorunome 44a1bcfd57
fix: Accidental pills in URLs 2021-01-20 12:02:40 +01:00
Krille Fear 8de72c869a Merge branch 'soru/fix-emotes-msc-compliance' into 'main'
fix: Emotes MSC compliance

See merge request famedly/famedlysdk!619
2021-01-20 09:42:26 +00:00
Sorunome 70a4dad1c3
fix: Emotes MSC compliance 2021-01-20 10:36:06 +01:00
Christian Pauly 4d1134a2db fix: Logout after failed init 2021-01-18 22:44:01 +01:00
Sorunome 4597ea3445 Merge branch 'krille/deprecate-sendername' into 'main'
change: Deprecate senderName

Closes app#1065

See merge request famedly/famedlysdk!615
2021-01-15 14:45:43 +00:00
Christian Pauly 03e17f890e change: Deprecate senderName 2021-01-15 14:24:30 +01:00
Sorunome 9d6005ca2a
fix: Smoothen up sending to rooms with extremely many devices 2021-01-14 18:47:51 +01:00
Sorunome 88f8a57863
fix: Correctly generate reply fallbacks 2021-01-14 13:51:17 +01:00
Krille Fear 347a1ee6e0 Merge branch 'krille/hide-verification' into 'main'
fix: Hide verification timeline events in lastEvent

Closes app#1059

See merge request famedly/famedlysdk!612
2021-01-14 12:21:15 +00:00
Marcus 0346975894 Merge branch 'krille/setunread' into 'main'
change: setUnread locally

Closes app#1045

See merge request famedly/famedlysdk!611
2021-01-13 13:58:19 +00:00
Christian Pauly c94da38438 fix: Hide verification timeline events in lastEvent 2021-01-13 13:30:47 +01:00
Christian Pauly fea4dea6a9 feat: Request history on limited timeline 2021-01-13 08:45:24 +01:00
Christian Pauly 783f734713 change: setUnread locally 2021-01-13 08:41:36 +01:00
Sorunome ef854b3b4c Merge branch 'krille/fix-sort-at-the-end' into 'main'
fix: Sort at the end

Closes app#1037

See merge request famedly/famedlysdk!607
2021-01-12 12:22:21 +00:00
Sorunome fddced2b3a
fix: Properly handle initial device key uploading failures and better handle OTK upload failures 2021-01-12 12:56:23 +01:00
Christian Pauly 00d03e9330 fix: Sort at the end 2021-01-08 13:40:10 +01:00
Christian Pauly 8b13df8c9d refactor: Add json parsing for encryption and encrypted content 2021-01-08 13:26:25 +01:00
Christian Pauly 39b776716c refactor: Olm Exceptions 2021-01-07 12:53:49 +01:00
Sorunome c22615d8cd
fix: Prioritize specced replies over unspecced event aggregations 2021-01-05 15:32:47 +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 cd9f23d6c4
fix: Don't block file decrypting 2020-12-31 20:33:18 +01:00
Sorunome f6589f9596
fix: Properly clear in-memory outbound sessions when clearing cache 2020-12-31 12:58:41 +01:00
Sorunome 08dcce6225
chore: Add more debugging logs 2020-12-30 18:50:40 +01:00
Sorunome add19c73a0
fix: Load multiple olm sessions from the database at once for increased performance 2020-12-30 12:52:54 +01:00
Sorunome 6723c01a31
feat: Lazy-send room keys, chunked and sorted by importance 2020-12-29 14:46:36 +01:00
Sorunome 3ff958de4e
fix: properly handle changed cross-signing keys 2020-12-29 14:37:09 +01:00
Krille Fear 03b9c6e2ee Merge branch 'soru/animated-thumbnail' into 'main'
feat: Add animated property to thumbnails

See merge request famedly/famedlysdk!590
2020-12-29 09:38:47 +00:00
Sorunome 58044be1ba
feat: Add animated property to thumbnails 2020-12-29 10:32:18 +01:00
Christian Pauly 19905e348a fix: Missing null check 2020-12-29 09:44:13 +01:00
Sorunome 68afe362ce
feat: Start megolm sessions while typing 2020-12-28 16:14:07 +01:00
Sorunome ccd03ecd22
fix: Various small e2ee fixes 2020-12-28 14:49:55 +01:00
Sorunome 768baa7602
chore: Implement a proper deep-copy function for json maps 2020-12-28 14:35:21 +01:00
Sorunome c6f718adcc
fix: Sort state events of history requests correctly 2020-12-27 10:55:41 +01:00
Christian Pauly f91349a45e fix: sendTypingNotification 2020-12-27 09:58:14 +01:00
Christian Pauly dacd007780 fix: Clear logs on clear() 2020-12-23 11:32:58 +01:00
Sorunome 48904b3a1b
fix: Cache the result of the self-signature check 2020-12-23 10:52:39 +01:00
Marcus Hoffmann 54fc29f203 clear cache fix 2020-12-22 17:34:50 +01:00
Sorunome 0ed5c44919 Merge branch 'soru/verify-device-signatures' into 'main'
fix: Verify device signatures before storing devices and block those with invalid signatures

See merge request famedly/famedlysdk!578
2020-12-22 09:27:09 +00: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 f5b1c5fc5f
fix: Don't assume a power level of a person is an int 2020-12-22 10:05:44 +01:00
Sorunome b00a9e8834
feat: Better determine which devices to encrypt to 2020-12-21 15:26:46 +01:00
Sorunome df1c249011
feat: Auto-Share megolm sessions with other users we know for a fact are allowed to see said message 2020-12-21 14:41:44 +01:00
Christian Pauly 3d6dbc9dc3 chore: Implement logoutput 2020-12-21 09:35:36 +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
Sorunome d1ce075b5b
feat: Automatically cache storable files on upload 2020-12-17 11:59:31 +01:00
Christian Pauly 3856b618e8 refactor: Encryption errors 2020-12-15 08:24:55 +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
Lukas Lihotzki 88888a43f1 feat: set presence in sync 2020-12-09 16:02:42 +01:00
Christian Pauly f7768af44e fix: Clear init lock on failed init 2020-12-07 09:51:25 +00:00
Christian Pauly 5167e92913 feat: Update room api 2020-12-04 12:23:40 +01:00
Christian Pauly bec1761172 refactor: content parsing 2020-11-30 15:34:46 +01:00
Christian Pauly 323b203718 refactor: algorithm types 2020-11-30 14:26:31 +01:00
Marcus Hoffmann 2e3a2d38c0 fix: mark read wasn't sending read receipts 2020-11-26 01:58:49 +01:00
Christian Pauly 20ae1ae20e fix: Push Rule getter 2020-11-25 20:16:42 +01:00
Sorunome bed7de81c7
fix: Wrong emote pack identifier 2020-11-25 15:17:22 +01:00
Marcus Hoffmann 9b3f9e4ef7 feature: allow marking rooms as unread 2020-11-25 12:03:19 +01:00
Christian Pauly 9181701df0 fix: Display stateKey when changing displayname 2020-11-23 17:35:50 +01:00
Christian Pauly ab8eb71fee fix: Unban 2020-11-22 21:05:34 +01:00
Christian Pauly 411d29cc89 feat: Implement room tombstones 2020-11-21 15:28:05 +01:00
Christian Pauly 0697d47cc2 refactor: Minor init refactoring 2020-11-19 17:02:07 +01:00
Sorunome b67ab870fa
fix: Use Uri.tryParse where applicable 2020-11-19 15:20:27 +01:00
Sorunome b1709ca8c3
feat: More advanced attchment handling methods 2020-11-18 14:56:14 +01:00
Christian Pauly 1e14cd3ff0 fix: Hotfix request archive 2020-11-09 19:09:38 +01:00
Christian Pauly ac4cded10f feat: Implement UIA for login 2020-11-09 17:48:27 +01:00
Sorunome b0043ea0e4
fix: Pick right DM room, if multiple are set 2020-11-08 19:30:28 +01:00
Sorunome 588d7eb1a6
fix: Set new state events by sortOrder, rather than originServerTs 2020-11-08 15:13:02 +01:00
Sorunome c509144987
fix: Fetching history sometimes re-sorting events in the timeline 2020-11-08 14:54:19 +01:00
Sorunome 66572bd032
feat: Check if event type is known 2020-11-08 13:52:10 +01:00
Sorunome 5aec7aab32
fix: Properly handle redacted events in event.getDisplayEvent 2020-11-07 11:40:47 +01:00
Sorunome 33b1e36efd
fix: Timeline history requests causing "scrolling" and sometimes ordering things wrong 2020-11-07 11:32:51 +01:00
Christian Pauly 793d398d72 fix: Automatic leave broken invites 2020-11-06 09:43:48 +01:00
Christian Pauly cbae6b9c84 fix: Better handling leave broken room on join 2020-11-05 14:03:58 +01:00
Christian Pauly 388598ef67 fix: Join broken room handling 2020-11-05 13:43:36 +01:00
Sorunome 15d817023d
feat: Decrypt events on megolm key receiving better 2020-10-31 12:08:49 +01:00
Sorunome 5924e57cf1
feat: Add broadcast to-device verification 2020-10-30 11:40:19 +01:00
Christian Pauly f9f18641e3 refactor: Connection error handling 2020-10-29 10:42:05 +01:00
Christian Pauly 5381c3935c refactor: Check server 2020-10-26 08:33:25 +00:00
Sorunome 343c26b3ed fix: Decrypt last message on received megolm key 2020-10-26 07:49:02 +00: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 d116a52ea9
fix: Better handle olm session recovery 2020-10-17 12:03:54 +02:00
Christian Pauly 8908f33393 fix: Logout from outside 2020-10-15 09:17:28 +02:00
Sorunome 01bb3f5b50
fix: Make key backup work in web 2020-10-14 12:18:20 +02:00
Sorunome 2e941b85e9 fix: Delete files older than 30 days 2020-10-08 13:02:20 +00:00
Christian Pauly 0761d33b6f refactor: Database first to single 2020-10-08 12:48:56 +00:00
Sorunome c571fe4dd5 fix: don't assume msgtype is a string 2020-10-08 12:29:59 +00:00
Sorunome 74bd1d331b
fix: Messages being encrypted for too many devices 2020-10-04 14:20:17 +02:00
Sorunome ae79af6ea8
fix: store timestamps in milliseconds to fix decrypt error 2020-10-04 12:12:03 +02:00
Christian Pauly 84cc925b08 fix: Mimetype null 2020-09-28 12:43:23 +02:00
Sorunome 877ff9963c
fix: Don't sort rooms too often 2020-09-27 10:54:54 +02:00
Sorunome b6754fbc46
chore: update emote stuff 2020-09-24 15:59:46 +02:00
Christian Pauly 5019ebfeb5 feat: Auto retry send events 2020-09-21 16:51:40 +00:00
Christian Pauly adb907bbc4 fix: Clear on logout 2020-09-21 16:31:28 +00:00
Sorunome 86a4f90a5a
fix: Run automated key requests in root zone 2020-09-21 18:11:14 +02:00
Sorunome 0ff971faa9
fix: Obay variant selectors for emoji regex 2020-09-21 08:45:12 +02:00
Sorunome d42979da12
fix: Emoji regex incorrectly using multiline 2020-09-20 19:09:32 +02:00
Sorunome ba7a01ddea
fix: emoji regex typo 2020-09-20 11:24:56 +02:00
Christian Pauly 864cbfa906 fix: Hotfix ignored user list 2020-09-20 10:37:36 +02:00
Christian Pauly 510de05304 fix: ignore list 2020-09-19 15:05:43 +02:00
Christian Pauly a77e776479 feat: Implement ignore list 2020-09-19 12:39:19 +02:00
Sorunome 3187275ed7
fix: Don't query /members over and over 2020-09-18 12:41:26 +02:00
Sorunome 024a27bfc2
fix: Back off of failed key queries 2020-09-18 10:24:14 +02:00
Sorunome 053585852e
Merge branch 'send-location' of gitlab.com:JohnAZoidberg/famedlysdk into main 2020-09-18 09:43:10 +02:00
Christian Pauly bc8fef4a94 fix: Remove pubspec.lock from repo 2020-09-16 14:41:09 +02:00
Christian Pauly b05e4da34f fix: Last event calculation 2020-09-16 10:23:37 +02:00
Sorunome d9c4472cac
feat: Add emote helpers 2020-09-15 19:03:55 +02:00
Sorunome c90e18b55d
fix: Handle domains with port or ipv6 addresses correctly 2020-09-15 12:40:29 +02:00
Sorunome b5ac500136
fix: Handle failed to send messages in low network significantly better 2020-09-10 13:19:58 +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 e08f35b5d0
fix: Don't trust the info block of events 2020-09-10 11:12:52 +02:00
Christian Pauly 5d45c224a3 fix: Mark pending events as failed on startup 2020-09-10 10:01:44 +02:00
Sorunome aa9940fdbc
fix: Room.requestUser sometimes throws an error 2020-09-10 09:37:56 +02:00
Sorunome 99d536b14f
feature: Upload to online key backup 2020-09-09 09:53:26 +02:00
Christian Pauly 8899f4c677 fix: Remove logs in event constructor trycatch 2020-09-08 09:19:26 +00:00
Sorunome f7e63097b4 chore: Update emotes to match MSC 2020-09-07 09:34:14 +00:00
Christian Pauly 8a0cc70cfe fix: prev content error log in web 2020-09-07 11:16:52 +02:00
Lukas Lihotzki e6d96ad8ed feat(sync): configurable sync 2020-09-07 11:03:24 +02:00
Sorunome 54a128d2c5
fix: Properly detect sicket message types 2020-09-06 15:40:12 +02:00
Sorunome 089ce88b57
chore: Add tests to Event.downloadAndDecryptAttachment 2020-09-04 11:00:56 +02:00
Christian Pauly e90793bef1 fix: Last message sort order 2020-09-04 09:48:35 +02:00
Christian Pauly 9142dcbeec fix: Database error handling 2020-08-26 09:40:30 +02:00
Christian Pauly 6fbee4ee05 test: Integrate E2EE tests 2020-08-25 13:19:57 +00:00
Christian Pauly 35e48f9641 Fix: prev_content error message 2020-08-25 09:40:30 +00:00
Christian Pauly c46f4ba066 refactor: timeline 2020-08-22 07:10:46 +00:00
Lukas Lihotzki d6b97b8e78 feat: safe dispose while _sync 2020-08-21 17:20:26 +02:00
Christian Pauly 09ffa09404 Ignore old webrtc invites 2020-08-19 07:20:16 +00:00
Christian Pauly 0d159c2db4 Fix: Send messages in web delay 2020-08-19 09:08:30 +02:00
Sorunome 631b28eab2
fix: Migrations don't fail anymore if they were partly completed 2020-08-18 14:00:42 +02:00
Christian Pauly 84c27129d2 Hotfix: Send correct message type 2020-08-17 16:29:29 +02:00
Sorunome ea59c4bd94
refactor(keybackup): Update database for stored megolm keys to prepare for proper online key backup 2020-08-17 09:10:51 +02:00
Sorunome 20d72eb8d7
fix: Event statuses progress and are saved correctly 2020-08-17 08:54:16 +02:00
Christian Pauly cbc66ea308 Fix unencrypted calls 2020-08-17 08:46:04 +02:00
Christian Pauly 50d97ebeb2 Fix unencrypted call events 2020-08-15 16:05:11 +02:00
Christian Pauly 215563ab92 Fix wrong call types 2020-08-15 15:17:17 +02:00
Christian Pauly a288216e03 Add call state localizations 2020-08-15 14:46:08 +02:00
Christian Pauly 61b32e0bd9 Hotfix client 2020-08-14 18:22:31 +02:00
Sorunome 3d2476cfdb fix: Have matrix id string extension obay the proper grammar 2020-08-13 09:03:44 +00:00
MTRNord 26586b6f02
style: Change package:famedlysdk imports to relative imports
Changing the imports from `package:famedlysdk` to relative imports allows us to easier move the files

Took 2 minutes
2020-08-13 10:40:39 +02:00
Christian Pauly fb9b505988 Krille/make client extend matrixapi 2020-08-11 16:11:51 +00:00
Sorunome 574fe27101
feat: Add Event.getDisplayEvent, which fetches an event based on all edits etc. 2020-08-11 13:44:42 +02:00
Christian Pauly 6170c79fe1 Improve logging 2020-08-06 09:35:02 +00:00
Christian Pauly 6779ab6624 Deprecate debug mode 2020-08-06 07:09:32 +00:00
Sorunome 2796ca613a Fix resending messages reusing an existing transaction id 2020-08-06 06:51:06 +00:00
Daniel Schaefer ede4fd1416 Implement function to send m.location event
Allows to share the location with a room.
2020-08-05 23:01:03 +02:00
Christian Pauly bbd5749aec Fix storing of event status 2020-08-05 05:57:10 +00:00
Christian Pauly a11a0b5925 Add example 2020-08-05 05:57:02 +00:00
Sorunome e1fa4983d0 try...catch fetching all encrypted devices, in case we aren't in a room 2020-08-04 09:17:52 +00:00
Christian Pauly fe700b229c Fix prev_content bug 2020-08-04 08:26:33 +00:00
Christian Pauly d4a7345b8a Enable transactions again to fix web 2020-08-03 13:28:30 +00:00
Christian Pauly 938540eca5 Detect the file message type 2020-08-01 13:04:03 +00:00
Christian Pauly dc1ed0c6e2 Use SyncUpdate for pending messages 2020-07-30 08:48:47 +00:00
Sorunome 69431a1aff
some key verification fixes and temporarily disable transactions 2020-07-30 09:57:45 +02:00
Christian Pauly a28ab5fc60 Merge branch 'soru/remove-trailing-slash' into 'master'
Remove trailing slash in checkServer

Closes ChristianPauly/fluffychat-flutter#130

See merge request famedly/famedlysdk!400
2020-07-27 07:40:25 +00:00
Sorunome 6696a8b3ca Remove trailing slash in checkServer 2020-07-27 07:40:25 +00:00
Sorunome f48f6bca12 Properly imlement event aggregations 2020-07-27 07:39:48 +00:00
Sorunome 31614364d3 add update filters 2020-07-25 14:46:36 +00:00
Sorunome 6cd745bd1a
Add data-mx-emote to emotes 2020-07-24 17:59:39 +02:00
Sorunome 84a94f5c9d
format 2020-07-24 15:44:55 +02:00
Sorunome d4818bd677
forgot to ctrl+s 2020-07-24 15:37:40 +02:00
Sorunome ff2de35d28
test web 2020-07-24 14:53:06 +02:00
Sorunome c68487ac21 fix issue with sending messages 2020-07-23 08:09:00 +00:00
Sorunome a46942a140 Merge branch 'soru/fix-members-requests' into 'master'
try to load members from database first and cache them in-memory

Closes app#596

See merge request famedly/famedlysdk!382
2020-07-21 08:05:48 +00:00
Christian Pauly 4f2a8febf9 Fix request history 2020-07-21 07:34:30 +00:00
Marcel 3c0fbf784f [Requests] Add try_catch for utf8 decoding because dart really seems to have issues with json encoding and decoding. (also use camelCase)
Took 18 minutes
2020-07-20 13:43:55 +02:00
Marcel 9f6bd740ca [Requests] Make sure to not use the latin1 version of the json but instead convert the bytes to utf8 as required by various RFCs.
Took 14 minutes
2020-07-20 13:19:57 +02:00
Sorunome 0ece2717e0
Merge branch 'master' into soru/fix-members-requests 2020-07-20 11:53:55 +02:00
Christian Pauly b8f80c7071 Fix room sorting 2020-07-20 07:46:46 +00:00
Christian Pauly 811c00c350 Merge branch 'soru/use-prev-content-username-fallback' into 'master'
use prev_content to calculate displayname and avatar_url, if content unavailable

See merge request famedly/famedlysdk!386
2020-07-20 06:33:03 +00:00
Sorunome 175cb0fbd2
add Databse.connect to be able to run in isaltes 2020-07-17 13:20:23 +02:00
Sorunome 864151ec83
use prev_content to calculate displayname and avatar_url, if content unavailable 2020-07-17 12:02:43 +02:00
Sorunome 4394196ba1
try to load members from database first and cache them in-memory 2020-07-14 11:30:13 +02:00
Sorunome 79ea85bf4d
indexes are already created when creating a talbe 2020-07-14 10:43:21 +02:00
Christian Pauly c87450dafb Remove deprecated contactlist method 2020-07-02 10:41:23 +00:00
Sorunome ac720df3d2 Merge branch 'soru/performance' into 'master'
Greatly imporve initial loading performance

See merge request famedly/famedlysdk!377
2020-07-02 08:55:31 +00:00
Sorunome 7351319f28
address things 2020-07-02 10:32:11 +02:00
Sorunome 8f122195c5
re-work state lazy loading after discussion 2020-07-01 11:09:31 +02:00
Christian Pauly ad098aa246 Merge branch 'krille/catch-all-sync-errors' into 'master'
Catch all sync errors

See merge request famedly/famedlysdk!374
2020-06-30 14:47:40 +00:00
Sorunome b7b369923f
only lazy-load m.room.member, not store presence 2020-06-30 13:41:52 +02:00
Sorunome 2e3d8205b1
analyze and format 2020-06-30 12:21:03 +02:00
Sorunome a1f8120c59
Greatly imporve initial loading performance 2020-06-30 12:17:56 +02:00
Sorunome dbfaf7fa72
hide red herring sync errors 2020-06-29 15:27:14 +02:00
Christian Pauly 2f32791117 Catch all sync errors 2020-06-29 14:09:40 +02:00
Christian Pauly 4790925929 Merge branch 'soru/no-contains-key' into 'master'
Better validate event contents

See merge request famedly/famedlysdk!353
2020-06-29 12:02:18 +00:00
Sorunome fd406987c1 Better validate event contents 2020-06-29 12:02:18 +00:00
Christian Pauly 0ac7aec071 Merge branch 'matrixfile-refactor-all' into 'master'
MatrixFile refactoring for thumbnails

See merge request famedly/famedlysdk!371
2020-06-29 12:00:26 +00:00
Lukas Lihotzki 842581699c MatrixFile refactoring for thumbnails 2020-06-29 12:00:26 +00:00
Christian Pauly 7e9c8f88f3 Implement calcDisplayname without local part 2020-06-29 08:40:16 +00:00
Sorunome 163cbdb923
Hotfix: account_data stored incorrectly in the database 2020-06-26 18:46:54 +02:00
Lukas Lihotzki 58dcedb883 Use mime instead of mime_type 2020-06-25 17:35:46 +02:00
Sorunome 62f63ebf1f Merge branch 'soru/olm-session-recovery' into 'master'
Adds olm session recovery

See merge request famedly/famedlysdk!355
2020-06-25 08:01:37 +00:00
Sorunome 35ba666c0a Merge branch 'krille/fix-sorting-again' into 'master'
Fix sorting again and again god damn

See merge request famedly/famedlysdk!365
2020-06-25 07:57:16 +00:00
Sorunome 5dda0c3623 Merge branch 'soru/cross-signing' into 'master'
Cross-Signing

See merge request famedly/famedlysdk!319
2020-06-25 07:53:30 +00:00
Christian Pauly 34425b035f Fix sorting again and again god damn 2020-06-25 09:51:24 +02:00
Christian Pauly c536af32f5 Fix wrong type for sort 2020-06-25 09:36:28 +02:00
Christian Pauly 2b393ff193 Sort invites on top 2020-06-25 09:27:01 +02:00
Christian Pauly 52e57f8dc2 Minor refactoring 2020-06-25 07:16:59 +00:00
Christian Pauly 6846b7d5c6 Use timestamp as sort order 2020-06-25 09:04:26 +02:00
Christian Pauly e6cf5cb927 Fix direct chats 2020-06-25 06:59:03 +00:00
Christian Pauly 13b3c0df4d Add room tag support 2020-06-24 09:22:08 +00:00
Christian Pauly 2afd0bb3a8 Implement pinned events 2020-06-24 08:41:52 +00:00
Sorunome 68fac1e112
pick the correct session when encrypting to_device events 2020-06-24 09:27:32 +02:00
Sorunome f79a85ca71
Merge branch 'master' into soru/cross-signing 2020-06-24 09:26:22 +02:00
Sorunome 1a9f6e38dc
add database.getRoom 2020-06-23 13:35:22 +02:00
Sorunome 3d40a8d81b
remove transaction hack 2020-06-22 17:27:06 +02:00
Christian Pauly aea86aaf10 Merge branch 'soru/direct-chats' into 'master'
potentially fix direct chats going missing

Closes ChristianPauly/fluffychat-flutter#86

See merge request famedly/famedlysdk!346
2020-06-22 06:48:30 +00:00
Sorunome 2999ceec9e potentially fix direct chats going missing 2020-06-22 06:48:30 +00:00
Sorunome dbcdb6883d
better set verified 2020-06-21 21:48:06 +02:00
Sorunome 18f8d0db63
add deviceDisplayName 2020-06-21 21:38:26 +02:00
Sorunome 22d8225f46 Merge branch 'krille/fix-sending-sort-order' into 'master'
Fix sending sort order

See merge request famedly/famedlysdk!350
2020-06-20 19:50:49 +00:00
Sorunome d8cb53e32f Merge branch 'krille/fix-send-again' into 'master'
Fix send again

See merge request famedly/famedlysdk!351
2020-06-20 19:50:08 +00:00
Christian Pauly f1579a5f0f Database transaction workaround 2020-06-19 15:28:03 +02:00
Christian Pauly ee2974e51e Fix send again 2020-06-19 14:05:53 +02:00
Christian Pauly 9f8d170dd4 Fix sending sort order 2020-06-19 14:00:32 +02:00
Sorunome 12bdddee03
Better format switching to WAL mode 2020-06-16 14:26:37 +02:00
Sorunome b1ec508666
Merge branch 'master' into soru/cross-signing 2020-06-16 12:58:30 +02:00
Sorunome 77378e3ebc
switch database to wal mode 2020-06-16 12:51:29 +02:00
Sorunome 0e0fd61c65
remove unneded print 2020-06-15 10:27:28 +02:00
Sorunome e874a5e00b
add signature verification tests 2020-06-15 10:26:50 +02:00
Sorunome ef0a567401
finish ssss tests 2020-06-13 19:12:32 +02:00
Sorunome 6a36bb2d01
fix pipeline 2020-06-12 16:25:26 +02:00
Sorunome 5334266529
Merge branch 'master' into soru/cross-signing 2020-06-10 16:25:08 +02:00
Sorunome f485ca29d8 Fix state attack 2020-06-10 14:17:57 +00:00
Sorunome f261f35712
Merge branch 'master' into soru/cross-signing 2020-06-10 11:33:24 +02:00
Sorunome 7ddb6be30e
Allow requesting and updating of session keys with lower index and lower forwarded chain 2020-06-10 10:44:22 +02:00
Sorunome 6d49b4def3
Merge branch 'master' into soru/cross-signing 2020-06-09 20:24:22 +02:00
Sorunome b8c58faaab Merge branch 'soru/modularize-e2ee' into 'master'
split encryption stuff to other library

See merge request famedly/famedlysdk!333
2020-06-09 16:13:23 +00:00
Sorunome 1fdd0a7db8
aslo clear ssss cache when clearing a user id 2020-06-06 15:48:57 +02:00
Sorunome 51584ad748
fix signature upload 2020-06-06 15:43:18 +02:00
Sorunome 45232be3a0
simplify key signing a tad 2020-06-06 15:19:44 +02:00
Sorunome b4e83caa89
requestify cross-signing endpoints 2020-06-06 15:17:05 +02:00
Sorunome e1679d59be
better smoothen out keys 2020-06-06 14:28:18 +02:00
Sorunome 4154c7d0eb
format and some analyze 2020-06-06 13:47:37 +02:00
Sorunome 115cd9e5b3
better cache invalidation of ssss cache 2020-06-05 22:22:07 +02:00
Sorunome 4c60369b8d
migrate to new thingy! 2020-06-05 22:03:28 +02:00
Sorunome d29fb9abfe
Merge branch 'soru/modularize-e2ee' into soru/cross-signing 2020-06-05 18:59:58 +02:00
Sorunome 7ed6dcce67
fix canonical alias sometimes being null 2020-06-05 17:12:50 +02:00
Sorunome f3f3231df6
add some encrypt / decrypt tests 2020-06-04 17:51:49 +02:00
Sorunome fcde6a2459
split encryption stuff to other library 2020-06-04 13:39:51 +02:00
Christian Pauly c6bf098644 Init matrix_api library 2020-06-03 10:16:01 +00:00
Christian Pauly bd00c066c8 Catch sync errors 2020-06-01 18:24:41 +00:00
Sorunome 03beffbb46
also load session keys when requesting history 2020-05-30 14:09:47 +02:00
Sorunome 9971e7377e
configurable verification methods 2020-05-30 13:55:09 +02:00
Sorunome d7f2bbe2f9
smoothen out some stuffs 2020-05-30 13:22:34 +02:00
Sorunome 44e4b07999
remove obsolete comments 2020-05-30 13:19:39 +02:00
Sorunome 41a08d4c28
additional validation of received secrets 2020-05-30 13:13:42 +02:00
Sorunome a7bb8375dc
fetch from online key backup 2020-05-29 10:21:36 +02:00
Sorunome 15be6c5244
stuff and things 2020-05-29 09:06:36 +02:00
Sorunome c65b5948fc
Merge branch 'master' into soru/cross-signing 2020-05-29 08:54:33 +02:00
Sorunome 72fdb68e82
some fixes 2020-05-29 08:49:52 +02:00
Sorunome d672edf394 Make room key sharing requests (hopefully) more robust and spec-compliant 2020-05-29 06:49:37 +00:00
Sorunome 6e21cff0a7
fix error thingy 2020-05-27 21:49:49 +02:00
Sorunome c779d39818
fix small stuffs 2020-05-27 21:40:58 +02:00
Sorunome dda0b17724
in-room verification to verify users instead of devices 2020-05-27 21:35:00 +02:00
Sorunome aefe029c0a
add ability to sign yourself based on ssss 2020-05-27 18:50:09 +02:00
Sorunome e4e4386178
signed vs verified logic 2020-05-27 17:37:14 +02:00
Sorunome 8d75c2a0af
format 2020-05-27 10:33:42 +02:00
Sorunome f78657957a
fix emotes if canonical alias is null 2020-05-27 10:33:22 +02:00
Sorunome fabffea1cd
verification status by user, sign manually verified keys 2020-05-27 10:13:22 +02:00
Sorunome 1c9da050c0
smoothen out verification and signature uploading 2020-05-26 15:58:14 +02:00
Sorunome c23e38a9c9
Merge branch 'master' into soru/cross-signing 2020-05-26 10:00:59 +02:00
Sorunome 2ecf4151b9
also send master key on verification and stuffs 2020-05-26 09:54:46 +02:00
Christian Pauly ad5b02e0ef Merge branch 'soru/fix-profile-check' into 'master'
Fixes profile equality check

See merge request famedly/famedlysdk!327
2020-05-26 06:40:13 +00:00
Sorunome 8a289941eb Fixes profile equality check 2020-05-26 06:40:13 +00:00
Christian Pauly 3fa4d46983 Merge branch 'soru/fix-chat-list-last-message' into 'master'
Hopefully fix room list sorting

Closes #75

See merge request famedly/famedlysdk!324
2020-05-26 06:39:51 +00:00
Sorunome 011e427056 Hopefully fix room list sorting 2020-05-26 06:39:51 +00:00
Sorunome 80c7125d1d
remove silly workaround for aes-ctr encrypt/decrypt 2020-05-25 17:55:49 +02:00
Sorunome adc5591e54
add ed25519: 2020-05-25 15:58:37 +02:00
Sorunome c13f66c85f
in theory sign others keys 2020-05-25 15:30:53 +02:00
Sorunome 97a10c7de1
Merge branch 'master' into soru/cross-signing 2020-05-25 13:22:13 +02:00
Christian Pauly cbf5069e32 Add more tests 2020-05-25 09:34:43 +00:00
Christian Pauly f7b29f3703 Ignore key requests from unknown devices 2020-05-25 07:31:17 +00:00
Sorunome 5fde85cbfa
format 2020-05-23 17:05:55 +02:00
Sorunome 280cd4fc16
first SSSS stuff 2020-05-23 17:04:27 +02:00
Christian Pauly c01f75bafa Add olm error stream 2020-05-22 15:51:45 +02:00
Sorunome 1a8ddb2750
fixes 2020-05-22 13:22:28 +02:00
Sorunome c9a0c5302a
format 2020-05-22 13:18:45 +02:00
Sorunome 29721f00a8
Merge branch 'master' into soru/cross-signing 2020-05-22 13:18:36 +02:00
Sorunome 384e5962d6 properly persist decryption of events 2020-05-22 11:15:48 +00:00
Christian Pauly 27b4a620e5 Add code formatting CI job 2020-05-22 10:12:18 +00:00
Sorunome 74361fff0e
don't cache via db and properly handle invalid signatures 2020-05-22 11:04:27 +02:00
Christian Pauly f4a5ccdaa9 Merge branch 'soru/more-emotes' into 'master'
add emote rooms and state key room emotes

See merge request famedly/famedlysdk!318
2020-05-21 15:01:10 +00:00
Sorunome 97ef716be8 add emote rooms and state key room emotes 2020-05-21 15:01:10 +00:00
Sorunome 788353120b
accidental inifnite recursion 2020-05-21 16:55:30 +02:00
Sorunome 10372a9dbe
verified devices are not blocked 2020-05-21 16:52:25 +02:00
Sorunome fc8625d30e clear timeline events cache on limited updates 2020-05-21 14:52:14 +00:00
Sorunome eaefdb64ca
make that cleints can only use "verified" 2020-05-21 16:51:15 +02:00
Sorunome ead44e4014
fix tests and stuffs 2020-05-21 15:32:06 +02:00
Sorunome af961b99dc
get device verification status based on cross signing 2020-05-21 15:20:33 +02:00
Christian Pauly 998ee66650 Merge branch 'soru/null-device' into 'master'
make sure keys are valid

See merge request famedly/famedlysdk!313
2020-05-21 06:28:21 +00:00
Christian Pauly 9fad348d22 Merge branch 'soru/persist-inbound-session-index' into 'master'
properly persist inbound group session indexes

See merge request famedly/famedlysdk!316
2020-05-21 06:25:57 +00:00
Sorunome 7a41f4726f
properly persist inbound group session indexes 2020-05-20 10:36:05 +02:00
Sorunome a3fc73dfc1
make e2ee recovery logic optional 2020-05-20 10:24:48 +02:00
Sorunome 0fabed9cc3
make sure keys are valid 2020-05-20 09:37:32 +02:00
Christian Pauly 11d788b68f Merge branch 'soru/auto-request-room-keys' into 'master'
Automatically request for keys from other devices, if not found

See merge request famedly/famedlysdk!308
2020-05-19 09:34:13 +00:00
Sorunome 9b67992a3a Automatically request for keys from other devices, if not found 2020-05-19 09:34:11 +00:00
Sorunome b2e5ad0880
fix notification count 2020-05-19 10:15:23 +02:00
Sorunome a613c84e27 Merge branch 'soru/async-sync-processing' into 'master'
decrypt events in sync loop, making it async

See merge request famedly/famedlysdk!310
2020-05-19 08:14:46 +00:00
Sorunome f734788eda Merge branch 'soru/rotate-outbound-sessions' into 'master'
Add rotation of outbound group sessions

See merge request famedly/famedlysdk!309
2020-05-19 08:11:19 +00:00
Christian Pauly b9d041d005 close database konditional 2020-05-19 08:05:17 +00:00
Sorunome 867b9c9123
forgot to hit ctrl+s *shame* 2020-05-19 09:58:59 +02:00
Sorunome c5e4e2c751
decrypt events in sync loop, making it async 2020-05-19 09:49:37 +02:00
Sorunome a0fe8f4bad
Add rotation of outbound group sessions 2020-05-18 18:33:16 +02:00
Sorunome 09da5fa4ca
automatically clear an outbound session, if you are unable to decrypt your own messages 2020-05-18 17:31:40 +02:00
Sorunome edaaa286e3
fix decryption of some events throwing an error 2020-05-18 16:45:53 +02:00
Christian Pauly 5166dd8d51 dispose client 2020-05-18 14:01:14 +00:00
Christian Pauly a27c93e7a8 Merge branch 'krille/add-profile-cache' into 'master'
Add profile cache

Closes #65

See merge request famedly/famedlysdk!302
2020-05-18 11:45:49 +00:00
Christian Pauly a6c7d88f00 Add profile cache 2020-05-18 11:45:49 +00:00
Christian Pauly e50f6cc6c0 Merge branch 'soru/fix-last-event' into 'master'
fix lastEvent

See merge request famedly/famedlysdk!301
2020-05-18 11:42:38 +00:00
Sorunome 11a83725d1 Merge branch 'soru/emoji-verification' into 'master'
implement SAS, which is needed for emoji verification

See merge request famedly/famedlysdk!300
2020-05-18 10:57:54 +00:00
Sorunome 2615cd2727
fix lastEvent 2020-05-18 12:56:24 +02:00
Sorunome 2b8f4b0d19
remove print statement for good 2020-05-18 12:39:03 +02:00
Sorunome 50889f9f30
flutter analyze 2020-05-18 11:45:51 +02:00
Sorunome a4c693558d
generalize verification methods 2020-05-18 11:44:23 +02:00
Sorunome e87053b4f1
forgot to add 1000 to the numbers 2020-05-17 15:32:06 +02:00
Sorunome 0219a42c07
implement SAS 2020-05-17 15:25:42 +02:00
Christian Pauly f560a43669 Store incoming keys in dummy room if not found 2020-05-17 08:16:04 +00:00
Christian Pauly 81b9d79518 Merge branch 'soru/fix-lazy-session-keys' into 'master'
lazy-load group session keys

See merge request famedly/famedlysdk!293
2020-05-17 07:54:34 +00:00
Sorunome 06b601c41b lazy-load group session keys 2020-05-17 07:54:34 +00:00
Sorunome 77bfd9b19d
fix logged state on connect() 2020-05-16 10:03:59 +02:00
Christian Pauly e66a904ee0 Add tombstone enum 2020-05-16 09:47:19 +02:00
Christian Pauly 1e4f356280 Krille/implement well known 2020-05-16 06:42:56 +00:00
Christian Pauly e8436198bb Merge branch 'soru/emote-packs' into 'master'
change emote packs slightly

See merge request famedly/famedlysdk!295
2020-05-15 19:11:30 +00:00
Sorunome d6e9131b12
change emote packs slightly 2020-05-15 21:05:28 +02:00
Sorunome 9d1c7f16a5
add pill parsing to markdown 2020-05-15 21:00:10 +02:00
Christian Pauly 98d2f8d6bb Merge branch 'soru/moor' into 'master'
Switch to moor

Closes #52

See merge request famedly/famedlysdk!284
2020-05-15 18:40:17 +00:00
Sorunome f71826739c Switch to moor 2020-05-15 18:40:17 +00:00
Sorunome 39637b6c91
fix emote messages (/me) 2020-05-15 18:44:59 +02:00
Christian Pauly 7485637340 Update lib/src/room.dart 2020-05-14 07:21:52 +00:00
Christian Pauly eada53b15f Update lib/src/room.dart 2020-05-14 07:06:18 +00:00
Christian Pauly 7d0c45e3ae Update lib/src/utils/pusher.dart 2020-05-12 11:19:26 +00:00
Christian Pauly 4253f0ce9a Implement getPushers 2020-05-12 13:03:02 +02:00
Sorunome 2352eb406a add markdown parsing 2020-05-09 14:00:46 +00:00
Christian Pauly 9944844cc3 Implement localized String represantions 2020-05-06 10:13:30 +00:00
Christian Pauly fae6661b04 Fix downloadanddecrypt 2020-05-05 09:07:09 +02:00
Christian Pauly c22090a68d Fix blurry thumbnails 2020-05-04 14:03:07 +00:00
Christian Pauly 07badfc9a9 Update lib/src/room.dart 2020-05-04 08:38:12 +00:00
Christian Pauly 06f650cf57 Fix thumbnail quality and update e2ee 2020-05-04 09:33:10 +02:00
Christian Pauly 2064f53c34 Fix thumbnail scaling 2020-05-04 09:22:44 +02:00
Christian Pauly 0e3fabcef3 Make thumbnail width height and quality configurable 2020-05-04 08:59:05 +02:00
Christian Pauly f65ef4cdcf Make thumbnailsize configurable 2020-05-04 08:46:53 +02:00
Christian Pauly 6f9a52bb5a Fix clear rooms 2020-05-04 08:19:15 +02:00
Marcel 811589a895 [Room] Send correct filter on the messages endpoint
Took 6 minutes
2020-05-02 05:02:11 +00:00
Christian Pauly 4405e933dd Add change password feature 2020-04-28 16:23:01 +02:00
Christian Pauly 28a6ffaf24 Make MAX_FILE_SIZE overrideable and reduce to 1mb 2020-04-28 11:55:36 +00:00
Christian Pauly e3ced175de Fix profile uri parse 2020-04-28 11:36:20 +00:00
Christian Pauly 6f5ebe4681 [MxContent] Switch to Uri Extension 2020-04-24 09:24:06 +02:00
Christian Pauly 0e61885821 [User] Format displayname 2020-04-23 09:46:10 +00:00
Christian Pauly 7ce5002237 [MatrixFile] Fix thumbnail encoding 2020-04-23 08:18:33 +00:00
Christian Pauly 69b13bb24d [Room] Fix relates to key while encryption 2020-04-20 10:56:36 +00:00
Christian Pauly 757f61d890 [Thumbnail] Fix info size 2020-04-17 16:51:01 +02:00
Christian Pauly 81c12c81f2 [Client] Implement thumbnails 2020-04-17 14:11:13 +00:00
Christian Pauly 99b99e7ac9 [Client] Allow r0.6.0 to connect 2020-04-09 13:28:41 +00:00
Christian Pauly 7c7a0f15e5 [Client] Remove lazyloadingcheck 2020-04-02 11:29:07 +00:00
Christian Pauly 066dcbf395 [Room] Fix restore session 2020-04-02 08:39:00 +00:00
Christian Pauly aba692ba81 [Event] Fix download 2020-03-31 17:47:19 +02:00
Christian Pauly 0dcc818365 [RoomKeyRequest] Fix forwardKey 2020-03-31 17:18:37 +02:00
Christian Pauly 5f140a62ad [RoomKeyRequest] Fix index 2020-03-31 16:30:00 +02:00
Christian Pauly e098318a3f [Event] Fix send request cancellation 2020-03-31 12:24:53 +02:00
Christian Pauly 82affbc14f [Room] Improved sendFileEvent 2020-03-30 11:59:24 +02:00
Christian Pauly a3c5add79e [SDK] Refactoring with new linter rules 2020-03-30 09:08:38 +00:00
Christian Pauly 887694bbf0 [Client] Fix publish keys 2020-03-26 14:15:08 +01:00
Christian Pauly 1abda1fa13 [Client] Fix mark keys as published 2020-03-26 14:02:07 +01:00
Christian Pauly a2d9bbfc9e [MatrixIdStringExtension] Add null check 2020-03-25 13:56:49 +01:00
Christian Pauly c160a7c9ca [Room] Ignore errors on requestUser 2020-03-25 13:09:42 +01:00
Christian Pauly 44993f3506 [Client] Fix timeout exception 2020-03-25 11:03:47 +01:00
Christian Pauly 69ee4ffd08 [Client] Send request cancellation unencrypted 2020-03-24 09:13:39 +01:00
Christian Pauly bcb12d8a4b [Client] Add global push mute method 2020-03-23 11:47:55 +01:00
Christian Pauly 2c1caf9072 [Client] Enable file encryption 2020-03-23 09:37:51 +00:00
Christian Pauly e9c0ec8511 [Client] Enhanced error handling in decryptToDeviceEvent 2020-03-23 08:51:14 +01:00
Christian Pauly 237bd40a15 [Client] Fix claim keys not in loop 2020-03-20 10:46:12 +01:00
Christian Pauly 44ed403cd6 [Room] Request only 10 events on getTimeline 2020-03-20 08:59:29 +00:00
Christian Pauly 04eb904629 [TurnServerCredentials] Fix type 2020-03-19 14:39:18 +00:00
Christian Pauly f7b03f5668 [Room] Dont wait for send event while sending files 2020-03-17 07:55:25 +00:00
Christian Pauly bb44fa6ac0 [Event] Implement file encryption 2020-03-16 10:38:03 +00:00
Christian Pauly 9e971674e8 [Presence] Calculate time 2020-03-15 09:31:49 +01:00
Christian Pauly 57bd600738 [Room] Fix decrypt last message 2020-03-13 12:18:24 +00:00
Christian Pauly 391a9af2ba [Room] Fix create megolm session 2020-03-13 10:09:49 +00:00
Christian Pauly 39717f5917 Sendtodevice enhance performance 2020-03-06 12:04:27 +00:00
Christian Pauly 208ee0581a [LibOlm] Update to fix encryption 2020-03-02 09:28:59 +01:00
Christian Pauly cb8450de06 [Room] Wipe session when sending session keys wasnt successful 2020-02-27 11:16:26 +01:00
Christian Pauly 202f997320 Room fix block devices 2020-02-27 08:52:45 +00:00
Christian Pauly 31b64a6631 [Room] Clear outbound session only if devices changed 2020-02-27 08:41:49 +00:00
Christian Pauly 73841bd2f6 Merge branch 'matrixfile-refactor-uint8list' into 'master'
[MatrixFile] Use Uint8List instead of List<int>

See merge request famedly/famedlysdk!227
2020-02-27 07:15:30 +00:00
Lukas Lihotzki 3c78f11f2c [MatrixFile] Use Uint8List instead of List<int> 2020-02-24 17:54:43 +01:00
Lukas Lihotzki f483fb437e [Client] Remove unused variable in upload 2020-02-24 17:06:07 +01:00
Christian Pauly ccb1945d00 [Room] Fix setState 2020-02-24 10:34:28 +01:00
Christian Pauly 63bcce28de [Room] Fix last message when encrypted 2020-02-24 09:10:35 +01:00
Christian Pauly f4be2aa023 [PublicRoomEntry] Fix fromJson 2020-02-22 18:13:13 +00:00
Christian Pauly 3e6552dc7a [PublicRoomEntry] Fix join method 2020-02-22 17:59:50 +00:00
Christian Pauly 2738c5a49d [Client] List public rooms 2020-02-22 18:20:50 +01:00
Christian Pauly 8a7468db01 [Event] Key sharing with all users in a room 2020-02-22 09:08:01 +01:00
Christian Pauly ac3a9a6b3a [Room] Implement key sharing 2020-02-21 15:05:19 +00:00
Christian Pauly 7982a60d7c [Room] Enhance decrypt error handling 2020-02-21 09:56:40 +01:00
Christian Pauly 3926539661 [Event] Enhance decryption 2020-02-21 08:44:05 +00:00
Christian Pauly 2ab6eb2a0c [Client] Dont create new inbound session when session matches 2020-02-20 15:29:15 +00:00
Christian Pauly 49e643625c [Client] Add debug prints 2020-02-20 07:28:15 +00:00
Christian Pauly 77b11d78db [Client] Implement device management 2020-02-19 14:26:38 +01:00
Christian Pauly ce1fd3ecd8 Merge branch 'room-fix-send-unencrypted' into 'master'
[Room] Send unencrypted if encryption not enabled

Closes #53

See merge request famedly/famedlysdk!209
2020-02-19 10:10:34 +00:00
Christian Pauly b47705e169 Merge branch 'client-fix-count-userids-encrypted-rooms' into 'master'
[Client] Only joined or invited users in encrypted rooms count

Closes #55

See merge request famedly/famedlysdk!208
2020-02-19 10:01:22 +00:00
Christian Pauly a52fef7c4b [Room] Send unencrypted if encryption not enabled 2020-02-19 10:59:21 +01:00
Christian Pauly de211b08bc [Client] Only joined or invited users in encrypted rooms count 2020-02-19 10:56:41 +01:00
Christian Pauly 5d73f06cd3 [DevicekeysList] Clear outbound group session on blocking device 2020-02-19 10:54:08 +01:00
Christian Pauly 48da43bcc6 [Client] Fix trust own device 2020-02-19 10:24:54 +01:00
Christian Pauly d05d22e6af [Room] Decrypt only encrypted events 2020-02-19 08:54:56 +01:00
Christian Pauly 662f18d86e [Client] Free everything 2020-02-18 13:37:36 +00:00
Christian Pauly 974d507292 [Client] Minor olm fixes 2020-02-18 11:49:02 +01:00
Christian Pauly cf31237457 [Room] Fix clean up 2020-02-18 09:23:55 +00:00
Christian Pauly 10f0424c97 [Client] Send correct key in olm 2020-02-18 08:55:18 +01:00
Christian Pauly 2b513957a1 [Room] Fix message index error 2020-02-18 07:42:52 +00:00
Christian Pauly e2c34b101e [Room] Return m.bad.encrypted 2020-02-18 08:02:17 +01:00
Christian Pauly f13fc98609 [Client] Try again to upload keys 2020-02-17 18:10:53 +01:00
Christian Pauly 600820a40d [Event] Fix getReplyEvent 2020-02-17 15:42:11 +00:00
Christian Pauly 54e88e6c95 [Client] Fix storing verified and blocked devices 2020-02-17 12:49:01 +01:00
Christian Pauly 26bf204bd5 [Client] Add timeout factor 2020-02-17 08:15:32 +00:00
Christian Pauly 8bf7eacc46 [DeviceKeys] outdated by default not null 2020-02-15 14:21:27 +01:00
Christian Pauly f8c65d5d59 [Client] Trust own device 2020-02-15 13:33:03 +01:00
Christian Pauly 45193624c2 [Room] Fix internal message type 2020-02-15 12:21:03 +00:00
Christian Pauly 3c386391cf [Timeline] Try to decrypt but not block 2020-02-15 08:58:08 +00:00
Christian Pauly f5b493f9bd [SDK] Add dart-olm library and update CI 2020-02-15 07:48:41 +00:00
Christian Pauly 86a192efd8 [Event] Fix null sender 2020-02-14 14:06:46 +00:00
Christian Pauly 8e0373cdb9 [States] Return null on null key 2020-02-14 13:16:26 +00:00
Christian Pauly e2fde3fa92 Merge branch 'event-fix-reply-check' into 'master'
[Event] Fix reply check

See merge request famedly/famedlysdk!185
2020-02-11 11:28:26 +00:00
Christian Pauly cc02668593 [Event] Fix reply check 2020-02-11 11:28:26 +00:00
Christian Pauly 214201f9d3 [Client] Clean up logs 2020-02-11 11:23:37 +00:00
Christian Pauly 3404cffada [Event] Add support for replies 2020-02-11 11:06:54 +00:00
Christian Pauly 9395b8fcd3 [Identifier] Implement string extension 2020-02-10 12:33:18 +01:00
Christian Pauly 24d08d83b9 [Client] Always claim own devices 2020-02-05 08:23:47 +00:00
Christian Pauly edd8aa5c4c Client feature add device tracking 2020-02-04 13:41:13 +00:00
Christian Pauly 0c7efaff62 [OpenIdCredentials] Fix type 2020-02-03 09:45:33 +00:00
Christian Pauly 995da7d255 [Client] Upload with StreamedRequest 2020-02-01 12:08:14 +00:00
Christian Pauly c710768937 [Event] Fix typo 2020-01-29 12:11:21 +00:00
Christian Pauly f2c92aa9bb [MatrixException] Add nullchecker 2020-01-29 09:21:23 +00:00
Christian Pauly 289c5c618d [Room] Fix join invitation to direct chat 2020-01-28 09:15:53 +01:00
Christian Pauly c3737499c4 [User] Kick and ban only available with correct membership 2020-01-27 09:24:57 +01:00
Christian Pauly 653883a22d [Store] Make lightweight store possible 2020-01-24 16:42:51 +00:00
Christian Pauly b362ef5610 [Store] Simplify store API 2020-01-24 09:34:38 +00:00
Christian Pauly 82c8120c1b [Room] Fix storeless timeline 2020-01-23 10:43:01 +00:00
Christian Pauly 3b47577dd1 [Client] Clean up debug logs 2020-01-22 07:24:21 +00:00
Christian Pauly 4cc5d263ab [SDK] Implement more matrix methods 2020-01-18 15:49:15 +01:00
Christian Pauly 9bc94c8780 Merge branch 'exception-fix-list' into 'master'
[MatrixException] Fix list

See merge request famedly/famedlysdk!164
2020-01-14 15:19:41 +00:00
Christian Pauly 0b393497f8 [Client] Add register methods 2020-01-14 15:16:24 +00:00
Christian Pauly 2751015ab7 [MatrixException] Fix list 2020-01-14 15:15:59 +00:00
Christian Pauly 5fbeceb217 [SDK] Refactoring 2020-01-14 11:27:26 +00:00
Christian Pauly 9b0d746fee [Client] Send empty object with request 2020-01-13 12:52:08 +00:00
Christian Pauly 27da3041b4 [Client] Fix openid method 2020-01-13 11:52:42 +00:00
Christian Pauly 0be548e4e9 [Client] Implement request openID 2020-01-12 11:30:05 +01:00
Christian Pauly b53d1d22c3 [Timeline] 2 seconds cooldown for requestHistory 2020-01-08 14:20:42 +00:00
Christian Pauly 4d1e5e3ed3 [Store] Async storing of prev batch 2020-01-06 20:21:25 +00:00
Christian Pauly fa277f1834 [Room] Fix get send event permissions 2020-01-05 08:15:25 +00:00
Christian Pauly 103949576f [Client] Add call methods 2020-01-04 19:36:17 +01:00
Christian Pauly de2872cfee Update lib/src/client.dart, lib/src/user.dart, lib/src/timeline.dart, lib/src/room.dart, lib/src/presence.dart, lib/src/event.dart, lib/src/utils/profile.dart, lib/src/utils/receipt.dart, test/client_test.dart, test/event_test.dart, test/presence_test.dart, test/room_test.dart, test/timeline_test.dart, test/user_test.dart files 2020-01-04 17:56:17 +00:00
Christian Pauly 3b6d4565ae [Client] Sort rooms on first sync 2020-01-04 16:31:14 +00:00
Christian Pauly 348d9f8552 [Client] Add testing setter for rooms 2020-01-04 13:51:00 +00:00
Christian Pauly 90a06ebce5 [Client] Make callbacks to streams 2020-01-04 11:29:38 +01:00
Christian Pauly c72f38d5ec [Event] Fix types 2020-01-04 10:31:27 +01:00
Christian Pauly aef05a4ee6 [Client] Convert all input to UTF16 2020-01-03 13:27:49 +00:00
Christian Pauly 6698b4fb69 [Client] Better room sorting 2020-01-03 13:21:15 +00:00
Christian Pauly 7e71c5ad5f [SDK] Make analyzer much more happy 2020-01-02 15:33:26 +01:00
Christian Pauly 8e4a604f1f [SDK| Big refactoring 2020-01-02 14:09:49 +00:00
Christian Pauly 4c6c3715d9 [Connection] Throw MatrixErrors 2019-12-29 10:28:33 +00:00
Christian Pauly 496349078b [Archive] Fix requesting archive 2019-12-19 11:26:21 +00:00
Christian Pauly 7c1389d3d1 [User] Membership getter nullcheck fix 2019-12-18 13:44:31 +01:00
Christian Pauly 311a39c50c [Room] Detect mimetype automatically 2019-12-18 11:46:25 +00:00
Christian Pauly bb87ecc1f2 [Room] Set unread notifications to 0 manually 2019-12-17 12:07:25 +01:00
Christian Pauly 834f72704a [Room] Add sendTypingInfo method 2019-12-16 11:55:13 +00:00
Christian Pauly bff394fbb5 [Event] Add support for redactions 2019-12-12 12:19:18 +00:00
Christian Pauly 52db925608 [Room] Fix displayname calc with heros 2019-12-05 16:42:12 +00:00
Christian Pauly fcff9e3c9c [Room] Fix power level setters and getters 2019-12-05 10:06:23 +01:00
Christian Pauly fd43196c9d [Room] New push rule methods 2019-12-04 09:58:47 +00:00
Christian Pauly 579570a19e Merge branch 'presence-enhance-features' into 'master'
[Presence] Enhance presences

See merge request famedly/famedlysdk!130
2019-12-04 09:39:07 +00:00
Christian Pauly c566948be5 [Client] Add profile getter 2019-11-30 10:36:30 +01:00
Christian Pauly 918bec4c09 [Presence] Enhance presences 2019-11-30 10:21:11 +01:00
Christian Pauly 888155fbc7 [Archive] enhance lazyload archive 2019-11-29 16:19:32 +00:00
Christian Pauly fe0dac62c9 [Room] Add missing null check 2019-11-29 12:14:59 +00:00
Christian Pauly 7cc64497a5 [Timeline] Add get event by id method 2019-11-29 11:12:04 +00:00
Christian Pauly 7ae3432c5d [Room] Fix name 2019-11-26 12:46:46 +00:00
Christian Pauly b06c6254c3 Merge branch 'room-fix-state-handling-again' into 'master'
[Room] Fix state handling for real

See merge request famedly/famedlysdk!123
2019-11-26 06:40:03 +00:00
Christian Pauly 8051b360ac [Room] Add powerlevels getter 2019-11-26 06:38:44 +00:00
Sorunome 0356a24b76
[Room] Fix state handling for real 2019-11-22 09:55:34 +01:00
Christian Pauly 4ff3146d63 [Room] Fix state handling 2019-11-21 14:10:24 +00:00
Christian Pauly 930bc26be6 [Room] Add getter and setter for states 2019-11-20 13:42:08 +00:00
Christian Pauly 87ef1af3e4 [Room] fix states with statekeys 2019-11-20 13:02:23 +00:00
Christian Pauly b58dd46e8d [User] Request user sync and async 2019-11-15 11:08:43 +00:00
Christian Pauly 7a3056f741 [Room] Fix last event calculation 2019-11-13 14:08:27 +00:00
Christian Pauly f01b706ed8 [Room] Fix broken invite rooms 2019-11-13 13:56:20 +00:00
Christian Pauly 3a19bfb542 [User] fix null statekey 2019-11-07 09:46:18 +00:00
Christian Pauly a128497283 [Connection] Add type check 2019-11-07 09:03:05 +00:00
Christian Pauly 69a19e6de2 [Connection] Fix debug print 2019-10-30 09:00:22 +00:00
Wilko Manger 8a09a2b837 [RoomList] Add copyWith method 2019-10-28 15:09:45 +01:00