Stefan Ceriu be4c5365ad Introduce a TimelineItemThreadSummary object (#4032)
* Introduce a `TimelineItemThreadSummary` object to hold details about threads starting from that particular item

This patch introduces a thread summary object that will be available on main timeline messages that are the root for a given thread.
It currently provides the latest message content and sender for that thread but it will grow to provide info on the number of replies, unreads etc.

It also add a new UI component called `TimelineThreadSummaryView` that makes use of this data and is in turn used by the bubbled styler to render it in the timeline.

The rest of the PR is about refactoring on the `RoomTimelineItemFactory` so that replies and thread summaries use similar paths and builders.

* Add a feature flag for threads

* Address PR comments

* Converge on single implementation for message previews
2025-04-16 16:19:29 +03:00
2025-03-25 16:14:23 +00:00
2025-04-14 14:15:42 +02:00
2025-03-25 12:17:11 +01:00
2025-04-10 03:35:08 -07:00
2025-01-16 09:03:00 +02:00
2024-09-06 16:34:30 +03:00

Element iOS Matrix room #element-x-ios:matrix.org GitHub

Build Status GitHub release (latest by date)

codecov Quality Gate Status Vulnerabilities Bugs

Element X iOS

Element X iOS is a Matrix iOS Client provided by Element.

The application is a total rewrite of Element iOS using the Matrix Rust SDK underneath and targeting devices running iOS 17+.

Rust SDK

Element X leverages the Matrix Rust SDK through an FFI layer exposed as a swift package that the final client can directly import and use. We're doing this as a way to share code between platforms, with Element X Android using the same SDK.

Status

This project is in an early rollout & migration phase.

Contributing

Please see our contribution guide.

Come chat with the community in the dedicated Matrix room.

Build instructions

Please refer to the setting up a development environment section from the contribution guide.

Support

When you are experiencing an issue on Element X iOS, please first search in GitHub issues and then in #element-x-ios:matrix.org. If after your research you still have a question, ask at #element-x-ios:matrix.org. Otherwise feel free to create a GitHub issue if you encounter a bug or a crash, by explaining clearly in detail what happened. You can also perform bug reporting (Rageshake) from the Element application by going to the application settings. This is especially recommended when you encounter a crash.

Forking

Please read our forking guide.

Copyright (c) 2022 - 2025 New Vector Ltd

This software is dual licensed by New Vector Ltd (Element). It can be used either:

(1) for free under the terms of the GNU Affero General Public License (as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version); OR

(2) under the terms of a paid-for Element Commercial License agreement between you and Element (the terms of which may vary depending on what you and Element have agreed to).

Unless required by applicable law or agreed to in writing, software distributed under the Licenses is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the Licenses for the specific language governing permissions and limitations under the Licenses.

Description
No description provided
Readme AGPL-3.0 432 MiB
letro-v1.1.0 Latest
2026-05-13 09:29:03 +00:00
Languages
Swift 99.9%