Commit Graph

1674 Commits

Author SHA1 Message Date
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 f310632a83
fix: Assign correct type to signedOneTimeKeys 2023-06-22 17:18:10 +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
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
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 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
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