public void OnUserListReceived(List <ChannelUser> userList) { foreach (var user in userList) { if (users.Find(u => u.IRCUser.Name == user.IRCUser.Name) == null) { users.Add(user); } } users = users.OrderBy(u => u.IRCUser.Name).OrderBy(u => !u.IsAdmin).ToList(); UserListReceived?.Invoke(this, EventArgs.Empty); }
public void OnUserListReceived(List <ChannelUser> userList) { for (int i = 0; i < userList.Count; i++) { ChannelUser user = userList[i]; var existingUser = users.Find(user.IRCUser.Name); if (existingUser == null) { users.Add(user.IRCUser.Name, user); } else if (IsChatChannel) { if (existingUser.IsAdmin != user.IsAdmin) { existingUser.IsAdmin = user.IsAdmin; users.Reinsert(user.IRCUser.Name); } } } UserListReceived?.Invoke(this, EventArgs.Empty); }