More minor issue fixes

* Move Joining state change sooner in the code to prevent an issue where
failing to connect multiple times in a row doesn't change the state (as
it goes from CouldNotConnect -> CouldNotConnect which doesn't trigger a
state changed callback)
* Prevent double clicking too fast on a room in the lobby from causing
issues
* Lobby no longer closes when joining a room
This commit is contained in:
James Rowe 2018-04-19 10:23:39 -06:00
parent 62257e0d79
commit d35693bbbc
5 changed files with 35 additions and 57 deletions

View file

@ -187,4 +187,30 @@ private:
std::unique_ptr<RoomMemberImpl> room_member_impl;
};
static const char* GetStateStr(const RoomMember::State& s) {
switch (s) {
case RoomMember::State::Idle:
return "Idle";
case RoomMember::State::Error:
return "Error";
case RoomMember::State::Joining:
return "Joining";
case RoomMember::State::Joined:
return "Joined";
case RoomMember::State::LostConnection:
return "LostConnection";
case RoomMember::State::NameCollision:
return "NameCollision";
case RoomMember::State::MacCollision:
return "MacCollision";
case RoomMember::State::WrongVersion:
return "WrongVersion";
case RoomMember::State::WrongPassword:
return "WrongPassword";
case RoomMember::State::CouldNotConnect:
return "CouldNotConnect";
}
return "Unknown";
}
} // namespace Network