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

[Story] Banner for unverified user identity change #2544

Open
3 tasks
manuroe opened this issue Sep 30, 2024 · 4 comments
Open
3 tasks

[Story] Banner for unverified user identity change #2544

manuroe opened this issue Sep 30, 2024 · 4 comments

Comments

@manuroe
Copy link
Member

manuroe commented Sep 30, 2024

Description

  • As a user
  • I want to be informed when an unverified user has changed their identity keys
  • So that I can make a conscious decision before posting a message in a room

We are to implement the temporary flow version from figma. The Final version will happen with invisible crypto.

Acceptance criteria

  • The banner is displayed close to the composer and does not affect the timeline interactions (srolling, URL navigation)
  • It is displayed when the user opens the room
  • It stays until the user tapped ok
  • It pops up in realtime once SDK/Crypto detects the change
  • It is displayed once per identity change. SDK/Crypto stores the user acknownledgment
  • A single identity change is shown at a time as a "FIFO". If the user acknowledges one and it there are more, the app must display the banner for the next unverified user identity change
  • Tech one: the banner component should be reusable. We are going to use it with invisible crypto on such screen

API

The API is being implemented in #2526 - see branch https://github.com/matrix-org/matrix-rust-sdk/tree/andybalaam/room-identity-stream until it is merged.

Summary:

Call this method in matrix_sdk_ffi::room::Room:

    pub fn subscribe_to_identity_status_changes(
        &self,
        listener: Box<dyn IdentityStatusChangeListener>,
    ) -> Arc<TaskHandle>

Passing in one of these:

pub trait IdentityStatusChangeListener: Sync + Send {
    fn call(&self, identity_status_change: Vec<IdentityStatusChange>);
}

Size estimate

None

Dependencies

  • None

Out of scope

  • Nothing

Open questions

Questions

No tasks being tracked yet.

Subtasks

Android

  1. bmarty

iOS

Rust

  1. andybalaam

Other

No tasks being tracked yet.
@richvdh
Copy link
Member

richvdh commented Sep 30, 2024

I think this is a duplicate of #2492 ?

@andybalaam
Copy link

I think this is a duplicate of #2492 ?

No, 2492 is about verified and this is about unverified identities.

@richvdh
Copy link
Member

richvdh commented Sep 30, 2024

No, 2492 is about verified and this is about unverified identities.

Argh, yes, sorry.

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

5 participants