td
3fba9a55b3
chore: remove state events both in imp and preview events list
2024-02-20 06:54:11 +05:30
Patrick Hettich
77561ced07
fix: Use name of other participant on archived rooms
2024-02-16 11:47:26 +01:00
td
aa77812e8e
fix: ignore expired calls rather than killing them
2024-02-14 03:27:09 +05:30
td
c2a2e419cb
fix: group calls terminator having sync glares
...
this will be removed with the new calls, we should ignore expired calls rather than cleaning up unless you have complete ownership of the event
2024-02-13 11:34:28 +01:00
Krille
bef9a79f82
chore: Use some call events as last events
2024-01-31 13:48:19 +01:00
The one with the braid
5dc95dea3f
fix: nested void function in encryption helper
...
- remove the accidentally nested void in the ffiInit implementation
Signed-off-by: The one with the braid <info@braid.business>
2024-01-31 13:29:46 +01:00
Krille
d94e6d2ac8
fix: Skip invalid keys which got corrupted in database
2024-01-26 09:41:55 +01:00
The one with the braid
1adbac31ae
feat: add SQfLite encryption helper
...
This patch introduces a helper class for SQfLite encryption related operations.
Most matrix clients will encrypt their sqlite database at rest. Since
this is a quite fragmented task using the Flutter sqlite ecosystem, this
helper aims to simplify some more complex operations.
It in particular helps with the following tasks :
- loading the correct shared objects / dynamic libraries for sqlcipher
- check whether a database is encrypted
- migrate an unencrypted SQLite database to SQLCipher
- apply the cipher to a database while opening it and ensure it loads
This code is not exactly matrix related, though presumably any matrix
client will use parts of it.
Possible regressions :
- `package:sqlite3` became a direct dependency. As of now it already was a
transitive dependency of the SDK itself.
Signed-off-by: The one with the braid <info@braid.business>
2024-01-24 10:43:46 +01:00
krille-chan
48ba7556b2
fix: Transactions on web by doing them in the same way as on io
...
This refactors the transaction
workaround with
"zone transactions" and
abstracts them in a mixin. Then
it just uses this mixin in the
HiveDatabase and the
sqflite_box and also applies
them on indexedDB to
fix transactions on web.
2024-01-22 15:04:29 +01:00
Krille
534a2a4ff1
fix: Correctly null cache in transactions for indexeddb
...
This is similar to the bug
in the sqflite but now for
the indexeddb.
2024-01-22 14:53:42 +01:00
krille-chan
eef79aad2b
refactor: Improve getTimeline senders
...
This creates a set before
requesting users from the
database. This prevents
doing the same check for
the same user multiple
times and also prevents
concurrent modifications
of the event list.
2024-01-22 13:02:43 +01:00
Krille
4906ae02cf
feat: Add missing localizations for key verification messages
2024-01-22 12:49:27 +01:00
Krille
544888fe33
refactor: Use maxnumberofotk from olm instead hardcode 100
2024-01-15 13:56:54 +01:00
Krille
2afd7040a7
fix: Another type error when combining lists
2024-01-12 16:24:00 +01:00
krille-chan
a9508d8941
refactor: Throw client init exception on client init fail
...
This changes the behavior
when client init fails. It
no longer calls logout and does
only clear local data while
returning all available
information in a new
exception type so that the
SDK consumer can decide
to logout or try again to init
with these information. This
should make it much more rare
that users loose their sessions.
2024-01-05 09:46:38 +01:00
Krille
245cf59205
fix: Type error when combining dynamic lists
2024-01-04 08:30:00 +01:00
Krille
40565464e0
fix: Delete in transaction on new store does not clear cache correctly
2024-01-02 10:01:33 +01:00
Krille
43db98c7b6
fix: Add missing copy map in matrix sdk database
2023-12-27 15:45:44 +01:00
krille-chan
b4607be5d0
feat: Make possible to fetch presence from database only
2023-12-27 10:22:54 +01:00
Krille
6955969e36
fix: typerror in removeEvent method from new database
2023-12-27 09:44:54 +01:00
Krille
4c8d7c959c
fix: clearCache does not clear room account data
2023-12-22 13:45:38 +01:00
td
dc411c9b14
fix: validate account_data values instead of checking them in syncUpdates
2023-12-20 21:10:31 +05:30
Krille
39527c9033
refactor: Connect timeline to event updates earlier
...
This creates the timeline object
earlier in the Room.getTimeline() method.
This results to that the
Timeline object already starts
to listen on the event stream
while the getTimeline() method
requests users from the database
and tries to decrypt room
events. I assume that this
causes the problem that
on timeline creation new
events get lost because they
come in, while getTimeline() is
not yet completed but the
onEvent stream is not yet
connected at the same time.
2023-12-20 13:29:35 +01:00
td
b6d5ce02c4
feat: add tests for calls
2023-12-19 21:55:30 +05:30
td
6a2f31de39
fix: ignore calls with age older than lifetime
...
feat: add barebones WebRTCDelegateMock
2023-12-18 21:28:26 +05:30
td
520dfdbe3e
fix: check negotiate party and call ids
...
chore: making some call naming schemes better
2023-12-15 21:39:06 +05:30
Krille
c443e79d29
fix: Increase timeout for initial sync from 10 seconds to 2 minutes
...
This fixes the response
timeout for the initial
sync and sets it to 2
minutes instead of 10
seconds. This should increase
the speed for the initial
sync especially for large
accounts. This change
also adds some
documentation in the
code about what
timeout does what.
2023-12-15 13:18:10 +01:00
Krille
fd1b4eed92
fix: canSendDefaultMessage ignores overwritten events
...
This refactors three methods
regarding powerlevels. It
makes them a little bit more
readable and removes
unnecessary checks. it
also changes the canSendDefaultMessage
method in a way that it also
checks the events map in the
powerlevels so that it returns
true if message events are
overwritten there. It also
improves the dart docs and
explains in more detail what it
does.
2023-12-15 12:05:05 +01:00
Nicolas Werner
e1b80a1f3f
Merge branch 'main' into karthi/cache-get-config
2023-12-14 16:33:50 +01:00
Krille
9dc2f825a3
refactor: Add loadHeroUsers method
...
This makes it possible to await loading the
hero users to correctly
calculate displayname and
avatar.
2023-12-14 09:16:52 +01:00
Krille
55bfc92ee0
refactor: Make possible to wait for first sync and await first sync before create megolm session
2023-12-13 14:02:53 +01:00
Karthikeyan S
db0762ad3f
feat: cache getConfig request
2023-12-13 18:28:44 +05:30
Krille
eb869462aa
refactor: Add delete database method
...
This adds a delete database
method used for migration to
correctly delete the whole
legacy database instead just
empty it.
2023-12-12 12:57:23 +01:00
Krille
c3c770bc33
refactor: Remove duplicated copyMap method and fix type error
...
dynamic.copy returned a type
error so I reverted the previous
change of the copyMap
method to an extension. Also
I found out that we have used
two copyMap methods in the
SDK which did exactly the same.
I deleted the old one and
changed the tests.
2023-12-11 10:29:06 +01:00
Krille
5e2623672c
fix: Copy all maps got from database
...
Unfortunately we need to copy
all maps. I took the opportunity
and abstracted the copy map
method to utils. I kept the
copyMap method as a
reference in HiveCollections
database to not require a
huge refactoring there as we
are going to ditch it anyway.
2023-12-11 08:32:06 +01:00
Krille
b547b7dfe0
build: Add changelog for v0.24.1
2023-12-07 10:24:42 +01:00
Christian Pauly
6db019ae23
feat: Implement new Matrix Dart SDK Database
...
fix: Edit last event breaks db
feat: Add native sqflite indexeddb database
feat: Split up preload and nonpreload room state boxes
2023-12-06 12:11:47 +01:00
Krille
0b1281358f
fix: Do not hide matrix exceptions in sync
2023-12-05 09:04:51 +01:00
Karthikeyan S
0811b8911b
fix: set cid before initWithInvite to handle getUserMedia exception correctly
2023-12-04 17:41:16 +05:30
Karthikeyan S
f4b0a629c7
chore: add null check for remotePartyId before ignoring reject/hangup
2023-11-29 12:32:57 +05:30
Karthikeyan S
6b9be63a4d
fix: ignore reject/hangup events for a live call from a different device
2023-11-29 12:32:57 +05:30
Nicolas Werner
52a5485f7a
fix: don't delete the dehydrated device before we are sure the keys got saved
2023-11-28 11:02:43 +01:00
Nicolas Werner
2fca08725d
feat: Update dehydrated devices implementation to current MSC
...
BREAKING CHANGE: This replaces the old dehydrated devices
implementation, since there is no way to query what is supported easily
and supporting both would be complicated.
fixes https://github.com/famedly/matrix-dart-sdk/issues/1579
2023-11-28 11:02:35 +01:00
Krille
8e9bcc2d36
fix: Delayed encrypted event in timeline not added to aggregated events
2023-11-27 16:12:45 +01:00
Krille
06669cbcac
refactor: Store fetched presence in db and deprecate own cache
2023-11-27 15:48:21 +01:00
Krille
193f404885
refactor: Add SyncConnectionException to syncloop
2023-11-27 09:11:57 +01:00
Nicolas Werner
25f4353ab0
fix: key uploads only running once
...
There were several issues here. Key uploads in general failed, because
the await caused a Future<dynamic> to be returned, which failed type
checking.
But also we never unset our future, which was used for the online key
backup uploads, which meant we would very quickly stop uploading any
keys at all.
2023-11-24 17:42:57 +01:00
Krille
82b885dee0
feat: Add sendRaw command
2023-11-22 15:35:29 +01:00
Krille
029b648f26
fix: Do only convert linebreaks to br tags in p blocks
...
This changes the behavior
of the markdown method to
only convert linebreaks inside
of p blocks. I found no better
solution yet for the problem
as otherwise also lists
will have linebreaks between
the list items. Unfortunately
the default linebreak syntax
seems not to fulfill our needs.
2023-11-22 11:02:17 +01:00
Nicolas Werner
8b8a647cf9
chore: enable discarded_futures lint
...
BREAKING CHANGE: This changes the runInRoot method to not return a
future. As a user, if you need the result of an async computation passed
to runInRoot, please await it directly. Also the KeyVerification start
and a few call methods now return a future.
2023-11-17 12:59:27 +01:00
Nicolas Werner
5dc3adadfc
chore: enable avoid_bool_literals_in_conditional_expressions
2023-11-17 12:59:27 +01:00
Nicolas Werner
a0970b7fcb
chore: don't manually enable default rules
2023-11-17 12:59:20 +01:00
Nicolas Werner
e03826b1bb
Merge branch 'main' into krille/better-syncloop-error
2023-11-16 22:21:59 +01:00
Nicolas Werner
0b3542730d
Merge branch 'main' into krille/store-presences
2023-11-16 21:36:13 +01:00
Krille
d1bbf57b6f
fix: Set presence when loading archive
2023-11-15 14:18:48 +01:00
Mohammad Reza Moradi
d5447c62f7
fix: hangup on call crash
2023-11-15 08:49:35 +01:00
Krille
8cc863b1a3
feat: Store presences in database
2023-11-15 06:59:58 +01:00
td
1ab06cb01a
fix: clear local database on logout even if server timesout
2023-11-13 18:12:47 +05:30
Karthikeyan S
243275d644
Merge branch 'main' into karthi/fix-hangup-timeout
2023-11-06 17:31:22 +05:30
krille-chan
b1b2b2ffe2
fix: catch correct exception type for connection problems
2023-11-05 09:52:08 +01:00
Nicolas Werner
37582a3a8e
fix: stale call checker leaks memory
2023-11-04 00:30:14 +01:00
td
579b8aa944
Merge branch 'main' into karthi/fix-hangup-timeout
2023-11-03 19:22:01 +05:30
Karthikeyan S
88110773ab
fix: call hangup on timeout race condition
2023-11-03 16:05:37 +05:30
Nicolas Werner
82492f92e1
chore: upgrade lints
2023-11-02 10:20:33 +01:00
Nicolas Werner
620187c772
Merge branch 'main' into braid/store-left-rooms-in-archive
2023-11-02 08:49:48 +01:00
Krille
f0e4232930
refactor: Wait for room in sync until sync process and trigger cleanup call not before actually start clean up.
2023-10-23 12:30:14 +02:00
Krille
6f144198b7
fix: Do not convert linebreaks in pre blocks on markdown parsing
2023-10-23 08:39:26 +02:00
The one with the braid
5dea95f02c
fix: Code style
...
Signed-off-by: The one with the braid <info@braid.business>
2023-10-20 14:58:56 +02:00
Clemens-Toegel
f1fd6f43f9
chore: remove archived room on forget ( #2 )
...
Co-authored-by: Clemens Toegel <clemens.toegel@x-tention.at>
2023-10-20 14:04:11 +02:00
Clemens-Toegel
0ec6a64cc8
chore: store states to archived rooms ( #1 )
...
* chore: store states to archived rooms
* chore: PR fix
---------
Co-authored-by: Clemens Toegel <clemens.toegel@x-tention.at>
2023-10-20 14:04:11 +02:00
The one with the braid
053dddb76d
chore: incrementally add left rooms to archive
...
- store left rooms in archive during sync (as well as they are removed
on join already)
- refactor room archive code
- fix typo
Internal reference: SMC-385
Signed-off-by: The one with the braid <info@braid.business>
2023-10-20 14:04:11 +02:00
Krille
4e310f16d5
feat: Add methods to load all room keys from online key backup
...
This makes it possible to load
and sync all room keys
right after the bootstrap if the
app wants to do this.
2023-10-20 12:13:12 +02:00
Ray
4b51c1c5fd
fix: fixed hardcoded historyCount
2023-10-20 11:25:45 +02:00
Krille
5c3c85ba3d
refactor: Trigger upload keys on sync and not in background job and upload them before logout
2023-10-20 10:18:05 +02:00
Krille
b5b5cfee5e
fix: Convert linebreaks into br tags on markdown parsing
...
Removes two test cases in the markdown test which do not work anymore.
Reason for this is that just parsing a word inside of $$ word $$
katex is not valid anyway because katex is only made for mathematical
things. So the output is undefined behavior anyway.
2023-09-29 09:24:50 +02:00
Krille
5dd444daf2
refactor: Update markdown
2023-09-28 08:09:17 +02:00
Nicolas Werner
97bf7723dd
fix: Wait for rate limit to pass while sending messages
...
Otherwise the user can't handle that exception themselves, since we
don't rethrow.
2023-09-21 13:04:57 +02:00
Krille
8ac86a883d
feat: Implement member change type
...
For easier handling and
comparing of m.room.member
state events to better
know what these event
actually changes.
2023-09-19 16:19:42 +02:00
Nicolas Werner
dab7f6667e
Merge branch 'main' into nico/fix-okb-bootstrap
2023-09-19 14:02:18 +02:00
Nicolas Werner
bf51e57e78
chore: remove redundant log message
2023-09-19 12:24:06 +02:00
Nicolas Werner
3fb77383a3
fix: wait for online key backup key to be cached on reset
...
Otherwise uploading the keys won't work, since the key backup is
"disabled".
2023-09-18 17:16:43 +02:00
Nicolas Werner
500e423c00
fix: storing the end of history pagination
...
At least in our CI this throws a null assertion error and since we
explicitly expect this to sometimes be null in our code, we should store
it as such.
2023-09-18 12:02:06 +02:00
Mohammad Reza Moradi
c38cbbc8dc
fix: apply state event before decryption on leaved room
2023-09-18 11:33:17 +02:00
Nicolas Werner
5b47a647b6
fix: userOwnsEncryptionKeys returns true for empty device lists
2023-09-13 14:26:41 +02:00
Nicolas Werner
cce3646339
fix: startDirectChat might return an unjoined room
...
If you create DM room, but the other party doesn't join it, they might
be unable to create a new DM using startDirectChat. Since creating a new
DM is pretty much the same as joining the invite, we try to join the
pending DM invite first and fall back to creating a new room if that
fails.
2023-09-04 13:27:55 +02:00
mErrenst
b17f3a47f2
Merge pull request #1547 from famedly/krille/request-participants-cache
...
feat: Add option to not cache users in memory when requesting all of …
2023-08-16 09:15:56 +00:00
krille-chan
0c60ad7acd
feat: Add option to not cache users in memory when requesting all of a room
2023-08-13 08:16:11 +02:00
Krille
dd64f4702a
fix: Has new messages is never true
2023-08-10 08:44:07 +02:00
The one with the braid
30c27f00a1
fix: direct message room name computation
...
Signed-off-by: The one with the braid <braid@famedly.com>
2023-08-04 08:17:17 +02:00
Nicolas Werner
4addccd9da
Merge pull request #1534 from famedly/nico/simplify-sorting
...
refactor: simplify UIA stage selection logic
2023-08-01 08:56:56 +00:00
Nicolas Werner
59693b7375
refactor: simplify UIA stage selection logic
...
(Also prevents a potential out of bounds exception)
2023-08-01 10:31:55 +02:00
Nicolas Werner
b27fd4575d
Merge pull request #1535 from famedly/nico/fix-okb-reset
...
Make online key backup reset actually backup keys
2023-08-01 08:24:25 +00:00
Nicolas Werner
a016709a40
feat: Upload keys on OKB reset
...
This does make the reset take longer on big accounts, but otherwise
users might sign out before the keys are uploaded, which makes the reset
more destructive than necessary. In the common case of not having any
keys it shouldn't make a difference.
2023-07-31 17:31:04 +02:00
Nicolas Werner
eb0759caf5
fix: fix upload of old session after reset
...
Otherwise we would need to wait for a new inbound session to upload
them. It might increase disk usage a bit every 10 minutes.
2023-07-31 17:31:04 +02:00
Nicolas Werner
334c9e3b78
refactor: Simplify room sorting logic to make invite sorting more obvious
...
It wasn't quite obvious that invites were always sorted at the top, if
you just looked at the sort function. This makes it more explicit and
also makes invites always sort before favourited rooms.
2023-07-31 10:55:27 +02:00
td
66a53786e7
fix: do not proceed call if getUserMedia fails
...
fix: added a few missing awaits
fix: add a workaround for not having state updates for staleCallChecker till sync
chore: fix some logging
2023-07-10 14:19:16 +05:30
td
d042f9e6ae
chore: pass event to redactedAnEvent and removedBy
2023-07-04 17:09:23 +05:30
td
538865f62a
chore: cleanup some eventTypes and unused variables
2023-06-27 13:46:39 +05:30
td
bfda82bb45
chore: fix unexpected null when device is not known
2023-06-27 13:30:05 +05:30
Malin Errenst
5d8a82aefa
fix: Fixed fake_matrix_api.dart signedOneTimeKeys upload
2023-06-22 18:05:04 +02:00
Malin Errenst
f310632a83
fix: Assign correct type to signedOneTimeKeys
2023-06-22 17:18:10 +02:00
Malin Errenst
3bd36aa19f
fix: Fix type cast to fix test in matrix-fhir-dart-sdk
2023-06-22 14:29:29 +02:00
td
6a0a252912
feat: qr key verification
2023-06-21 19:15:26 +05:30
Malin Errenst
395ef0eb8e
refactor: Use tryGet for type casts whenever possible
2023-06-21 15:04:46 +02:00
Malin Errenst
5943576b1b
refactor: Added type casts to match refactored matrix_api_lite
2023-06-16 12:42:10 +02:00
Malin Errenst
17df38b874
refactor: Added type casts for refactored dart_openapi_codegen
2023-06-16 12:41:29 +02:00
Krille
b90c1b8ca7
fix: Do not display prevContent displayname and avatar for joined users
2023-06-14 12:54:18 +02:00
td
e45dbd169d
chore: add qr releated eventTypes
2023-06-13 11:45:27 +05:30
Krille
e81898ef7f
refactor: Get rid of dynamic lists
2023-06-13 07:59:20 +02:00
Malin Errenst
06d587e64f
refactor: Changed Map<String, dynamic> to Map<String, Object?>
...
- contains breaking changes because some type casts will be needed in
Matrix SDK
2023-06-09 15:04:28 +02:00
Malin Errenst
cf984d61f9
chore: generated folder from recent dart_openapi_codegen
2023-06-09 15:04:19 +02:00
Krille
d65dc721c3
fix: canRequestHistory should return false if prev_batch is null
2023-06-03 18:03:42 +02:00
td
2ebda5e6fc
chore: fix edited last events breaking db
2023-06-01 23:58:47 +05:30
Krille
85a21a6781
fix: Do not store global profiles in room states as members
2023-05-31 15:01:42 +02:00
Malin Errenst
8cb144aaae
Merge branch 'krille/performance-warning' into 'main'
...
feat: Display performance warning when requesting more than 100 participants
See merge request famedly/company/frontend/famedlysdk!1301
2023-05-30 11:48:51 +00:00
Krille
0f36659ba7
feat: Display performance warning when requesting more than 100 participants
2023-05-30 13:11:38 +02:00
Krille
07ceee4171
refactor: Let bootstrap throw custom Exception InvalidPassphraseException so it is easier to catch
2023-05-30 09:41:10 +02:00
td
c6b6c793d6
Merge branch 'krille/store-last-event-redacted' into 'main'
...
fix: Also update last event on redaction in store
Closes famedly/company/product-management#990
See merge request famedly/company/frontend/famedlysdk!1298
2023-05-30 06:58:40 +00:00
Reza
153005f4a7
chore: calculate unlocalized body
2023-05-17 08:37:41 +02:00
Krille
8f38006c18
fix: Also update last event on redaction in store
2023-05-16 13:33:57 +02:00
Malin Errenst
ac0fdc1deb
Merge branch 'td/moreMissingAwaitsbahh' into 'main'
...
chore: add missing awaits to to_device call events listener
See merge request famedly/company/frontend/famedlysdk!1295
2023-05-15 19:52:03 +00:00
td
26e0d0954d
chore: add missing awaits to to_device call events listener
2023-05-13 20:06:04 +05:30
td
8e4f4486b2
chore: add missing awaits to to_device call events listener
2023-05-13 20:05:09 +05:30
Krille
c714574c3f
refactor: Check correct if null
...
This checks it in a more consistent way
and also makes developing new
databases easier as they
might set the json key but
set it null.
2023-05-11 12:17:53 +02:00
Krille
9c2f026b4d
refactor: Remove unused parameters
2023-05-11 09:24:41 +02:00
Nicolas Werner
47c54cb397
fix: mark DMs as DMs properly when joining
...
If we join first, it is possible that our member event is not the invite
event anymore. As such we should fetch that state first, before joining.
But also there is little reason not to mark the room as a DM
immediately. That prevents the room from temporarily becoming a group
room, that might be visible in the UI temporarily.
fixes https://gitlab.com/famedly/company/product-management/-/issues/1006
2023-05-09 16:09:01 +02:00
Nicolas Werner
53fbe4f7ef
chore: sort imports
2023-05-08 14:49:34 +02:00
Malin Errenst
cc377202da
fix: remove deprecated sender_key occurrences
2023-05-08 09:12:14 +00:00
td
36070e23b7
fix: cast issues in getEventList
2023-05-05 19:31:08 +05:30
Krille
e170325cae
refactor: Make parameters more clear and remove unused methods
2023-05-05 13:38:56 +02:00
Krille
f21260b035
fix: Only request users which are valid mxid
2023-05-04 15:22:44 +02:00
Nicolas Werner
4abefa906b
fix: Always wait for account data to load before returning SSSS status
...
Otherwise it would be possible, that we haven't loaded account data, so
we return that cross-signing is disabled and then we load it and return
a different result. Might fix the sentry issue for that.
2023-05-03 17:11:00 +02:00
Krille
2c14af9a8b
fix: Reactions are sent encrypted
2023-05-03 13:01:10 +02:00
Nicolas Werner
a250384eca
Merge branch 'td/singleShotSyncBeforeStaleChecker' into 'main'
...
chore: oneShotSync before staleCallChecker
Closes famedly/company/product-management#658
See merge request famedly/company/frontend/famedlysdk!1284
2023-05-03 06:35:56 +00:00
td
444ba47022
chore: oneShotSync before staleCallChecker
...
fix: while singleShotStaleCallChecker code seems to be correct we are seeings some random disconnects in group calls, this makes sure we have all the to-device messages we are supposed to have before checking for stale calls
2023-04-29 19:47:13 +05:30
td
f240ece32c
fix: updateMuteStatus after kConnected
...
fix: makes sure any state/race issues we had with sdp packets or cloned streams get fixed automatically
2023-04-29 19:33:34 +05:30
Malin Errenst
a0669a505e
Merge branch 'krille/set-read-marker-optional-eventid' into 'main'
...
refactor: Make optional eventId a named parameter
See merge request famedly/company/frontend/famedlysdk!1281
2023-04-28 08:50:26 +00:00
Krille
91617c1892
refactor: Make optional eventId a named parameter
...
This should not break the
API of consuming apps and
is more intuitive as the
parameter is nullable.
2023-04-28 10:03:04 +02:00
Krille
c6f7da12d4
fix: Check the max server file size after shrinking not before
2023-04-28 09:26:54 +02:00
td
1928f292b0
fix: casting of a List<dynamic> to List<String> in getEventList and getEventIdList
2023-04-28 00:55:20 +05:30
Nicolas Werner
831938b8f5
fix: Skip rules with unknown conditions
...
Without this, when new rules are added with new conditions, we would
always match on them. This would mean all messages now notify. It is
better to skip them instead.
2023-04-26 19:00:24 +02:00
td
046e2caf7d
fix: allow passing a WrappedMediaStream to GroupCall.enter() to use as the local user media stream
...
currently in the app we start the group call (but do not enter it), then we use the localStreams provided by it to show the setup page (enable/disable media devices). This causes some issues because the user hasn't joined the group call so the member state events don't update and the group call is killed if they just sit on the setup call page. Also creating a group call, sends notifications in our apps but no one has entered it. With this MR, apps can get their own user media, then edit that stream on setup page add it to GroupCall.enter(stream). This way, a group call doesn't have to be started and we get to do the setup page as well.
2023-04-25 14:18:45 +05:30
Nicolas Werner
62b43bef56
Merge branch 'nico/private-receipts' into 'main'
...
feat: Support private read receipts
See merge request famedly/company/frontend/famedlysdk!1272
2023-04-21 16:37:25 +00:00
Nicolas Werner
663ab11ec5
feat: Support private read receipts
...
You can either set them to private on the client or overwrite the
behaviour for that on each readMarker call. This also handles incoming
thread receipts and tries its best to figure out what is the latest
receipt. This however breaks the old m.receipt account data event.
2023-04-21 18:31:15 +02:00
Kristian Grønås
101e892cd9
chore: Update image dependency to 4.0.15
...
Signed-off-by: Kristian Grønås <Kristian.Gronas@student.uib.no>
2023-04-21 06:22:09 +02:00
Nicolas Werner
b95edec462
fix: Update the generated enum files
2023-04-17 16:54:43 +02:00
Nicolas Werner
7f519b5619
Merge branch 'main' into 'main'
...
Implement Thread creating/sending + added neccessary tests
Closes #351
See merge request famedly/company/frontend/famedlysdk!1262
2023-04-17 13:15:36 +00:00
Dmitriy Bragin
203fc25d7a
feat: allow sending messages inside threads
2023-04-17 14:39:11 +03:00
Nicolas Werner
7039c33f3a
chore: Upgrade to matrix_api_lite 1.6
2023-04-17 13:23:51 +02:00
Nicolas Werner
d99bb05f47
feat: Upgrade to spec 1.6
...
In theory this is a breaking change, since it changes the read receipt
API slightly.
2023-04-17 11:57:56 +02:00
td
412bd71b23
Merge branch 'td/trySetTrackenabled' into 'main'
...
fix: update mute status on participants changed.
See merge request famedly/company/frontend/famedlysdk!1263
2023-04-13 14:57:04 +00:00
td
32ba85dc74
chore: stopMediaStream on all streams and make sure dispose runs everytime
2023-04-12 16:36:05 +05:30
td
05ba6368eb
fix: test if setting track enabled on participants changed helps with the media not working randomly issue
2023-04-06 01:18:09 +05:30
Krille
4b1bc435e5
fix: Clear HiveCollection boxes inside of transaction in order
...
This makes sure that the deleteFromDisk() method is
called AFTER the clear while
the execution order was
random before which could
lead to the problem that
Hive tries to clear a box after
it got deleted.
2023-03-31 13:09:01 +02:00
Malin Errenst
da61963d37
Merge branch 'malin/refactorVariableNaming' into 'main'
...
refactor: Rename one-character-variables in device_keys_list.dart
See merge request famedly/company/frontend/famedlysdk!1259
2023-03-30 13:04:31 +00:00
Malin Errenst
d8af3edbe1
refactor: Rename one-character-variables in device_keys_list.dart
2023-03-30 12:30:39 +02:00
Krille
c0000c0193
Merge branch 'td/leavedIgnore' into 'main'
...
chore: ignore stale call checking for archived rooms
See merge request famedly/company/frontend/famedlysdk!1255
2023-03-29 14:12:03 +00:00
td
d8d111b1b4
chore: ignore stale call checking for archived rooms
2023-03-29 19:04:10 +05:30
Krille
710752060a
feat: Implement onMigration callback to Client.init() method
2023-03-29 15:30:38 +02:00
Philipp Grieshofer
9aff62a18c
feat: Expose a getter for all rooms including archived rooms
2023-03-20 13:12:47 +00:00
Krille
efe8e7e5ac
feat: Make possible to overwrite boxcollection opener in Hive Collections Database
2023-03-20 08:01:51 +01:00
Philipp Grieshofer
00cb292781
fix: Use MatrixLocalizations to calculate fallback user displayname
2023-03-13 15:49:05 +00:00
Mohammad Reza Moradi
74deba3d3e
Merge branch 'krille/pagination-in-search-events' into 'main'
...
feat: Implement pagination for searchEvent endpoint
See merge request famedly/company/frontend/famedlysdk!1240
2023-03-06 08:17:24 +00:00
Christian Pauly
89c80e7917
feat: Implement pagination for searchEvent endpoint
2023-03-06 09:02:25 +01:00
Nicolas Werner
6f6f6b5d10
Merge branch 'kushal/http-call-issue-fix' into 'main'
...
fix: http api call replaced with httpClient
See merge request famedly/company/frontend/famedlysdk!1189
2023-03-03 15:21:28 +00:00
td
b776e8f9df
Merge branch 'td/asyncmesh' into 'main'
...
fix: make group call stuff async, let clients await what they need
See merge request famedly/company/frontend/famedlysdk!1244
2023-03-03 15:03:32 +00:00
Nicolas Werner
99036ca178
Merge branch 'td/stopCheckerLeave' into 'main'
...
chore: stop stale group call checker on room leave
See merge request famedly/company/frontend/famedlysdk!1245
2023-03-03 12:43:27 +00:00
Nicolas Werner
2c3194b823
fix: archive takes 2 minutes to update
...
In Synapse 1.62.0 the default cache duration of initial sync responses
was changed to 2 minutes. That means our archive calls might return
stale data. Since different sync timeouts bust through the cache, we
make use of that to be able to load the new archive immediately.
fixes https://gitlab.com/famedly/company/frontend/famedly-web/-/issues/634
2023-03-03 13:08:31 +01:00
m_kushal
d48542a023
fix: http api call replaced with httpClient
...
Signed-off-by: m_kushal <kushalmahapatro@gmail.com>
2023-03-03 01:16:10 +04:00
cloudwebrtc
f2e4126e0c
chore: update.
2023-02-27 21:02:30 +08:00
cloudwebrtc
380051ab07
fix: skip invalid candidate.
2023-02-27 20:59:38 +08:00
td
936018bebc
chore: remove checker from local list
2023-02-27 11:54:56 +05:30
td
fd4577ae84
chore: stop stale group call checker on room leave
2023-02-27 11:53:08 +05:30
td
9cb99377fb
fix: make group call stuff async, let clients await what they need
2023-02-24 22:31:10 +05:30
td
2d0fd9c393
fix: make group call stuff async, let clients await what they need
2023-02-24 22:17:27 +05:30
td
0c555919af
chore: add missing awaits in group call enter and leave funcs
2023-02-20 18:04:56 +05:30
td
f7c7cb82de
chore: add useServerCache option to fetchOwnProfileFromServer and fix missing awaits
2023-02-20 17:57:29 +05:30
td
2b2a49d0cb
Merge branch 'td/fallbackFetchOwnProfile' into 'main'
...
chore: add a fetchOwnProfileFromServer method
See merge request famedly/company/frontend/famedlysdk!1241
2023-02-17 11:13:58 +00:00
Nicolas Werner
92999339a9
Merge branch 'krille/fake-user-event' into 'main'
...
fix: Fake User object
Closes #343
See merge request famedly/company/frontend/famedlysdk!1221
2023-02-17 09:02:59 +00:00
td
7ce6595b3d
fix: ability to upgrade audio calls to video calls
...
fix: setMicrophoneMuted is now async to match setVideoMuted
2023-02-17 07:56:17 +05:30
td
eca98b14b9
chore: add a fetchOwnProfileFromServer method which tries to get ownProfile from server first, disk then
2023-02-16 19:22:32 +05:30
td
0c9e129347
fix: clean expired member state events in group calls
2023-02-14 23:08:50 +05:30
Nicolas Werner
0e26e44d8c
Merge branch 'td/ohno' into 'main'
...
fix: hasActiveGroup call now checks all group calls
See merge request famedly/company/frontend/famedlysdk!1236
2023-02-14 11:26:52 +00:00
Nicolas Werner
468a918b3a
Merge branch 'krille/search-method-fix' into 'main'
...
fix: Request key in searchEvent method crashes because of wrong preconditions
See merge request famedly/company/frontend/famedlysdk!1239
2023-02-14 10:05:53 +00:00
td
1219604dc9
fix: hasActiveGroup call now checks all group calls
...
fix: implement activeGroupCallEvents to get all active group call state events in a room
refactor: move staleCallChecker and expires_Ts stuff to an extension on Room, instead of Voip because it makes much more sense per room rather than on voip, also makes testing easier
fix: populate local groupCalls list on instantiating VOIP()
fix: starting stale call checker is now handled by the sdk itself because clients can forget to do so
2023-02-14 15:02:28 +05:30
Christian Pauly
31d4d5d08e
fix: Check if argument is valid mxid in /maskasdm command
2023-02-14 09:16:48 +01:00
Christian Pauly
c5898f62b9
fix: Fake User object
2023-02-13 15:32:01 +01:00
Christian Pauly
e77a5291c4
fix: Request key in searchEvent method crashes because of wrong preconditions
2023-02-13 13:55:57 +01:00
Krille
bdedef9379
refactor: Check config at file sending after placing fake event and add error handling
...
This should fix the unresponsivness
of apps for a few seconds
when trying to send a file
2023-02-12 18:28:29 +01:00
td
ff66337773
chore: bump flutter and dart images
2023-02-01 15:03:36 +05:30
Nicolas Werner
dc444538bf
Merge branch 'td/expiresTsGroupCallMove' into 'main'
...
fix: move expires_ts according to spec (breaks group call compatibility with older sdks)
See merge request famedly/company/frontend/famedlysdk!1229
2023-02-01 09:23:17 +00:00
td
bdf2c01a5a
fix: move expires_ts according to spec (breaks group call compatibility with older sdks)
...
this fixes group calls with element calls
2023-01-31 19:17:29 +05:30
td
448b61191a
fix: reject call on own device if you get a call reject
2023-01-30 23:14:04 +05:30
td
47a8e32c57
Merge branch 'td/activeSpeaker' into 'main'
...
feat: active speaker in group calls
See merge request famedly/company/frontend/famedlysdk!1228
2023-01-30 12:38:25 +00:00
td
00154f3c78
feat: active speaker in group calls
2023-01-30 15:46:21 +05:30
td
ef0bf44b70
fix: missed incomingCallRoomId case in removing glare stuff during group calls
2023-01-28 03:42:58 +05:30
duanweiwei1982@gmail.com
0deb8d9e6e
fix: fix glare side effects for group calls.
2023-01-28 01:10:29 +08:00
td
169ac9c88c
Merge branch 'td/deprecateIsBg' into 'main'
...
chore: deprecate isBackground
See merge request famedly/company/frontend/famedlysdk!1225
2023-01-27 13:09:13 +00:00
Krille
f9c0fdca69
Merge branch 'td/stopRingtone' into 'main'
...
fix: try to stop ringtone on call termination
Closes famedly/company/product-management#531
See merge request famedly/company/frontend/famedlysdk!1220
2023-01-27 12:58:09 +00:00
td
8a1ca08d7c
Merge branch 'td/missedCallreject' into 'main'
...
fix: only send call reject event when needed
See merge request famedly/company/frontend/famedlysdk!1224
2023-01-27 12:56:45 +00:00
td
6246dd1301
chore: deprecate isBackground
...
This was used by callkeepv1 to fire a system notification or in call flutter screens on a new call, has always been set to false on web
2023-01-27 18:18:55 +05:30
td
d8ac3b337a
fix: try to stop ringtone on call termination
2023-01-27 17:57:53 +05:30
td
10e6b9b0e6
Merge branch 'voip/remove-call-in-group-calls-correctly' into 'main'
...
fix: Fix can't correctly remove/cleanup call in group call.
See merge request famedly/company/frontend/famedlysdk!1222
2023-01-27 12:23:19 +00:00
Duan Weiwei
8ed9913eb6
fix: Fix can't correctly remove/cleanup call in group call.
2023-01-27 12:23:18 +00:00
td
9a232580be
fix: send all servers for getIceServers
2023-01-27 12:05:07 +00:00
td
ce0bdd9dc6
fix: only send call reject event when needed
...
This is fixes rejects by missed calls, which should only reject a new call locally and not send a event if they are already in a call
2023-01-27 17:16:41 +05:30
td
441df7851b
Merge branch 'td/glare' into 'main'
...
fix: glare
Closes famedly/company/product-management#80
See merge request famedly/company/frontend/famedlysdk!1161
2023-01-23 06:48:09 +00:00
td
262b456010
fix: glare
2023-01-23 06:48:07 +00:00
td
5510049dec
fix: update groupCalls state stream
...
refactor: add a try catch around disposing streams. Decoding streams is broken in flutter_webrtc atm
2023-01-23 06:43:35 +05:30
Nicolas Werner
e81fce1f1f
Merge branch 'td/generateInviteLink' into 'main'
...
feat: add method to generate the matrix.to link
See merge request famedly/company/frontend/famedlysdk!1207
2023-01-20 07:32:56 +00:00
td
9e649b7d37
fix: tweak some stuff in group calls code for group calls onboarding feat
2023-01-20 03:46:20 +05:30
td
c5d484bb13
feat: add method to generate the matrix.to link
2023-01-20 03:41:43 +05:30
Krille
05c945b042
fix: Last message set incorrectly on all session key received
...
This fixes a bug that the
last message was sent
incorrectly when a session
key received for example
from the key backup. It may
fix several issues like the
last message is set as a
very old one or the last
message is not decrypted.
2023-01-18 11:46:32 +01:00
Krille
d6c4b530c5
refactor: room displayname calculation
...
This deprecates the displayname
getter in favor of the new
getLocalizedDisplayname which
gets the default localization
by default so it can be
called without defining localizations. It adds a method
to calculate if a room is an
abandoned DM room where
it is made sure that the room
is actually empty.
2023-01-17 08:51:07 +01:00
Duan Weiwei
579b01a405
Fix the timing error when the candidate arrives before the answer sdp.
2023-01-11 02:50:38 +00:00
Nicolas Werner
4ff07b58f4
Merge branch 'td/ringtone' into 'main'
...
fix: play ringtone for incoming calls before trying to getUserMedia
Closes famedly-web#656
See merge request famedly/company/frontend/famedlysdk!1204
2023-01-03 22:56:51 +00:00
td
1138012dd1
fix: propogate filter to getParticipants in requestParticipants
2023-01-04 03:36:51 +05:30
td
bd352b60a6
fix: play ringtone for incoming calls before trying to getUserMedia
2022-12-30 20:33:04 +05:30
The one with the braid
ed0ab3bdb9
Merge branch 'krille/remove-transaction-workaround' into 'main'
...
refactor: Remove database transaction workaround
See merge request famedly/company/frontend/famedlysdk!1192
2022-12-27 13:20:21 +00:00
Krille Fear
956a2f793f
fix: Add timeout to sync http call
2022-12-27 09:30:04 +01:00
cloudwebrtc
23552d5434
fix: Fix the called party not sending screensharing correctly.
2022-12-21 20:49:37 +08:00
Christian Pauly
7a5b013c92
refactor: Remove database transaction workaround
...
The workaround was from the
time when we have used
sqflite or when Hive had
bugs. But now HiveCollections
already supports transactions
in Dart zones and concurrent
write operations shouldn't
be a problem anymore.
2022-12-21 09:41:11 +01:00
Krille
9d9b1e38ec
Merge branch 'krille/store-after-decrypted-last-event' into 'main'
...
fix: Store decrypted last event in store
See merge request famedly/company/frontend/famedlysdk!1197
2022-12-21 08:24:39 +00:00
Krille Fear
49703f5808
fix: Store decrypted last event in store
2022-12-21 08:43:52 +01:00
Nicolas Werner
58b3098f16
Merge branch 'braid/null-safe-code' into 'main'
...
fix: make some Room getters null safe
See merge request famedly/company/frontend/famedlysdk!1196
2022-12-14 22:36:29 +00:00
TheOneWithTheBraid
35a108b704
fix: make some Room getters null safe
...
- gixes huge error cause in integration tests of related apps
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-12-14 21:20:14 +01:00
Christian Pauly
2f1696bff8
chore: Bump version
2022-12-14 09:00:08 +01:00
Christian Pauly
c66d2edb5e
refactor: Key manager megolm handling to make key generation more efficient
2022-12-14 08:59:36 +01:00
Reza
52d6b59cc1
fix: leaved direct chat name
2022-12-12 10:31:40 +01:00
Duan Weiwei
0bd8848ec5
chore: Add voip connection tester.
2022-12-01 14:14:08 +00:00
Philipp Grieshofer
3f82835d3a
fix: await requestKey() in event search
2022-12-01 08:55:57 +00:00
Philipp Grieshofer
789527c256
fix: Request session key for bad encrypted events before the text search is carried out
2022-11-28 08:08:26 +00:00
Mohammad Reza Moradi
67e1b9b253
Merge branch 'krille/check-if-verified-by-any-master-key' into 'main'
...
feat: Check if a key is verified by any master key
See merge request famedly/company/frontend/famedlysdk!1173
2022-11-24 13:11:07 +00:00
Reza
7da56ee212
fix: minor stuff
2022-11-24 11:00:10 +01:00
Reza
f969a733f1
fix: minor stuff
2022-11-24 10:48:17 +01:00
Reza
dd4d0696b3
fix: do not pass the verified device list
2022-11-24 10:19:52 +01:00
Reza
8f37466295
fix: minor stuff
2022-11-24 09:33:36 +01:00
Reza
10cf979877
fix: minor stuff
2022-11-23 19:28:08 +01:00
Reza
44f862b966
feat: start verification with the verified device
2022-11-23 13:43:57 +01:00
TheOneWithTheBraid
6ef8a56041
feat: migrate e2ee test to DinD
...
- migrate e2ee tests to DinD
- test e2ee against Synapse, Conduit and Dendrite
- fix error handling in push rules (thanks to Dendrite tests)
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-23 09:01:53 +01:00
Reza
ffb37e834f
feat: check if the key is verified by any master key
2022-11-22 17:22:04 +01:00
TheOneWithTheBraid
3cc4cd8410
fix: follow account kind in registration
...
- as of now, account kind ist simply ignored
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-22 07:53:59 +01:00
td
d517581fa5
Merge branch 'krille/fix-powerlevels' into 'main'
...
fix: PowerLevel calculation regarding to spec
See merge request famedly/company/frontend/famedlysdk!1172
2022-11-21 09:39:50 +00:00
Christian Pauly
f3287dbb99
fix: PowerLevel calculation regarding to spec
2022-11-21 10:14:28 +01:00
Christian Pauly
aaaf63a0b8
feat: Check if a key is verified by any master key
...
To check if a device is cross
signed by any master key can
be useful to know which
device can give us the
bootstrap keys on login.
2022-11-21 10:12:12 +01:00
The one with the braid
50288698a8
Merge branch 'braid/cute-events' into 'main'
...
feat: support MSC 3935: cute events
See merge request famedly/company/frontend/famedlysdk!1168
2022-11-21 08:53:44 +00:00
TheOneWithTheBraid
476963069a
feat: support MSC 3935: cute events
...
- add cute event skeletron (`im.fluffychat.cute_events`)
- add cute events to default command batch
- this way, all SDK users can profit from cute events
- supported events: `hug`, `googly_eyes`, `cuddle`
Fixes:
https://rail.chat/@AgathaSorceress@eldritch.cafe/109336005433123570
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-11-21 09:17:07 +01:00
td
6da10bf233
fix: handleMissedCalls on remote hangups before answer
2022-11-18 12:13:02 +05:30
Nicolas Werner
dbac5d83dc
fix: recover from very unlikely key upload errors
...
Usually we store the keys we want to upload first, then upload them,
then store, that we uploaded them. So that should be fool proof.
But.
In some cases the filesyste lies to us and the database change isn't
actually persisted yet. That can happen when someone turns of their
phone aprubtly for example. In that case we generate new OTKs with the
same id. Uploading that will fail, since they already exist server side.
We can work around that by manually claiming them and removing them
locally.
2022-11-15 17:18:29 +01:00
Grieshofer Philipp
d60a3aa579
refactor: Add argument for custom CreateRoomPreset to startDirectChat method
2022-11-14 11:07:53 +01:00