Christian Pauly
059a240214
feat: Add more localization strings and add default matrix localizations
2022-04-14 07:54:15 +02:00
Krille Fear
2f4d455eee
fix: Retry sending a file event
2022-04-08 08:41:55 +02:00
Henri Carnot
c6393c67d6
Merge branch 'henri/blurhash-fallback' into 'main'
...
feat: blurhash fallback to thumbnail one
See merge request famedly/company/frontend/famedlysdk!1002
2022-04-07 11:58:48 +00:00
h.carnot
97ca608f60
feat: check thumbnail size
2022-04-06 17:43:31 +02:00
h.carnot
f1c007c655
feat: fallback to thumbnail preview
2022-04-06 11:09:05 +02:00
Krille Fear
e97fe621d6
chore: Allow custom image resizer to be an async method
2022-04-04 14:35:23 +02:00
Christian Pauly
cdd6111ce1
fix: Missing type check in power level calculation
2022-04-03 08:22:53 +02:00
Krille Fear
6f977b7c9d
fix: Store sending files in database and fix retrying to send them
2022-04-01 14:26:57 +02:00
Christian Pauly
117baecfb1
fix: Post load all users on room opening
...
When opening a room we need to
fetch all users from the database.
Otherwise we would need to
update the timeline per user after
creation which should be much slower.
2022-03-31 13:07:40 +02:00
Christian Pauly
ea3910001b
fix: Better fallback message for member events without any change
2022-03-31 12:20:23 +02:00
Christian Pauly
6a57f99c00
feat: Pass through a custom image
...
resize function to the client
This allows the use of the
native imaging package in a more
easy way.
2022-03-30 11:15:04 +02:00
Christian Pauly
445252b3a5
feat: Pass through a custom image
...
resize function to the client
This allows the use of the
native imaging package in a more
easy way.
2022-03-30 10:35:17 +02:00
Christian Pauly
a915cdacc8
feat: Display dummy event in timeline for sending files
...
For thumbnail generation, encrypting
and uploading it is not necessary
to block the UI. The given file
event should already be displayed
in the timeline. This placed it in
the UI and adds a additional
fileSendingStatus property so the
app can fetch the current status.
2022-03-30 10:27:42 +02:00
Krille Fear
23e0d29a0d
Merge branch 'krille/try-again-sending' into 'main'
...
feat: Try again uploading file events for one minute
See merge request famedly/company/frontend/famedlysdk!986
2022-03-30 06:38:01 +00:00
Nicolas Werner
e2d2a69e45
Merge branch 'voip/move-voip-methods-from-room' into 'main'
...
chore: Move the call methods in room to the voip class.
See merge request famedly/company/frontend/famedlysdk!980
2022-03-25 23:51:55 +00:00
Duan Weiwei
cac4dc967d
chore: Move the call methods in room to the voip class.
2022-03-25 23:51:55 +00:00
Christian Pauly
f86b242dcf
feat: Try again uploading file events for one minute
...
This also refactors the code for
sending events with the same
Duration of one minute.
2022-03-25 12:54:42 +01:00
Christian Pauly
abddbee24c
feat: Set loglevel in client constructor
...
This is just more convenient than
doing it in a line after the constructor.
2022-03-25 12:12:43 +01:00
Krille Fear
c897127be5
Merge branch 'henri/fix-olm-session-creation-issue' into 'main'
...
fix: remove pendaing outbound group session creation on completed or errored
Closes #252
See merge request famedly/company/frontend/famedlysdk!987
2022-03-25 09:17:49 +00:00
Christian Pauly
6b36d6bd79
feat: Get event in a room faster by searching in database
2022-03-24 14:10:41 +01:00
h.carnot
2cd4eb5e2c
fix: remove pendaing outbound group session creation on completed or errored
2022-03-24 13:52:28 +01:00
TheOneWithTheBraid
c362ead49a
feat: implement mofifying widgets
...
- add predefined MatrixWidget factories
- allow to create widgets
- allow to delete widgets
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-03-24 10:40:10 +01:00
Krille Fear
b5336cf589
Merge branch 'henri/event-getLocalizedBody-remove-markdown' into 'main'
...
feat: allow removing markdown formating from localized body
See merge request famedly/company/frontend/famedlysdk!979
2022-03-24 08:09:43 +00:00
Krille Fear
f1be211845
Merge branch 'henri/fix-room-loading' into 'main'
...
fix: room members loading
See merge request famedly/company/frontend/famedlysdk!982
2022-03-24 08:04:17 +00:00
Henri Carnot
809fe9e621
fix: room members loading
...
States were used before being fetched from the database.
Thus, room membership states weren't set, and so,
user display names weren't be fetched from the database.
2022-03-24 08:04:17 +00:00
Christian Pauly
657a332b03
refactor: Simplify relates to and make it more type safe
...
Everything in content is user generated
so we should never expect correct
types and return null instead.
2022-03-22 11:46:48 +01:00
h.carnot
b47a5f8dff
feat: added doc
2022-03-18 11:42:38 +01:00
h.carnot
77347a44ff
feat: allow removing markdown formating
2022-03-18 11:40:10 +01:00
Techno-Disaster
885da787b4
fix: send oldusername in displayname changed event
2022-03-17 18:51:26 +05:30
Nicolas Werner
62780b5b2f
Merge branch 'krille/fix-reactions-trigger-notifications' into 'main'
...
fix: Dont encrypt reactions
See merge request famedly/company/frontend/famedlysdk!974
2022-03-15 10:40:52 +00:00
Christian Pauly
f1d422b89a
fix: Dont encrypt reactions
...
This fixes that server
sends notifications for reactions.
2022-03-15 08:42:53 +01:00
Krille Fear
93b11dd8ca
Merge branch 'krille/matrix-file-improvements' into 'main'
...
refactor: Make MatrixFile final and move all image calculation into isolate
Closes famedly/fluffychat#863
See merge request famedly/company/frontend/famedlysdk!972
2022-03-15 07:40:59 +00:00
Krille Fear
9fa5667234
refactor: Make MatrixFile final and move all image calculation into isolate
...
This makes all fields in a MatrixFile final and
the object therefore stateless. It also moves
all calculations into the isolate. After some
benchmarks it seems that this does not
really speed up the thumbnail creation
but it does no longer block the UI for
some seconds.
2022-03-15 08:27:40 +01:00
Nicolas Werner
83298cc98b
fix: own profile containing mxid
...
There are a few ways to fix this. We could skip events, where we don't
have the state in memory yet or always do a /profile request and cache
that.
I chose to go with loading the event from the database if necessary. If
we have a room in the db, we should have our memberevent in the db. In
some cases we might not (if the server thinks our memberevent is super
redundant), but I think the spec doesn't really allow that and it
doesn't happen in practice. And even if it would, we probably would want
our member event ASAP. And if we have no rooms, we fetch it from the
server as before instead of constructing a member with an MXID as the
username.
fixes https://gitlab.com/famedly/company/frontend/frontend-issue-inbox/-/issues/65
2022-03-15 02:13:09 +01:00
Krille Fear
58f77cacdb
fix: Rooms sort order after login
...
A two years old workaround prevented
the room sorting for the initial sync. But
this is definitely no longer needed.
2022-02-28 12:19:33 +01:00
Krille Fear
ecc60efea9
fix: Change password using email authentication
2022-02-19 13:37:35 +01:00
Krille Fear
215de3b948
Merge branch 'krille/fix-background-uia' into 'main'
...
fix: UIA request stucks forever on unexpected matrixExceptions
See merge request famedly/company/frontend/famedlysdk!966
2022-02-19 11:32:40 +00:00
Krille Fear
1f8691dd70
Merge branch 'krille/thumbnail-size' into 'main'
...
chore: Increase default thumbnail size to 800
See merge request famedly/company/frontend/famedlysdk!968
2022-02-19 11:16:08 +00:00
Krille Fear
d780ba77c4
chore: Increase default thumbnail size to 800
2022-02-19 11:29:10 +01:00
Christian Pauly
c0ec4c3990
fix: sortRooms should be triggered right before onSync is called
2022-02-18 12:11:10 +01:00
Krille Fear
a7f8838522
fix: UIA request stucks forever on unexpected matrixExceptions
2022-02-17 20:54:03 +01:00
Christian Pauly
b30b340b43
fix: hasNewMessage true when last event is sent
2022-02-16 08:09:57 +01:00
td
d543a0314d
Merge branch 'krille/return-homeserver-summary' into 'main'
...
feat: Return homeserver summary on checkHomeserver
See merge request famedly/company/frontend/famedlysdk!963
2022-02-16 07:07:53 +00:00
Krille Fear
6b610d0115
feat: Return homeserver summary on checkHomeserver
2022-02-16 07:07:53 +00:00
cloudwebrtc
63d347de8e
fix: Correctly end the call.
2022-02-15 22:02:56 +08:00
Christian Pauly
01dfdb29fd
fix: Has new messages compares ts
...
This compares the origin server timestamp which might not map
to the real sort order of the timeline. But it is the best
solution for now.
2022-02-15 10:26:17 +01:00
Lanna Michalke
ade7e7e910
fix: handle dynamic content for pinned events
...
Signed-off-by: Lanna Michalke <l.michalke@famedly.com>
2022-02-14 18:18:34 +01:00
Christian Pauly
68fcee98cb
fix: Show reactions as last events and refactor hasNewMessage
...
Reactions are triggering push
notifications and should therefore
be displayed as last events
in the room list of a client.
The body should just display
the reaction key.
This fixes that rooms with
new reactions can't set to
read.
2022-02-14 15:06:22 +01:00
Christian Pauly
63e69eaa27
feat: Add hasNewMessages flag to room
...
This makes it possible to check
if muted rooms have unread
messages.
2022-02-14 10:48:57 +01:00
Christian Pauly
843afe7aa4
fix: Sort rooms after updating the UI on web
...
FluffyBox behaves different on
web transactions which leads
to the result that _sortRooms()
is performed before the
rooms UI can be there. This
leads to an unsorted room list
on web.
2022-02-14 09:30:33 +01:00
Krille Fear
ff55444b52
Merge branch 'voip/fix-black-screen-with-system-button' into 'main'
...
fix: Fix black screen when end screensharing with system buttons.
Closes famedly-web#268
See merge request famedly/company/frontend/famedlysdk!955
2022-02-14 08:03:23 +00:00
Nicolas Werner
4a52540006
fix: exception on removed widgets
...
And widgets without a name.
fixes #267
2022-02-13 23:11:53 +01:00
cloudwebrtc
48c0d03bd2
fix: Fix black screen when end screensharing with system buttons.
2022-02-13 07:13:58 +08:00
Christian Pauly
d7f0da3545
fix: Call onChange on remove aggregation event
2022-02-08 08:34:20 +01:00
Krille Fear
84e87279e8
fix: Remove onHistoryReceived which was broken anyway
2022-02-07 15:15:44 +01:00
Krille Fear
8e7db020bf
fix: Remove aggregation event doesnt trigger onChange
2022-02-07 15:06:38 +01:00
Christian Pauly
846d5b0f46
fix: Add redaction events to timeline
...
The redaction events should not
be displayed in the GUI but it
is the job of the app to hide
them from the timeline while
the SDK should offer an
accurate list of ALL timeline
events by default.
2022-02-04 08:55:47 +01:00
Christian Pauly
12f846e101
fix: Resize image with compute by using const class arguments
2022-02-04 08:04:18 +01:00
Christian Pauly
01d13e7e2c
refactor: Implement on history received in timeline
...
In order to make delta updates
for GUIs displaying the
timeline events easier, the
onHistoryReceived callback
has been introduced.
2022-02-03 09:38:39 +01:00
TheOneWithTheBraid
7d2a99b500
fix: null-safety issues with widgets
...
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-02-02 16:17:22 +01:00
TheOneWithTheBraid
fa6bd12294
feat: implement to get a room's widgets
...
Please note that this does not implement *modifying* widgets,
as this requires a full implementation of the Matrix Integration Manager
API first. This is to be done later.
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-02-02 08:38:56 +01:00
Christian Pauly
48572f8f10
fix: Trigger onChange for index on aggregation event update
2022-02-01 11:45:29 +01:00
Krille Fear
f8a2a603ad
Merge branch 'room-timeline-onupdate' into 'main'
...
feat: expose Timeline.onChange to Room.getTimeline
See merge request famedly/company/frontend/famedlysdk!943
2022-01-26 12:16:07 +00:00
TheOneWithTheBraid
ed6f9c06b7
feat: expose Timeline.onChange to Room.getTimeline
...
Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>
2022-01-26 12:52:30 +01:00
Nicolas Werner
999dbb4434
Merge branch 'voip/fix-call-breaks-caused-by-aborting-screen-sharing' into 'main'
...
Fix call breaks issue caused by aborting screen sharing.
Closes famedly-web#212
See merge request famedly/company/frontend/famedlysdk!938
2022-01-26 10:57:09 +00:00
Lanna Michalke
58f6cde0bf
BREAKING CHANGE: high-level hadling of image sizes
...
- By using [package:image](https://pub.dev/packages/image ), the
`MatrixImageFile` was given automatically generated width and heigth.
- Moreover, `MatrixImageFile` was given a factory to create the image
file from a given maximal dimension.
- When sending images without explicitly providing a thumbnail, the
thumbnail is automatically generated based on the provided image.
- The blur hash in generated automatically based on the provided image.
Fixes:
https://gitlab.com/famedly/company/frontend/famedly-web/-/issues/162 , https://gitlab.com/famedly/fluffychat/-/issues/756
Signed-off-by: Lanna Michalke <l.michalke@famedly.com>
2022-01-19 13:10:17 +01:00
Marcel
1b11efc9eb
fix: Use where and map instead of a loop and a removeWhere
2022-01-17 22:06:29 +00:00
cloudwebrtc
38c7109aee
fix: fix call breaks issue caused by aborting screen sharing.
2022-01-17 21:16:36 +08:00
MTRNord
d77d49430a
fix: Remove sorts that shouldnt be required.
2022-01-15 21:54:13 +01:00
cloudwebrtc
fba3c1e5f6
fix: Fix turn credentials format issue for safari.
2022-01-14 20:56:51 +08:00
Lanna Michalke
cab03aa73b
fix: Allow unpadded base64 decoding
2022-01-11 09:02:34 +00:00
Krille Fear
b472dd7b92
fix: Room Member updates should always be cached
...
I think the commit which broke it was this: e3bd0cf1 It makes sure that only important state events get cached and room member events are not important state events and so new invites have no room member events cached. It makes sense to also allow room member events here to always be cached as they are special typed.
2022-01-08 10:44:22 +01:00
Krille Fear
bcca5e11f2
feat: Let sendDefaultMessage return false on encryption failure
2022-01-07 17:12:20 +00:00
Krille Fear
6d8fabd1e0
Merge branch 'krille/fix-request-user' into 'main'
...
fix: Requested users are not stored
See merge request famedly/company/frontend/famedlysdk!930
2022-01-04 06:28:00 +00:00
Krille Fear
e9e9dcb4aa
Merge branch 'krille/newlinter' into 'main'
...
refactor: Remove unnecessary type checks and imports
See merge request famedly/company/frontend/famedlysdk!929
2022-01-03 11:45:06 +00:00
Christian Pauly
62a04b52d4
fix: Requested users are not stored
...
Fake Matrix Events for storing
need more paramters to
actually get stored. This fixes
it by creating a fake event ID
which should be unique.
2021-12-26 09:14:52 +01:00
Krille Fear
3bce8b4489
refactor: Remove unnecessary type checks and imports
2021-12-23 11:46:45 +01:00
Krille Fear
326f1f3223
fix: Localize reactions
...
In notifications in FluffyChat we
have "Unknown event m.reaction"
for reactions. But it should just be
enough to display the body so it
should look like:
"username: :thumbs_up_emoji:"
2021-12-23 11:43:00 +01:00
Krille Fear
e5fde4f801
chore: bump version
2021-12-16 08:17:36 +00:00
Nicolas Werner
d687973b01
fix: fallback in body for replies to replies
2021-12-15 19:21:41 +00:00
Sorunome
fa5abfca92
fix: ignore 4xx errors when re-sending the to_device queue
...
The to_device queue was introduced to ensure integrity if e.g. the
server temporarily failed when attempting to send a to_device message.
If, for whatever reason, the server responds with a 4xx error, though,
then we want to ignore that to_device message from the queue and move on,
as that means that something different was fundamentally wrong. This
helps to fix the to_device queue clogging up, making clients incapable
of sending to_device events anymore, should such clogging happen.
2021-12-08 13:00:53 +01:00
cloudwebrtc
c0e4008903
fix: Store the call state, fix the invite cannot be sent.
2021-12-06 19:32:33 +08:00
Sorunome
b009ada0ac
fix: Allow consecutive edits for state events in-memory
...
The lastEvent was incorrect when trying to process an edit of an edit.
This fixes that by allowing consecutive edits for the last event.
2021-12-06 11:11:21 +01:00
Sorunome
e3bd0cf139
fix: Only save state events from sync processing in-memory if needed
...
If we dump all state events from sync into memory then we needlessly
clog up our memory, potentially running out of ram. This is useless
as when opening the timeline we post-load the unimportant state events
anyways. So, this PR makes sure that only the state events of post-loaded
rooms and important state events land in-memory when processing a sync
request.
2021-12-06 11:09:50 +01:00
Sorunome
872bc04674
fix(ssss): Strip all whitespace characters from recovery keys upon decode
...
Previously we stripped all spaces off of the recovery when decoding it,
so that we could format the recovery key nicely. It turns out, however,
that some element flavours also format with linebreaks, leading to the
user having to manually remove them. We fix this by just stripping *all*
whitespace off of the recovery key.
2021-12-05 12:19:22 +01:00
Krille Fear
43d5b1c523
fix: Add missing calcDisplayname global rules to client constructor
...
This two parameters were
already documented but
were missing in the
constructor. They can
also be final.
2021-12-03 12:34:52 +01:00
cloudwebrtc
4ebf5b2553
Merge branch 'voip/add-voip-function' of https://gitlab.com/famedly/company/frontend/famedlysdk into voip/add-voip-function
2021-12-02 23:20:16 +08:00
cloudwebrtc
61da76a26a
chore: Implement the onAnsweredElsewhere function.
2021-12-02 23:18:01 +08:00
Krille Fear
e5c8e4f4fe
chore: Time unit replacement.
2021-12-02 15:12:59 +00:00
cloudwebrtc
9bc35a216a
chore: Use `fireCallEvent` instead of emit.
2021-12-02 23:04:33 +08:00
cloudwebrtc
1f519703a8
fix: Fix the call function in flutter and dart.
2021-12-01 00:47:11 +08:00
cloudwebrtc
7efe123274
Merge branch 'main' into voip/add-voip-function
2021-11-30 22:31:10 +08:00
cloudwebrtc
edeea47dec
chore: Improve the code.
2021-11-29 22:26:18 +08:00
Krille Fear
fe2d184faf
fix: userOwnsEncryptionKeys always returns true
...
Actually the homeserver sends an
empty object in the deviceKeys map
so we need to check if this object
is there but is empty.
2021-11-28 10:37:56 +01:00
cloudwebrtc
01276bbf60
chore: add more interface for delegate.
2021-11-27 01:29:11 +08:00
cloudwebrtc
60618d1775
chore: Add WebRTC delegate interface.
2021-11-27 01:20:04 +08:00
Krille Fear
44934d5911
Merge branch 'krille/enable-e2eerecovery' into 'main'
...
chore: Enable E2EE recovery by default
See merge request famedly/company/frontend/famedlysdk!915
2021-11-26 13:05:13 +00:00
cloudwebrtc
72584d679c
chore: bump version for webrtc_interface.
2021-11-26 20:33:57 +08:00
Krille Fear
ac06864627
feat: Migrate olm sessions on database migration
...
This adds a getAllOlmSessions
endpoint to the database API and
implements them in both
implementations. This also
adds it to the database
migration.
2021-11-26 08:17:43 +01:00
Krille Fear
03418bfe8b
chore: Enable E2EE recovery by default
...
We have disabled it by default to
prevent using workarounds as
long time solutions and to not
miss bugs. But in a federated
context we can not be sure that
we all Matrix clients are ever
bug free and we have now the
onEncryptionError Stream
anyway.
2021-11-25 15:48:17 +01:00
Krille Fear
79b74e2bbf
fix: Remove user avatar
2021-11-25 09:00:59 +01:00
Nicolas Werner
64257735ac
Merge branch 'krille/limited-timeline-behavior' into 'main'
...
fix: Limited timeline clears too much events
Closes #217
See merge request famedly/company/frontend/famedlysdk!907
2021-11-23 15:06:29 +00:00
Nicolas Werner
da57be44e4
Merge branch 'krille/fix-decrypt-room-event' into 'main'
...
fix: Decrypt last event of a room
Closes #251
See merge request famedly/company/frontend/famedlysdk!904
2021-11-23 15:03:45 +00:00
Krille Fear
bc6ec5e592
Merge branch 'krille/idb' into 'main'
...
feat: Implement FluffyBox database
See merge request famedly/company/frontend/famedlysdk!900
2021-11-23 15:00:42 +00:00
Krille Fear
01eb851364
fix:
2021-11-23 15:48:18 +01:00
Sorunome
17d8b4d25f
Merge branch 'krille/add-clear-cache-command' into 'main'
...
feat: Add clear cache command
See merge request famedly/company/frontend/famedlysdk!908
2021-11-23 13:06:53 +00:00
Krille Fear
ee21121a63
fix: Workaround for null boolean
...
deviceKeysList.outdated is not nullable but we have seen this error
in production: `Failed assertion: boolean expression must not be null`
So this could either be a null safety bug in Dart or a result of
using unsound null safety. The extra equal check `== true` should
safe us here
2021-11-23 13:53:07 +01:00
Krille Fear
921c694888
feat: Add clear cache command
2021-11-23 09:48:08 +01:00
Krille Fear
9cbe1099e5
fix: Limited timeline clears too much events
...
This fixes the bug that the
limited timeline flag also
clears all events from the
current SyncUpdate in an
open timeline.
2021-11-23 09:06:30 +01:00
Krille Fear
3338da4e09
fix: Ability to remove avatar from room and account
...
To remove an avatar the
client needs to send an
empty object. This is now
possible by making the
MatrixFile parameter nullable.
2021-11-22 19:36:38 +01:00
cloudwebrtc
18af7e0642
chore: Set client to final.
2021-11-22 23:08:52 +08:00
cloudwebrtc
12df5d8cdd
chore: Use RTCFactory interface to create MediaStream, VideoRenderer.
2021-11-22 22:41:49 +08:00
Krille Fear
27c03b4fad
fix: Request history in archived rooms
...
We have just forgotten to
set the prevBatch token in
the room object.
2021-11-22 10:37:26 +01:00
Krille Fear
f3775fa5ba
fix: Decrypt last event of a room
2021-11-22 10:18:44 +01:00
Krille Fear
a61e1ae4a3
feat: Add commands to create chats
2021-11-21 13:40:41 +01:00
cloudwebrtc
5dfb196c90
chore: dart format.
2021-11-19 18:03:58 +08:00
cloudwebrtc
93b623f2d5
chore: Use webrtc interface to build the voip module.
2021-11-19 17:51:38 +08:00
Krille Fear
b99a78476a
refactor: Remove Sembast database implementation
...
It was a nice experiment but it
loading everything into memory
is just too slow for big
accounts.
2021-11-18 19:55:21 +01:00
Krille Fear
0532974022
Merge branch 'krille/sembast' into 'main'
...
feat: Implement sembast store
Closes #239
See merge request famedly/company/frontend/famedlysdk!892
2021-11-16 09:42:40 +00:00
Krille Fear
f5051a5afe
feat: Implement sembast store
...
refactor: Use typed store
2021-11-16 09:50:25 +01:00
Nicolas Werner
ae5225f495
Merge branch 'krille/fix-start-chat' into 'main'
...
fix: Dont enable e2ee without encryption support
See merge request famedly/company/frontend/famedlysdk!893
2021-11-16 08:07:32 +00:00
td
1804838324
Merge branch 'krille/fix-crash-in-htmltotext' into 'main'
...
fix: HtmlToText crashes with an empty code block
Closes #249
See merge request famedly/company/frontend/famedlysdk!897
2021-11-16 07:27:09 +00:00
Krille Fear
66bf8e6ace
fix: HtmlToText crashes with an empty code block
2021-11-16 08:18:07 +01:00
cloudwebrtc
56d9ba7d4a
refactor: [WIP] Voip abstract interface.
2021-11-15 22:31:38 +08:00
Krille Fear
13658b7da8
chore: Trim formatted username fallback
...
A user has a mxid with a trailing "-" which
becomes a whitespace here. We should
trim those whitespaces after formatting.
2021-11-15 13:08:31 +01:00
Krille Fear
b7565af56f
fix: use originServerTs to check if state event is old
...
Due to server bugs or whatever it sometimes
happens that old state events appear
in the setState method in the room class.
Previously we checked if we already know
this event ID, but for this we needed to
check the timeline which is very fluid.
Also this is a database operation in a
non-async method which works in Hive but
not in Sembast.
Using originServerTs is not 100% safe as
well but should be more stable because
the chance that servers have veeery wrong
time (which is necessary here) is much
lower than the risk that the timeline
is not long enough to know the
old event.
2021-11-15 10:57:55 +01:00
Krille Fear
c8c4562f70
fix: Dont enable e2ee without encryption support
...
This also adds a missing visibility
parameter to the
createGroupChat method.
2021-11-13 11:58:07 +01:00
Krille Fear
f052957c0a
fix: Change eventstatus of edits in prevEvent
...
Unfortunately the last fix
was not working.
This fixes it for real now and also
adds a test case to make sure it
never breaks again.
2021-11-11 09:48:50 +01:00
cloudwebrtc
0822e3809d
chore: Null safety for voip.dart.
2021-11-10 21:47:16 +08:00
cloudwebrtc
09e24fd33e
feat: Migrate voip code from famedly-app.
2021-11-10 21:40:36 +08:00
Nicolas Werner
be617ee974
Merge branch 'krille/update_api' into 'main'
...
refactor: Update matrix_api_lite and use SyncUpdate constructors
See merge request famedly/company/frontend/famedlysdk!887
2021-11-10 11:40:49 +00:00
Nicolas Werner
a78f64715b
Merge branch 'krille/fix-last-event-edit' into 'main'
...
fix: Edits as lastEvent do not update
Closes #244
See merge request famedly/company/frontend/famedlysdk!888
2021-11-10 11:11:48 +00:00
Krille Fear
d16c25b26d
fix: Edits as lastEvent do not update
...
This fixes a bug where edit
events as lastEvents do not
update from SENDING status.
Because previously it only
checks if the event ID
matches.
2021-11-10 10:43:05 +01:00
Krille Fear
58b36a67a3
refactor: Update matrix_api_lite and use SyncUpdate constructors
2021-11-10 10:04:03 +01:00
Krille Fear
048b7faba0
fix: JSON parsing in decryptRoomEvent method
...
This makes the use of the
event content null safe and
type safe which fixes a
regression when sessionId is
null.
2021-11-10 09:19:40 +01:00
Krille Fear
872b3bff94
fix: Wrong null check in hive database
2021-11-10 09:09:24 +01:00
Nicolas Werner
d2e7de4702
fix: crash on invalid displaynames
2021-11-09 21:27:55 +01:00
Krille Fear
9abe1ed81d
fix: Dont enable e2ee in test verification DM room
2021-11-09 15:42:43 +01:00
Krille Fear
4cf88e2be6
feat: More advanced create chat methods
...
This includes a new simplified
API to create new direct and
group chats. It also handles
enabling encryption by
default.
2021-11-09 15:39:42 +01:00
Krille Fear
8116436da8
Merge branch 'krille/improve-start-up-time' into 'main'
...
feat: Make waiting on init db optional
Closes #235
See merge request famedly/company/frontend/famedlysdk!881
2021-11-09 14:35:13 +00:00
Krille Fear
475e810523
feat: Make waiting on init db optional
...
This can improve the start-up time of apps.
The three big db reads on init are
loading account data, rooms and
device keys.
This makes it now possible to let
them run parallel
(while it may depend on platform
if this has any effect)
and the init() method can skip
awaiting them. They will
be at least awaited before handling
the first received sync.
So the app can already display the
room list before device keys are
loaded and request the first sync
from the server before anything
else is loaded from the DB.
2021-11-09 15:27:48 +01:00
Nicolas Werner
c443b239b4
Merge branch 'krille/timeline-set-read-marker' into 'main'
...
refactor: Move setreadmarker functionality to timeline
See merge request famedly/company/frontend/famedlysdk!879
2021-11-09 14:14:43 +00:00
Krille Fear
e313426dd9
refactor: Move setreadmarker functionality to timeline
...
Apps had a hard time to just set
the marker for the last event.
The lastEvent in the Room may
not be the actual last event
because we ignore several
event types there. Therefore
it makes sense to refactor
the setUnread method.
Now the timeline class has an
easy method to set the read
marker to the last synced
event, which can only be
known by the timeline if we
want to avoid another DB access.
2021-11-09 14:56:59 +01:00
Nicolas Werner
7f9a75a43d
Merge branch 'krille/timeline-auto-update-list' into 'main'
...
feat: Add onInsert, onRemove and onUpdate cb to timeline
See merge request famedly/company/frontend/famedlysdk!880
2021-11-09 13:08:42 +00:00
Krille Fear
315ed7bdcb
feat: Add more benchmarks for sync, timeline, init
...
This also disables benchmarks if loglevel is higher than debug.
2021-11-09 10:03:59 +01:00
Krille Fear
e1f93637b3
feat: Add onInsert, onRemove and onUpdate cb to timeline
...
This makes it finally possible to
use Flutters AnimatedListView with
our Timeline class and in web we
can now update single elements
instead of the whole timeline
on every change which should
be quiet good for the
performance
2021-11-09 09:55:26 +01:00
Krille Fear
3e1aee6fcd
fix: Null error in get own profile
...
On converting a User object to
a Profile object now leads to an
error. This fixes it.
2021-11-05 12:21:48 +01:00
Krille Fear
9be87918f1
refactor: Make room in Event class not nullable
2021-11-04 14:21:04 +01:00
Krille Fear
eb200afe18
refactor: download method should not return null
...
If the decryption fails, it should
throw an exception and not
return null.
2021-11-04 12:22:20 +01:00
Sorunome
5c87b560b9
fix: obay explicitly set ports in mxc URLs
2021-11-03 08:54:04 +01:00
Jindra
a0bab1b587
feat: choose memberships returned by requestParticipants()
2021-11-02 09:27:00 +01:00
td
3130931f0d
Merge branch 'krille/dont-upload-keys-after-logout' into 'main'
...
fix: Do not upload keys after logout
Closes #213
See merge request famedly/company/frontend/famedlysdk!866
2021-10-29 13:21:01 +00:00
Krille Fear
766b27427a
Merge branch 'td/invite-update' into 'main'
...
fix: add room invite update to roomStateBox, so invites don't show empty room when app is restarted
Closes #228
See merge request famedly/company/frontend/famedlysdk!865
2021-10-29 13:17:30 +00:00
Nicolas Werner
6ee5771334
Merge branch 'nico/nullsafe' into 'main'
...
Make SDK nullsafe
Closes #201
See merge request famedly/company/frontend/famedlysdk!867
2021-10-28 16:25:25 +00:00
Krille Fear
176dbbeda9
fix: Do not upload keys after logout
...
This should fix a race condition where uploading keys is still ongoing
after user has already logged out.
2021-10-28 16:46:45 +02:00
Nicolas Werner
b6eed6daff
fix: don't escape @
2021-10-28 16:46:15 +02:00
Nicolas Werner
7d78233bf0
refactor: remove literal boolean comparisons leftover from nullsafety conversion
2021-10-28 14:40:22 +02:00
Nicolas Werner
6e20c53b01
refactor: remove redundant null checks
2021-10-28 14:32:09 +02:00
Nicolas Werner
6abd9e7e22
refactor: nullsafe event test
2021-10-28 03:44:01 +02:00
Nicolas Werner
ebd5bc3d24
refactor: make room nullsafe
2021-10-28 00:54:25 +02:00
Jayesh Nirve
b955318edb
fix: add room invite update to roomStateBox, so invites don't show empty room when app is restarted
2021-10-26 16:00:22 +05:30
Jindra
06281d1361
refactor: add export & order package exports
2021-10-25 17:51:20 +02:00
Nicolas Werner
fb0a84d7b2
refactor: make client nullsafe
2021-10-25 16:34:02 +02:00
Nicolas Werner
17fd1f22b3
refactor: make event nullsafe
2021-10-25 10:10:25 +00:00
Krille Fear
d2ee73f96f
chore: Bump version
2021-10-25 11:19:45 +02:00
Krille Fear
7a85d52d93
fix: Remove unnecessary null check
2021-10-25 11:11:55 +02:00
Krille Fear
7d5652e9a3
fix: Remove duplicated import
2021-10-25 11:11:17 +02:00
Krille Fear
9193950970
fix: Auto update room states
...
Room states are ignored if the event with the same event ID
is already known in the database. But
because of the event is stored in the
database and after this
setState in the Room class is called,
an event is always "known" and
therefore auto updating was broken.
2021-10-25 10:55:54 +02:00
Krille Fear
faba36d476
fix: Missing null check in a nested json map
2021-10-18 15:45:29 +02:00
Jindra
2b8782c699
fix: delete forgotten files caused by mergetool
2021-10-14 15:37:43 +02:00
Jindřich Pikora
c6e0359522
refactor: Change event status to enum
2021-10-14 13:31:07 +00:00
Nicolas Werner
d5e5500ac5
refactor: make timeline nullsafe
2021-10-14 10:50:18 +00:00
Nicolas Werner
8146aa05b8
refactor: make user nullsafe
2021-10-14 10:27:34 +00:00
Nicolas Werner
978c3bb994
refactor: make voip_content nullsafe
2021-10-13 17:03:34 +02:00
Nicolas Werner
60956bde00
chore: port the remaining encryption files to nullsafety
2021-10-13 13:58:21 +00:00
Krille Fear
3ae42d1a88
fix: Type error when using CryptoKey in dart web
...
In Dart Web when using CryptoKey we
get a type error. When using the html version of it
it seems to work fine.
2021-10-13 12:30:04 +00:00
Lukas Lihotzki
3130139bde
refactor: prepare null safefy for user.dart
...
With this commit, the migration tool needs to do 8 fewer changes.
2021-10-11 19:58:26 +00:00
Sorunome
f811e45102
fix: events with unknown users having invalid mxids
...
This caused issues down the line where the sender id was assumed to
be a valid matrix identifier
2021-10-11 19:49:10 +00:00
Lukas Lihotzki
b516bd1005
refactor: add and use constructor with named parameters
2021-10-08 14:26:23 +02:00
Lukas Lihotzki
66f29c7685
refactor: move voip content in its own file
2021-10-08 14:26:23 +02:00
Krille Fear
3603dae312
feat: Calc benchmarks for hive operations on init
2021-10-07 12:18:13 +00:00
Lukas Lihotzki
a7818bbd0f
refactor: null safety for all utils
2021-10-05 15:41:25 +02:00
Christian Pauly
687a6341f1
fix: Sent events are sorted in SENDING timeline
...
Events with a status of 1 should be sorted in the normal timeline.
They should not be stucked at the bottom. This fixes a bug
where a limited timeline flag
can stuck a SENT event at the bottom of
the chat forever.
2021-10-04 17:45:27 +00:00
Lukas Lihotzki
4bd659fd56
style: remove unneeded trailing comma
2021-09-30 15:53:43 +02:00
Lukas Lihotzki
85004e1faf
refactor: capture member variables as finals
2021-09-30 15:53:43 +02:00
Lukas Lihotzki
41d905ca60
refactor: use more ?.
2021-09-30 15:53:43 +02:00
Nicolas Werner
71e5ec1bb5
style: use map entry with explicit types over cast
2021-09-30 12:58:37 +00:00
Nicolas Werner
6f7f7100e1
fix: use explicit type in fold instead of cast
2021-09-30 12:58:37 +00:00
Nicolas Werner
7dd176c278
fix: apply review feedback
2021-09-30 12:58:37 +00:00
Nicolas Werner
08bbb3f6f5
fix: prefer ! over ?
2021-09-30 12:58:37 +00:00
Nicolas Werner
d15c71e5b3
fix: pre vs postcrement confusion
2021-09-30 12:58:37 +00:00
Nicolas Werner
e5682fcb91
refactor: remove clientid from encryption code
2021-09-30 12:58:37 +00:00
Nicolas Werner
1c838e3be8
fix: Cleanup nullsafe encryption a bit
2021-09-30 12:58:37 +00:00
Lukas Lihotzki
da80658c09
refactor: simplify device_keys_list.dart
2021-09-30 12:58:37 +00:00
Nicolas Werner
a196b53219
refactor: nullsafe encryption
2021-09-30 12:58:37 +00:00
Sorunome
259c9cade6
fix: missing range check
...
When requesting history the `start` parameter could become larger than the loaded events
from the database were, resulting in an error when attempting to request history.
2021-09-30 14:34:28 +02:00
Lukas Lihotzki
1d0202e14e
refactor: null safe matrix_id_string_extension
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
3b1c6e3d2b
refactor: arbitrary components in _parseIdentifierIntoUri
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
fb0ea2efc3
refactor: parseIdentifierIntoParts
2021-09-27 12:59:51 +00:00
Lukas Lihotzki
7fce5b6040
refactor: inline parseQueryString in parseIdentifierIntoParts
2021-09-27 12:59:51 +00:00