Jonas Platte
8deb0ff2e1
base: Handle redactions if e2ee is disabled
2023-08-23 17:20:26 +02:00
Jonas Platte
2fb6bdc24c
Fix more clippy lints
2023-08-23 17:20:11 +02:00
Jonas Platte
24d2ccd5f0
base: Make BaseRoomInfo::handle_redaction private
...
It should only be called from RoomInfo::handle_redaction.
2023-08-23 17:19:51 +02:00
Jonas Platte
9fc5a7dc92
base: Add some logging for handle_redaction
2023-08-23 17:19:51 +02:00
Daniel Abramov
6ecd640ad7
Widget API: Initial skeleton
2023-08-23 15:08:51 +00:00
Marco Romano
3bc7b9136e
ui: Add support for polls in timeline
2023-08-23 12:57:52 +00:00
Ivan Enderlin
4dbb0a7cc7
fix(ui): Tweak State of RoomListService when session is forced to expire
...
fix(ui): Tweak `State` of `RoomListService` when session is forced to expire
2023-08-23 13:28:08 +02:00
Ivan Enderlin
2dd1caaeab
doc(sdk,ui): Fix typos.
2023-08-23 13:07:24 +02:00
Ivan Enderlin
6736a4a05f
Update crates/matrix-sdk-ui/src/room_list_service/mod.rs
...
Co-authored-by: Jonas Platte <jplatte+git@posteo.de >
2023-08-23 13:05:21 +02:00
Ivan Enderlin
8c234f0d0d
test(ui): Test that RoomList::expire_sync_session ends up in Error.
2023-08-23 12:13:54 +02:00
Jonas Platte
4df1ee140a
Fix clippy lints
2023-08-23 11:36:21 +02:00
Ivan Enderlin
0dacf6edc3
fix(ui): Tweak State of RoomList when session is forced to expire.
...
Usually, when the sliding sync session expires, it leads the state to
be `Error`, thus some actions (like refreshing the lists) are executed.
However, if the sync-loop has been stopped manually, the state is
`Terminated`, and when the session is forced to expire, the state
remains `Terminated`, thus the actions aren't executed as expected.
Consequently, this patch updates the state to `Error` manually.
2023-08-23 11:24:01 +02:00
Ivan Enderlin
5b28e641c4
Merge pull request #2441 from matrix-org/dependabot/cargo/rustls-webpki-0.101.4
...
chore(deps): bump rustls-webpki from 0.101.2 to 0.101.4
2023-08-23 09:17:11 +02:00
dependabot[bot]
9bf214925c
chore(deps): bump rustls-webpki from 0.101.2 to 0.101.4
...
Bumps [rustls-webpki](https://github.com/rustls/webpki ) from 0.101.2 to 0.101.4.
- [Release notes](https://github.com/rustls/webpki/releases )
- [Commits](https://github.com/rustls/webpki/compare/v/0.101.2...v/0.101.4 )
---
updated-dependencies:
- dependency-name: rustls-webpki
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-22 18:10:40 +00:00
Jonas Platte
0d24bcf6e5
Revert "bindings: Use new uniffi-bindgen build mode"
...
This reverts commit 329b6c4eb1 .
2023-08-22 18:40:20 +02:00
Kévin Commaille
e01421a3dd
Upgrade Ruma
...
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2023-08-22 17:25:02 +02:00
Jonas Platte
329b6c4eb1
bindings: Use new uniffi-bindgen build mode
2023-08-22 11:12:55 +02:00
Jonas Platte
ef0549b8b8
xtask: Use camino path types
2023-08-22 11:12:55 +02:00
Doug
60392c299d
bindings: Add OIDC support to AuthenticationService
...
- Use OIDC for logout when appropriate.
- Allow server's that support OIDC but not passwords to work.
- Only sign out users if token refresh is explicitly refused.
- Expose the OIDC account URL.
- Support for RP initiated logout.
2023-08-22 09:06:32 +00:00
Benjamin Bouvier
4493cbf0ac
chore: rework Room::sync_up so it's really async
2023-08-21 19:36:33 +02:00
Benjamin Bouvier
b7e18352c4
fix: read RoomInfo data at the very last minute before saving it
...
Also take ownership of the sync lock in write mode, since this operation could run concurrently
to room_joined/room_left events.
2023-08-21 19:36:33 +02:00
Benjamin Bouvier
936b6980c9
chore: move SyncTokenAwareClient to the common test helpers
2023-08-21 19:36:33 +02:00
Benjamin Bouvier
e262db3505
test: write an integration test for missing keys during encryption
2023-08-21 19:36:33 +02:00
Benjamin Bouvier
0d67d14201
feat: query keys for newly sync'd members when sending encrypted message
2023-08-21 19:36:33 +02:00
Jonas Platte
78ad6a6530
ui: Remove JSON on RemotEventTimelineItem when it's redacted locally
2023-08-21 15:54:25 +02:00
Jonas Platte
a5a541ec98
ui: Improve comment in redaction code
...
(move it to a more logical place)
2023-08-21 15:54:25 +02:00
Jonas Platte
d395648165
ui: Remove outdated comment
...
The relevant decryption work is already done in a separate async task,
spawned in `TimelineInner::retry_event_decryption_inner`.
2023-08-21 15:00:00 +02:00
Benjamin Bouvier
f5ab1084eb
fix: temporarily use the pip install method for the setup-matrix-synapse action
...
Until https://github.com/michaelkaye/setup-matrix-synapse/issues/95 is properly resolved.
2023-08-21 11:54:25 +02:00
Benjamin Bouvier
81daf5c90a
test(sliding sync): add test that caused a deadlock before this PR
2023-08-21 11:48:51 +02:00
Benjamin Bouvier
c0b18c291d
chore: make clippy happy
2023-08-21 11:48:51 +02:00
Benjamin Bouvier
6988bd1e6f
feat(sliding sync): remove the response_handling_lock and extend the position's lock responsibilities
...
In the previous situation, we had two locks with similar responsibilities, the `response_handling_lock`
and the `position` lock. The latter *almost* covered the former's critical zone, albeit for a single
function call, which left room for a deadlock situation (latter taken, then former, then latter).
This removes the former, and extends the critical zone of the latter up to the end of the response handling,
removing the possibility of the deadlock entirely.
2023-08-21 11:48:51 +02:00
Ivan Enderlin
54771eadcf
fix(ffi): Fix a keyword conflict with Swift
...
fix(ffi): Fix a keyword conflict with Swift
2023-08-21 11:35:09 +02:00
Ivan Enderlin
64f3bc674e
feat(ui): Create a new normalized_match_room_name filter
...
feat(ui): Create a new `normalized_match_room_name` filter
2023-08-21 11:27:53 +02:00
Ivan Enderlin
b78372d4bb
chore(cargo): Update UniFFI.
2023-08-21 11:07:32 +02:00
Ivan Enderlin
102482c6e3
fix(ffi): Fix a keyword conflict with Swift.
2023-08-21 10:32:33 +02:00
Ivan Enderlin
9973d30700
feat(ffi): Implement RoomListEntriesDynamicFilterKind::NormalizedMatchRoomName.
2023-08-21 10:22:06 +02:00
Ivan Enderlin
2821807e14
feat(ui): Create a new normalized_match_room_name filter.
...
This patch creates a new `normalized_match_room_name` filter for
`RoomListService`.
2023-08-21 10:19:20 +02:00
Ivan Enderlin
14f8b33136
Merge pull request #2425 from matrix-org/jonny/message-content-from-html
...
Add binding to create message events from HTML
2023-08-21 09:48:35 +02:00
Ivan Enderlin
e9a9382b2b
RoomInfo: Remove is_encrypted use sliding sync room avatars
...
RoomInfo: Remove is_encrypted use sliding sync room avatars
2023-08-21 09:43:05 +02:00
jonnyandrew
5497a8de2c
Add binding to create message event from HTML
2023-08-18 16:03:03 +01:00
Stefan Ceriu
531d1d9761
Read the room avatar URL from the RoomListService room instead of the SDK room so that DMs are populated correcty
2023-08-18 17:54:23 +03:00
Benjamin Bouvier
88018c259f
Revert upgrade to uniffi since it broke generation of swift bindings
2023-08-18 12:07:36 +02:00
Stefan Ceriu
531d8d220d
Remove is_encrypted from room info as it's not used and it might do network calls and slow down room list updates
2023-08-18 11:36:01 +03:00
Ivan Enderlin
d077892ad4
chore(uniffi): Update uniffi to another branch
...
chore(uniffi): Update `uniffi` to another branch
2023-08-17 18:29:05 +02:00
Ivan Enderlin
cc46417ec5
Merge branch 'main' into hywan/fix-android-uniffi-async-bis
2023-08-17 18:27:54 +02:00
Ivan Enderlin
4d7f951128
chore(cargo): Update UniFFI to main (specific commit).
2023-08-17 18:26:21 +02:00
Ivan Enderlin
92284a353e
feat(sdk): SlidingSync is able to “ignore” some errors
...
feat(sdk): `SlidingSync` is able to “ignore” some errors
2023-08-17 16:50:12 +02:00
Ivan Enderlin
73bb46b5ea
Revert "feat(sdk): SlidingSync makes timed out silent."
...
This reverts commit 9b811009e1 .
We have realized that the server might not handle timeouts as expected.
Thus, it's hard to know the difference between network timeout and poll
timeout (resp. the server is unreachable vs. the server has nothing to
respond with). We will come back on this later.
2023-08-17 16:27:12 +02:00
Ivan Enderlin
9b811009e1
feat(sdk): SlidingSync makes timed out silent.
...
As a sequel of the previous commit (d4cbcd397d ), this patch updates
`SlidingSync` to “ignore” timeouts, i.e. timeouts aren't reported to the
caller, and aren't stopping the sync-loop.
2023-08-17 15:37:25 +02:00
Ivan Enderlin
d4cbcd397d
feat(sdk): SlidingSync is able to ignore some errors.
...
All errors inside `SlidingSync` are stopping the sync-loop, and errors
are returned to the caller. However, in some situation, some errors
should be ignored, i.e. they should not stop the sync-loop and they
should not be returned to the caller: the sync-loop just continues to
run. This patch does that for `Error::ResponseAlreadyReceived`. More
errors will come.
Why is it annoying? When `matrix_sdk_ui::SyncService` sees an error,
it stops all the sync-loops (`RoomListService`, `EncryptionSync`…) and
restarts them properly. In the case of `Error::ResponseAlreadyReceived`,
this is a waste of time and resources. This error is an error from the
`SlidingSync` point of view, but _not_ from the caller point of view.
2023-08-17 15:35:51 +02:00