Skip to content

Implementing remaining 1:1 semantics across the UI #2099

@ara4n

Description

@ara4n

We have #2070 for tracking whether given rooms are 1:1 or not.
We have #2097 for showing this in the UI.
We have #1882 for new UI for creating rooms as 1:1.

What we don't have is a bug to track all the other niggling bits in the UI where we want to reflect the new 1:1 semantics:

  • The ability to untag a 1:1 room and make it a normal room. This could be drop & drag between sublists in LeftPanel, and probably also a checkbox in RoomSettings.
  • For symmetry we should probably have the ability to tag a room as a official 1:1 for a given person. This is more fiddly, and we can probably ignore this for now. -> MSC2199: Canonical DMs matrix-org/matrix-spec-proposals#2199
  • In MemberInfo, rather than having the "Start Direct Chat" or "Go to Direct Chat" buttons, we should just list the rooms we have in common with a user - first the DMs, then a "Start direct chat" button (which has no reuse semantics), and then any other rooms in common. This is basically Show common rooms with a user in MemberInfo #1477. This makes it the user's problem to decide which channel to use when talking to someone.
  • When sending an invite, we need to explicitly tag it as DM or not DM. (This is either from the new 'find person' UI in Implement new "talk to a person" UI #1882, or from the invite UI - either the legacy MemberList based inviting, or the new style as per Create room 3 and 4 (invite people to room) screen: User invite flow to be improved on  #1758)
  • When receiving an invite, we need to check if it's tagged as DM or not DM. If it's a DM, we add it to m.direct on account_data. If it has no tag at all, we'll have to apply heuristics to decide whether to consider it a DM (given it may have come from a client that doesn't know about m.direct).
  • Ensure that 1:1 rooms are created with equal ops on both side

In #1882, we have the problem of whether the 'People' button should reuse DMs, prompt a selection of DMs to chose from, or start a new one. I'll file that there. (Conclusion is to to reuse if possible for now; in future prompt a selection of DMs and rooms in common to use).

@dbkr: this one's with you....

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions