If a user has a channel open in 2 different clients and tries to leave the channel they will automatically be re-joined to it. It seems like the 2nd client viewing the channel re-adds you.
This occurs if you have the same channel open in Chrome and Desktop and try to leave from either. Or if you have the channel open in webapp and mobile and try to leave from mobile.
This does not occur if you have the channel open in webapp and mobile and try to leave from webapp. Mobile client handles this gracefully when viewing the channel and behaves as expected.
Seeing a loading screen in the 2nd client instead of being re-directed to town square (or getting some kind of feedback) in not a regression from 5.16 but re-joining the channel is.
Login to desktop and open a channel
As the same user, login from a browser and open the same channel
From either client, leave the channel
Expected: I'm not sure but, I think in the 2nd client viewing the channel, the channel is removed from LHS and you are redirected to town square (or some other type of feedback that you have left the channel)
Observed: In the 2nd client the "loading..." screen appears and hangs there. After a few seconds the channel reappears in the LHS for the 1st client.