-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Check that there's a good UX when you launch the app having meanwhile been kicked from rooms #308
Comments
This is critical as it's been used as an excuse in the past for not kicking idle users out of HQ and other super-busy rooms. |
So the UX currently is that the room does not show up in Vector. Doesn't appear anywhere on the room list. We presumably want this to appear in the room list so we can say "yo you've been kicked from this room.". My questions are:
Assigning back for feedback. |
The UX should be that we show it wherever it was before in the roomlist, but with a "you've been kicked" in the plinth at the top of the page that we also use for accepting/rejecting invites (or when peeking in on a public room). The room would otherwise behave as if they were trying to join it for the first time (or as if they were looking at an archived room; the behaviour is the same) - letting them peek at the current activity if it's public; giving them the option to join it (in the plinth at the top). I guess we should also have an option to archive it as a special case for this situation. |
This is blocked on providing archived rooms support in Vector. We need this in order for the room you've been kicked from to be sent to the client. |
We now have an archived room implementation that is reasonably performant but it doesn't help for this use case. We lazily get the archived room list, so we don't know if there are rooms you've been kicked from that are present in the archived room list. At this point, adding on some additional server-side keys would be most useful in order to do this. The easiest way would be to treat "rooms you've been kicked or banned from" differently to "rooms you've actually consciously left" and then filter them differently in v2
In the long run, we should have a sanity check over the idea of splatting data from left/kicked/banned rooms in via |
okay. let's add something special to /sync to distinguish left from kicked/banned rooms so we can fix this properly. assigning to @NegativeMjark for an experimental fix, which may or may not make it into the actual matrix spec. |
reassigning to @erikjohnston in his current synapse wrangler role |
Done. |
Looks like this will need a tweak to RoomList.getRoomLists() to ensure that rooms that you've been kicked from are shown in the Recents sublist rather than Historical. Bans are already handled correctly. For the best UX we'll also need to implement #375 so that users have a way to move kick/banned rooms out of their non-archived sublists. |
I landed this on matrix-org/matrix-react-sdk@bfbb7a6 but it doesn't work, as synapse on matrix.org at least only passes me the kicked rooms when I expand the historical section - not on every /sync :( @erikjohnston are you sure your fix to synapse works? |
Hmm, do you have an example of this? The synapse code looks like it should do what I expect, so might be useful to have something concrete to chase. |
To clarify, is this for initial sync or incremental sync? |
this is on initial sync. however, i think vdh has broken vector/develop in other ways which are confusing this... |
so hold off for now; sorry for red herring :/ |
(improved fix at matrix-org/matrix-react-sdk@0250192 ftr) |
yeah, it's vdh's fault - sorry :( |
both vector & synapse seem happy modulo current develop breakage. |
Created by @ matthew:matrix.org.
The text was updated successfully, but these errors were encountered: