Fix some races in the chatroom joining code
The auto-reconnection logic for chatrooms was a bit odd. It would for every chatroom that existed when the account manager was prepared connect once to status-changed for each account for each chatroom... Change this such that whenever an account connects, we simply get the then current list of chatrooms and auto-connect those as needed. This fixes issues when a chatroom gets removed from the manager and when the auto-connect options on a chatrooms change.
Showing with 38 additions and 34 deletions