407 Commits

Author SHA1 Message Date
Doug
a4ea552a83
Show a verification badge on the Room Member/User Profile screens. (#3427)
* Add a badge for verified users/room members.

* Reorder subviews.

* Add a (disabled) button to verify other users.

* PR comments.

* Update the SDK.

* Adopt the SDK changes introduced in matrix-rust-sdk/pull/4100

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2024-10-21 16:07:19 +01:00
Doug
a0c81cf393
Add support for rendering media captions in the timeline. (#3429) 2024-10-21 15:29:03 +01:00
Stefan Ceriu
0651314e3e
Adopt various rust side Timeline API additions (#3423)
* Adopt new reaction toggling API introduced in matrix-org/matrix-rust-sdk/pull/4127

* Adopt the changes introduced in matrix-org/matrix-rust-sdk/pull/4111: use the new `TimelineUniqueId` type instead of `String` for unique timeline identifiers.

* Bump the RustSDK to v1.0.58.

* Fix unit tests
2024-10-16 19:08:34 +03:00
Stefan Ceriu
35d49c4d85 Refactor theTimelineItemIdentifier handling; stop relying on optional EventOrTransactionIds and be explicit when setting composer modes from the draft service. 2024-10-16 16:37:47 +03:00
Doug
718774dc36
Fix some warnings. (#3416) 2024-10-16 08:54:34 +01:00
Doug
b1b2297972
Update the SDK. (#3407)
Fixes a bug where we couldn't open images sent by EXA with a mimetype of image/*
2024-10-14 14:59:09 +02:00
Doug
6e51969d27
Update the SDK and use media filename and caption internally. (#3375)
Doesn't render captions (other than in fallback places).
2024-10-08 11:00:58 +01:00
Stefan Ceriu
794d0eead1 Fixes element-hq/element-meta/issues/2525 - Display a warning when a user's pinned identity changes 2024-10-07 20:47:31 +03:00
Doug
e6f4dd33a0
Add developer option to hide media in the timeline. (#3366) 2024-10-03 17:59:39 +01:00
Stefan Ceriu
c79dbe85a0
Bump the RustSDK to v1.0.53: adopt latest record based timeline item APIs (#3356) 2024-10-01 18:50:11 +03:00
Doug
e4736b12bb
A bunch of random tweaks. (#3317)
- Fix warning on single case enum.
- Remove unused subjects.
- Fix a lint warning.
- Remove unused success value.
- Fix warning about position of try await.
- Add a note about the common tracing configuration.
- Show an indicator when resolving a send failure fails.
- Make sure the whole row is clickable in the GlobalSearchScreen.
2024-09-23 13:00:40 +01:00
Mauro
0d9d8f9fa4
Sdk v1.0.47 (#3265) 2024-09-11 15:55:15 +02:00
Doug
cc4942fb78
Require acknowledgement to send to verified users who have unsigned devices or have changed their identity. (#3215)
* Refactor HeroImage style.

* Add a screen to resolve (crypto-related) timeline item send failures.

* Refactor send failures.

* Update the SDK.
2024-09-10 09:56:11 +01:00
Stefan Ceriu
a4166de502 Add support for showing media playback controls on the lock screen 2024-09-09 14:42:32 +03:00
Stefan Ceriu
664e87fe87
Switch license to AGPL (#3237)
* Switch license file to AGPL

* Update file copyright headers

* Update the default project file header
2024-09-06 16:34:30 +03:00
Stefan Ceriu
7b03c23baa Bump the RustSDK to v1.0.44 2024-09-04 10:53:30 +03:00
Doug
342ad57ce7 Update the SDK. 2024-08-30 14:45:54 +03:00
Stefan Ceriu
b1af4afdcb Fixes #3110 - Manually populate profiles when displaying the timeline. 2024-08-29 16:22:44 +03:00
Doug
812c5d5c61
Update the SDK (#3196)
* Update the SDK.

* Fix API breaks on send failures and propagate the new type.

* Handle new SDK ShieldState.

* Set up the ClientBuilder's `cachePath` option.

* Delete the cacheDirectory during logout/clearCache.

* Add unit tests for RestorationToken decoding and SessionDirectories generation.
2024-08-27 11:06:26 +01:00
Mauro
993fe8cd36
TimelineKind refactor (#3193) 2024-08-22 18:33:21 +00:00
Mauro
4eb1ed5d09
Pinned Events Timeline actions and differentiation (#3182) 2024-08-22 17:35:44 +02:00
Stefan Ceriu
e281a3f242 Introduce a new RoomProxyType and treat rooms differently based on their membership state 2024-08-21 12:24:20 +03:00
Doug
6616d1799f
Remove encryption authenticity feature flag. (#3180) 2024-08-19 09:49:10 +01:00
Mauro
1ad361a6e8
RoomScreenViewModel is now TimelineViewModel (#3157)
Co-authored-by: Stefan Ceriu <stefanc@matrix.org>
2024-08-13 13:36:40 +02:00
Mauro
ed7d3b0b13
Navigate to the Pinned events timeline (#3139) 2024-08-08 18:29:39 +02:00
Stefan Ceriu
0c47ea7231 Delete more unnecessary logs 2024-08-07 17:53:10 +03:00
Mauro
a39a8f9bd0
state events for pinning and unpinning (#3123) 2024-08-06 17:30:42 +02:00
Doug
e2712f6b0a
Finalise strings/icons for EncryptionAuthenticity. (#3121) 2024-08-06 15:03:11 +01:00
Doug
e667be0f43
Add Encryption Authenticity explanations. (#3116) 2024-08-06 10:45:46 +01:00
Mauro
ff2c42d53b
Pinned items timeline implementation for the banner (#3099) 2024-08-05 14:09:05 +02:00
Valere
a11faeb131
Show Encryption Authenticity warnings on messages in the timeline. (#3051)
* Initial implementation.

* Add developer option for showing timeline item authenticity.

* Refactor code to use new SendInfo.Status.

---------

Co-authored-by: Doug <douglase@element.io>
2024-08-05 11:15:38 +00:00
Doug
a2ea9c4a06
Refactor TimelineItemSendInfo out of the styler. (#3100)
* Reorder some properties.

No code changes.

* Refactor TimelineItemSendInfo out of the styler.

* Add (unused) examples of encryption shields.

* Rename file.
2024-07-30 09:43:17 +01:00
Mauro
0da2d4917b
Pin/Unpin Logic (#3084) 2024-07-26 20:41:00 +02:00
Mauro
ff33c07596
Fix editing items not in the timeline failing (#3075) 2024-07-22 13:15:57 +02:00
Doug
6339fe2bf0
Fix a potential race condition when redacting a message. (#3061)
* Refactor the timeline item menu action provider.

- Move it into its own struct.
- Use an item, not an ID so it doesn't randomly change.
- Move permissions into the room screen view model.

* Use the stable ID when redacting/editing/forwarding a message.

Just like we do when fetching the item in the actions menu.
2024-07-18 15:14:38 +01:00
Doug
95d53f1edf
Update the SDK fixing a few room list bugs. (#3054)
* Update the SDK.

* Handle API break for editing timeline items.

* Handle API break for Element Call
2024-07-17 15:48:32 +01:00
Mauro Romito
7a09be192e fix 2024-07-05 12:56:02 +02:00
Mauro
dac363c8c5
Edit by timeline item only if the event id is missing (#2989) 2024-07-02 11:14:15 +02:00
Stefan Ceriu
ab299ab3de Add support for editing local echoes. 2024-06-28 14:28:33 +03:00
Mauro
b7345aafca
Remove layout styling abstraction (#2982) 2024-06-27 18:25:25 +02:00
Mauro
064b1bf224
Remove plain style layout (#2980) 2024-06-27 16:53:19 +02:00
Doug
d977efdf31
Stop the timeline from requesting back pagination whilst loading existing items. (#2969)
* Handle Rust error "can't subscribe to the back-pagination status on a focused timeline"

* Fix a bug where the timeline was attempting to paginate before adding the items.

* Stop the timeline from paginating whilst loading existing items.
2024-06-27 14:20:44 +01:00
Mauro
b94111af26
fix (#2942) 2024-06-19 15:30:27 +02:00
Mauro
f16b9aad0a
Update SDK (#2941) 2024-06-19 12:24:22 +00:00
Stefan Ceriu
4a9de65030 Fixes #2679 - Timestamps in room list inconsistently use absolute and relative formatting 2024-06-19 14:38:00 +03:00
Stefan Ceriu
75e8bbd67c
Handle sending queue recoverable errors the same way as unsent messages. (#2939) 2024-06-18 17:06:05 +01:00
Stefan Ceriu
63524bff62 Bring back failed message state rendering and a redaction option. Bump the RustSDK to 1.0.15 2024-06-18 13:07:16 +03:00
Mauro
cefa38049f
Store and restore drafts (#2898) 2024-06-13 12:19:38 +00:00
Stefan Ceriu
8b3141ffec Bump the SDK and handle breaking changes on timeline diffing
- avoid race conditions between when a timeline listener starts publishing to the `updatePublisher` and when they are consumed (and in which order)
- subscribe to the timeline directly in the TimelineProvider and correctly process updates serially
- update the AutoUpdatingRoomTimelineProviderMock to use an SDK TimlineMock and listener to publish updates
2024-06-13 14:38:33 +03:00
Stefan Ceriu
a2faae20c2 Allow showing the developer options on any build type by tapping the settings screen version footer 7 times (a la android) 2024-06-12 13:07:00 +03:00