Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Element X Current Features Status #1915

Open
manuroe opened this issue Jul 19, 2023 · 55 comments
Open

Element X Current Features Status #1915

manuroe opened this issue Jul 19, 2023 · 55 comments

Comments

@manuroe
Copy link
Member

manuroe commented Jul 19, 2023

This page gives an overview of what Element X apps (Android & iOS) can and cannot do as of 2024-01-15 on Element X Android 0.7.6 and Element X iOS 1.9.10.

Homeserver requirements

The homeserver must:

  • have native Sliding Sync support. Synapse supports is since 1.114.0. A workaround option is to use a Sliding Sync proxy alongside the homeserver. EX will support SS proxies until Nov, 25th. Then, the homeserver has to support it natively
  • offer simple authentication mechanism: login + password
  • or provide OIDC authentication (see matrix-authentication-service)

The matrix.org homeserver(Synapse) natively supports SS but it is not OIDC ready yet.

Authentication

Element X is going to rely more and more on OIDC as this is the most secure way for a matrix client to connect a user to a server. OIDC avoids users to share their credentials with a random app.
During the migration, EX is still supporting native sign in for simple login+password authentication.

  • OIDC support
  • Sign In with QR Code with the QR code displayed on Element Web
  • In-App signing in with login+password
  • Account creation via OIDC
  • No OIDC support yet on the matrix.org homeserver (matrix.org users will be migrated to MAS in Feb 2025: https://matrix.org/blog/2025/01/06/authentication-changes/)
  • No Sign In with QR Code with the QR code displayed on Element X
  • No multi-account support

Room list

  • Fast display after logging in.
  • Fast update after resuming the app
  • Rooms sorted by activity
  • Last message and unread indicator for every room
  • Room filtering, filters per room types (Unreads, People, Rooms, Favourites, Invites)
  • Invites are in the room list
  • Room creation
  • No spaces
  • No global search: Just users own rooms. Matrix room directory is under a feature flag
  • No breadcrumbs

Room screen

Timeline

  • Bubbles!
  • Decryption of messages received after login
  • Inconspicuous back pagination
  • Permalink support
  • Rendered message types: text, emote, HTML, image, GIF, video, files, replies, edit, polls
  • Media caption
  • Media fullscreen display: image, video, text file, pdf
  • Media resizing before uploading
  • Voice messages
  • Reactions
  • Reactions detailed list view
  • Static Location sharing
  • Message actions: reactions, reply, edit, forward, copy, permalink, report content
  • Local echoes
  • Send failure management
  • View source
  • Pills
  • Read receipts
  • History decryption
  • Typing notification
  • No threads
  • No low priority toggle
  • No message history view (after message edition)
  • No breadcrumbs update

Known issues

  • No permanent timeline caching
    • Entering a timeline from a push may (re-) load the content
    • When scrolling fast content has to be loaded
  • When entering a room from roomlist the user will the see the most current message (end of timeline)

Composer

  • Markdown support
  • Voice messages
  • Photo & Video Library
  • Take pictures & videos
  • File Attachment
  • Rich Text Editor
  • Location sharing
  • Polls
  • Sending of typing notifications
  • Save draft when switching or leaving rooms
  • Automatic retry management
  • No multiple selection for sending media
  • No Stickers

End-to-End Encryption

  • Mandatory device verification at login
  • Key backup restoration on demand. No need to wait for the full key backup restoration like legacy apps to be able to read rooms timelines.
  • Device managers screen via OIDC
  • History decryption with message key backup
  • Message shield decoration in case of suspicious messages
  • Device list available only for users connected with OIDC
  • Device verification for both inbound and outbound requests.
  • No user verification
  • Invisible crypto WIP

Notifications

  • Notifications where you expect
  • Notification for invites
  • Notifications at global and room levels
  • No reply from a notification from lock-screen

Room detail screen

  • Edit room name, avatar and topic
  • Notifications settings
  • Member list
  • Media browser
  • Invite people
  • Leave

Settings

  • Notifications
  • Analytics preference
  • Bug report
  • Device Management (for OIDC users)
  • Advanced settings

Call with Element Call

The VoIP experience is EX is managed by Element Call:

  • Video group calls
  • Create and join Element Call from the app
  • Native integation (incoming call ringing, call log)
  • PiP
  • Element Call links tapped from another app is opened into Element X
  • No audio-only calls

Others

  • Screen lock with PIN code
  • Share extension
  • No Siri extension for iOS
  • No Integrations / Widgets / Matrix apps
  • No message search
  • No presence
  • No live location sharing

UI

  • Dark and Light mode.
@claell
Copy link

claell commented Sep 2, 2023

@manuroe Can you add support for multiple accounts to the list as currently unsupported feature?

@manuroe
Copy link
Member Author

manuroe commented Sep 4, 2023

@manuroe Can you add support for multiple accounts to the list as currently unsupported feature?

Good point. I added it.

@kubo6472
Copy link

kubo6472 commented Sep 4, 2023

Is "Element X missing from the share dialog of other apps (at least on Android)" already mentioned, please?

@ofifoto
Copy link

ofifoto commented Sep 4, 2023

Is "Element X missing from the share dialog of other apps (at least on Android)" already mentioned, please?

missing from iOS as well as well as Shortcuts support

@manuroe
Copy link
Member Author

manuroe commented Sep 6, 2023

Is "Element X missing from the share dialog of other apps (at least on Android)" already mentioned, please?

EX apps do not have the share from other apps capability. I added it to the list. Thanks for the report

@ofifoto
Copy link

ofifoto commented Sep 6, 2023

EX apps do not have the share from other apps capability. I added it to the list. Thanks for the report

Thanks! Can we include Shortcuts support along with that? I'm not sure it comes automatically... It was previously working in the old iOS app, before both were both were removed within the last month due to the encrypted rooms thing

@LecrisUT
Copy link

It would be good to have either individual issues for these features or have announcement posts on this issue (not just edits to the top level comment). That way we have a place to subscribe for key features we desire

@Pheromon
Copy link

is a element-x client for desktop and/or web planned?

@genofire
Copy link

Is OLM be replaced with MLS in future (or the implementation openMLS)?
https://arewemlsyet.com/

i believe to use standarized E2EE make Element ready for the feature too

@K4LCIFER
Copy link

Would it be possible to separate each category into "Implemented", and "Not implemented"? It removes the intereperetation of the wording from the post.

@timokoesters
Copy link

Is sending voice messages planned in the near future?

Also, I think this is outdated: "No setting for notifications on room- or app-level"

@kittykat
Copy link
Contributor

kittykat commented Oct 10, 2023

Is sending voice messages planned in the near future?

Voice messages are currently being worked on: #2057

is a element-x client for desktop and/or web planned?

Element web/desktop is receiving the Element X updates, but will not have a rewrite from scratch. Updates include sharing major components with the mobile apps, such as the encryption library, and new designs. They are landing with every release so you should be seeing improvements regularly.

It would be good to have either individual issues for these features or have announcement posts on this issue (not just edits to the top level comment). That way we have a place to subscribe for key features we desire

You will find Epics, which are broken down into stories in this (element-meta) repository for all features. They are filed as we go along so please keep checking back. We are not filing all work too far ahead of time (e.g. we haven't filed issues for next year's work yet) so that we don't clog up our backlog and can keep it relevant.

@Roomba5
Copy link

Roomba5 commented Oct 10, 2023

Any updated timeline on SSO implementation?

I would love to test elementX on iOS, but my server uses Authentik for user management not login and password.

Thanks

@uhoreg
Copy link
Member

uhoreg commented Oct 10, 2023

Is OLM be replaced with MLS in future (or the implementation openMLS)? https://arewemlsyet.com/

i believe to use standarized E2EE make Element ready for the feature too

We are looking into integrating MLS into Matrix, but we are undecided whether MLS will completely replace Olm/Megolm, or whether both will be supported at the same time.

@claell
Copy link

claell commented Nov 10, 2023

Would it be possible to separate each category into "Implemented", and "Not implemented"? It removes the intereperetation of the wording from the post.

Better: Have a checklist. It's not hard and makes it additionally very easy to mark things as done.

Additionally, can the corresponding existing issues for features be linked (if they exist)?

@manuroe

@SNThrailkill
Copy link

Any updated timeline on SSO implementation?

I would love to test elementX on iOS, but my server uses Authentik for user management not login and password.

Thanks

Im in the same boat, OIDC with Keycloak. Any update on OIDC support? Is there an issue or PR I can track?

@viviicat
Copy link

Is there a plan to be able to join public rooms from element x? if i wanted to join #emacs:matrix.org for example. I was unable to find this when searching for issues.

@jacotec
Copy link

jacotec commented Dec 14, 2023

Any updated timeline on SSO implementation?
I would love to test elementX on iOS, but my server uses Authentik for user management not login and password.
Thanks

Im in the same boat, OIDC with Keycloak. Any update on OIDC support? Is there an issue or PR I can track?

@SNThrailkill Already implemented, you need to put MAS in between. Keycloak works as the upstream OIDC for MAS, you need to make an initial sync with Syn2MAS. Did that around 3 weeks ago on my server, works pretty good.

So migrating a homeserver which currently uses OIDC directly via keycloak needs:

  • Put Sliding Sync Proxy (Syncv3) in front
  • Install and configure MAS, using your Keycloak as upstream OIDC
  • Sync your users via Syn2MAS

MAS can be tricky, I'd recommend taking a VM snapshot before doing the user sync ;-)

You can then use Element-X along the old Element clients. I need to keep the old Element on my devices to have features which are currently not supported by EX like direct voice/video calls.

@SNThrailkill
Copy link

@jacotec I had no idea this was a piece of Matrix 2.0. Thank you so much, I'll set this up and start filing reports!

@beposec
Copy link

beposec commented Dec 18, 2023

I'd like to request the reintroduction of the image size adjustment feature when sending images via the 'Element X' Messenger App. This functionality was available in the older 'Element' App and would greatly enhance user experience. Thank you for considering this enhancement!

@skug67
Copy link

skug67 commented Dec 25, 2023

Why are favorites and Spaces not part of the feature-list/timeline. It's basically impossible to keep chats usefully organized in the current state, which makes it borderline unusable.

@ZelChief
Copy link

ZelChief commented Jul 1, 2024

The matrix.org homeserver is SS ready but not OIDC ready yet.

When do you planning to release OIDC authentication?

@genofire
Copy link

genofire commented Jul 3, 2024

@ZelChief on your own homeserver you could use the matrix-authentication-service.

on the homeserver matrix.org there is no OIDC needed.

@jessebot
Copy link

Feature request: URL previews in encrypted rooms in element-x mobile apps as per element-hq/element-android#2555 (comment)

@alexander-potemkin
Copy link

Are you planning to support Jitsi calls or that's going to be deprecated?

@parisni
Copy link

parisni commented Jul 21, 2024

@ZelChief on your own homeserver you could use the matrix-authentication-service.
on the homeserver matrix.org there is no OIDC needed.

@genofire would the standard synapse oidc also work ? can you elaborate why matrix authentication service would work and not the former, thx a lot

@jessebot
Copy link

Can I request that the description of this issue be converted to a check instead of a bulleted list? That way it's easier to follow what's available and what's not available yet?

@saihaze
Copy link

saihaze commented Aug 15, 2024

When you implement message search, please consider:

  1. Support CJK languages.
  2. Allow user to choose between client-/server-side search.

@cyrneko
Copy link

cyrneko commented Aug 16, 2024

When you implement message search, please consider:

1. Support CJK languages.

2. Allow user to choose between client-/server-side search.

It'll probably be client-side as that'll be significantly faster, if I had to guess

@Roomba5
Copy link

Roomba5 commented Aug 22, 2024

@ZelChief on your own homeserver you could use the matrix-authentication-service.
on the homeserver matrix.org there is no OIDC needed.

@genofire would the standard synapse oidc also work ? can you elaborate why matrix authentication service would work and not the former, thx a lot

I am wondering the same thing. I have integrated the standard synapse oidc is not supported in the apps? It works fine in element web, but is the only thing stopping me from being able to use Element X on my home server.

@jacotec
Copy link

jacotec commented Aug 22, 2024

@ZelChief on your own homeserver you could use the matrix-authentication-service.
on the homeserver matrix.org there is no OIDC needed.

@genofire would the standard synapse oidc also work ? can you elaborate why matrix authentication service would work and not the former, thx a lot

I am wondering the same thing. I have integrated the standard synapse oidc is not supported in the apps? It works fine in element web, but is the only thing stopping me from being able to use Element X on my home server.

Yap, you need MAS in between your upstream OIDC and Synapse to use Element-X. It will still work with the legacy Element app then.

@dani
Copy link

dani commented Sep 23, 2024

Could you clarify if MAS will always be needed, or if support for Synapse OIDC will be added in the future. Asking because MAS seems overkill (much more complicated, with no to few advantages) for small self-hosted instances using OIDC.

@manuroe
Copy link
Member Author

manuroe commented Sep 25, 2024

@dani: EX will only support MAS. Authentication APIs are too complex in Matrix and out of of its core domain. They represented a significant percentage of the whole Matrix CS API. We want to reduce this as much as possible in EX to avoid support and maintenance complexities. So, the target for EX is MAS only.
Hopefully, MAS setup within servers like Synapse will get easier and easier, if not automatic.

@matebitte
Copy link

matebitte commented Sep 30, 2024

https://element.io/labs/element-x redirects to a page advertising threads above the element-x download. As far as I know, they are not implemented in iOS or Android and do not appear here as well.

Now im wondering if this site is false advertising or a teaser

@henningoschwald
Copy link

The current list does not mention slash commants (i.e. /me, /join, /topic, etc.) and neither the colon commands to enter emojies. Are these still planned for EX? If this is the case (as I'm hoping a lot), you might want to add it to the list.

@AndrewKvalheim
Copy link

AndrewKvalheim commented Oct 8, 2024

https://element.io/labs/element-x redirects to a page advertising threads above the element-x download. As far as I know, they are not implemented in iOS or Android and do not appear here as well. Now im wondering if this site is false advertising or a teaser

It’s misleading. Today I was curious about Element X, followed the link to learn about it, and was presented with a huge graphic advertising support for threads.

screenshot

It would be helpful to have this feature tracked in a dedicated issue that I could watch to be notified when I can start using Element X.

@PaarthShah
Copy link

Yeah, I got bamboozled by the idea that threads may actually be available now... They aren't.

@wrenix
Copy link

wrenix commented Oct 22, 2024

Missing in the List above:

@akoyaxd
Copy link

akoyaxd commented Nov 21, 2024

I'd suggest to add missing notification redaction e.g. for messages that were read on another device as a missing feature. At least on android it is still missing.

Edit: Links on Apps

@bro2020
Copy link

bro2020 commented Dec 8, 2024

The main reason I can't switch to Element X is the lack of audio calls. I also haven't found any information whether this feature is planned or if the developers believe that a video call with the camera turned off can be called an audio call (I hope not)

@alexander-potemkin
Copy link

The main reason I can't switch to Element X is the lack of audio calls. I also haven't found any information whether this feature is planned or if the developers believe that a video call with the camera turned off can be called an audio call (I hope not)

... you mean like it's implemented currently at mobile clients? :)
Jokes aside, from what I understand, technically, audio & video calls are managed the same and it's just a video that adds on top (if it does) - guess that's the source of that kind of approach in UI as well - not very natural for a 'regular' human beings, indeed.

@saihaze
Copy link

saihaze commented Jan 6, 2025

... you mean like it's implemented currently at mobile clients? :) Jokes aside, from what I understand, technically, audio & video calls are managed the same and it's just a video that adds on top (if it does) - guess that's the source of that kind of approach in UI as well - not very natural for a 'regular' human beings, indeed.

Element call is a private feature of Element. It doesn't work with other clients, even the classic Element.

Element is breaking Matrix into two parts: Element and non-Element. If this continues, Element will either be the only Matrix client on earth, or the one given up by users.

@Thatoo
Copy link

Thatoo commented Jan 6, 2025

How can Element call be private and AGPL3 licensed?
How is it that ElementX and Fluffychat can communicate throw Element call if only Element can use it?
How is it that I use Element call in classic Element and you say it doesn't work.
image

What was exactly the purpose of your message?

@saihaze
Copy link

saihaze commented Jan 6, 2025

How can Element call be private and AGPL3 licensed?

I don't mean it's proprietary software. I meant it's non-standard. But after your reply I had a try and found out that it is actually standard Matrix spec. Sorry for that.

How is it that ElementX and Fluffychat can communicate throw Element call if only Element can use it?

No they can't.

How is it that I use Element call in classic Element and you say it doesn't work.

I mean the Element Android app.

What was exactly the purpose of your message?

I thought it is not standard but that's not the case. Sorry!

@Thatoo
Copy link

Thatoo commented Jan 6, 2025

How is it that ElementX and Fluffychat can communicate throw Element call if only Element can use it?

No they can't.

Yes they can : https://archive.fosdem.org/2024/schedule/event/fosdem-2024-2876-matrixrtc-the-future-of-matrix-calls/
Might not yet be implemented yet in the daily version of fluffychat but technically, it's possible and on the way.

How is it that I use Element call in classic Element and you say it doesn't work.

I mean the Element Android app.

This app will be replaced by ElementX when ElementX is ready (under heavy dev currently)

@saihaze
Copy link

saihaze commented Jan 6, 2025

How is it that ElementX and Fluffychat can communicate throw Element call if only Element can use it?

No they can't.

Yes they can : https://archive.fosdem.org/2024/schedule/event/fosdem-2024-2876-matrixrtc-the-future-of-matrix-calls/ Might not yet be implemented yet in the daily version of fluffychat but technically, it's possible and on the way.

How is it that I use Element call in classic Element and you say it doesn't work.

I mean the Element Android app.

This app will be replaced by ElementX when ElementX is ready (under heavy dev currently)

I see. Thank you for your explanation and sorry again for my misunderstanding! Just now I read more about Element Call and related Matrix specs. They are really game-changing and I can't wait to see it widely implemented!

@Thatoo
Copy link

Thatoo commented Jan 6, 2025

You're welcome. Same, can't wait.

@bro2020
Copy link

bro2020 commented Jan 6, 2025

The main reason I can't switch to Element X is the lack of audio calls. I also haven't found any information whether this feature is planned or if the developers believe that a video call with the camera turned off can be called an audio call (I hope not)

... you mean like it's implemented currently at mobile clients? :) Jokes aside, from what I understand, technically, audio & video calls are managed the same and it's just a video that adds on top (if it does) - guess that's the source of that kind of approach in UI as well - not very natural for a 'regular' human beings, indeed.

You completely misunderstand. Audio calling, which is currently implemented in the main version of the Element application, provides a full-fledged call interface. Including turning off the screen when raising the phone to your ear. Normal control of the sound output device. All this is critical for calls. And the way Element Call is currently implemented is pathetic. It can only be used as an alternative to Google Meet. This is about something completely different. And the scariest thing is that the development team considers this correct.

@archerallstars
Copy link

@AndrewKvalheim

It would be helpful to have this feature tracked in a dedicated issue that I could watch to be notified when I can start using Element X.

Here it is: element-hq/element-x-android#2831

I am also waiting for threads before I can move to X.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests