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] Better display for empty or deleted room topic #2705

Open
5 tasks done
manuroe opened this issue Jan 24, 2025 · 7 comments
Open
5 tasks done

[Story] Better display for empty or deleted room topic #2705

manuroe opened this issue Jan 24, 2025 · 7 comments

Comments

@manuroe
Copy link
Member

manuroe commented Jan 24, 2025

Description

  • As a user
  • I want the app to provide useful information when a topic has been removed

Current situation

When removing a room topic the status event in the room is “you have changed the topic in: “

Image

The probem is the same on EW.

The problems

There are actually 3 problems in that:

  • Problem 1: There is no button in EX and EW to delete a topic. So the "removal" action is made by the user by emptying the text input. It currently leads to an empty "" in m.room.topic.
    • We should redact the m.room.topic state event as stated by the spec: Similarly, a redacted topic does not necessarily cause the topic to revert to what it was prior to the event - it causes the topic to be removed from the room.
  • Problem 2: Apps display “you have changed the topic in: “ in case of an empty "" in m.room.topic
  • Problem 3 (EW only): EW displays “you have changed the topic in: “ in the case the m.room.topic is redacted.
    • EX is fine. It displays "Xxxxx removed the room topic" (code)

Solution

We are going to implement 2 things:

  • Redact m.room.topic when the user empties the text field.
    • We won't implement this (at least for now) so that we preserve the topic history in the timeline (see comments below).
  • Display the same useful text for empty ("") and redacted m.room.topic: (code)

Acceptance criteria

  • If the user saves the room topic empty, the m.room.topic state is redacted
  • If the m.room.topic state is redacted or empty (""), the app displays "Xxxxx removed the room topic" or "You removed the room topic"

Leads

Timesheet

Check the parent GH issue.

Dependencies

  • None

Out of scope

  • Redact the m.room.topic state event

Open questions

Questions

Preview Give feedback
No tasks being tracked yet.

Subtasks

Android

Preview Give feedback
  1. T-Task
    bmarty
  2. T-Task

iOS

Preview Give feedback
  1. pr-bugfix
  2. T-Task

Rust

Preview Give feedback
  1. pixlwave

Web

Preview Give feedback
No tasks being tracked yet.

Sign-off

Android

  • QA sign-off on completion

iOS

  • QA sign-off on completion

Web

  • QA sign-off on completion
@pixlwave
Copy link
Member

It seems worth sharing that when redacting the topic for Problem 1, you lose the timeline history showing what the topic was previously:

Simulator.Screen.Recording.-.iPhone.16.Pro.-.2025-01-28.at.12.08.57.mp4

@pixlwave
Copy link
Member

@mxandreas What do you think? Should we ignore fixing Problem 1 to avoid the topic history being deleted or are we ok with that happening?

This is what it looks like if you set a topic and remove it 3 times in a row:

Image

@mxandreas
Copy link

To me it makes much more sense that if the user empties the field we simply render this as "You removed the room topic" but the previous topic remains in the timeline. And if I understood everything correctly, it means we would not do this part:

Redact m.room.topic when the user empties the text field.

It is much safer to try this (and adjust based on feedback if needed) than the other way.

@pixlwave
Copy link
Member

Ok that makes sense, I'll close the tasks related to this part then.

@manuroe
Copy link
Member Author

manuroe commented Jan 29, 2025

Thanks @bmarty and @pixlwave for the implementations on EX! I tested it and ticked the QA checkbox for mobile.
Now, we need to implement the corresponding change on EW. cc @langleyd .

@Half-Shot
Copy link
Member

@langleyd I'm happy to put this one into my queue if you like, let me know what you think

@langleyd
Copy link
Member

That would be great, thanks @Half-Shot !

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