async Task QAction() { var servers = _settings.ServerOptions.QuickPlayApplyServerFilters ? GetFilteredServers() : ServerList.Items.ToArray(); if (!servers.Any()) { await _dialogManager.MessageBox(new MessageBoxDialogParams("No servers found, adjust your filters?")); return; } var theServer = servers .Where(x => !x.PasswordRequired) .FirstOrDefault( server => server.NumPlayers > _settings.ServerOptions.MinNumPlayers && server.FreeSlots > _settings.ServerOptions.MinFreeSlots); if (theServer == null) { await _dialogManager.MessageBox( new MessageBoxDialogParams("No matching server found, adjust your filters?")); return; } LibraryVM.ActiveItem = theServer; await _launchManager.JoinServer().ConfigureAwait(false); }
public Task JoinServer(Server server) { ActiveItem = server; return(_launchManager.JoinServer()); }