anchor.diff:    PrevSave: string;
   begin
     //Remember previous save selected
  -  if DropCol_LobbyMaps.ItemIndex <> -1 then
  -    PrevSave := DropCol_LobbyMaps.Item[DropCol_LobbyMaps.ItemIndex].Cells[0].Caption
  +  if DropCol_Maps.ItemIndex <> -1 then
  +    PrevSave := DropCol_Maps.Item[DropCol_Maps.ItemIndex].Cells[0].Caption
     else
       PrevSave := '';
   
  -  PrevTop := DropCol_LobbyMaps.List.TopIndex;
  -
  -  DropCol_LobbyMaps.Clear;
  +  PrevTop := DropCol_Maps.List.TopIndex;
  +
  +  DropCol_Maps.Clear;
   
     fSavesMP.Lock;
     try
       for I := 0 to fSavesMP.Count - 1 do
       if fSavesMP[I].IsValid then
  -      DropCol_LobbyMaps.Add(MakeListRow([fSavesMP[I].FileName,
  +      DropCol_Maps.Add(MakeListRow([fSavesMP[I].FileName,
                                            IntToStr(fSavesMP[I].Info.PlayerCount),
                                            fSavesMP[I].Info.GetTimeText,
                                            fSavesMP[I].Info.GetSaveTimestamp], I))
       else
  -      DropCol_LobbyMaps.Add(MakeListRow([fSavesMP[I].FileName, '', '', ''], I));
  +      DropCol_Maps.Add(MakeListRow([fSavesMP[I].FileName, '', '', ''], I));
   
       //Restore previously selected save
       if PrevSave <> '' then
  -    for I := 0 to DropCol_LobbyMaps.Count - 1 do
  -    if DropCol_LobbyMaps.Item[I].Cells[0].Caption = PrevSave then
  -      DropCol_LobbyMaps.ItemIndex := I;
  +    for I := 0 to DropCol_Maps.Count - 1 do
  +    if DropCol_Maps.Item[I].Cells[0].Caption = PrevSave then
  +      DropCol_Maps.ItemIndex := I;
     finally
       fSavesMP.Unlock;
     end;
   
     //Restore the top index
  -  DropCol_LobbyMaps.List.TopIndex := PrevTop;
  -  if aJumpToSelected and (DropCol_LobbyMaps.List.ItemIndex <> -1)
  -  and not InRange(DropCol_LobbyMaps.List.ItemIndex - DropCol_LobbyMaps.List.TopIndex, 0, DropCol_LobbyMaps.List.GetVisibleRows - 1) then
  -  begin
  -    if DropCol_LobbyMaps.List.ItemIndex < DropCol_LobbyMaps.List.TopIndex + DropCol_LobbyMaps.List.GetVisibleRows - 1 then
  -      DropCol_LobbyMaps.List.TopIndex := DropCol_LobbyMaps.List.ItemIndex
  +  DropCol_Maps.List.TopIndex := PrevTop;
  +  if aJumpToSelected and (DropCol_Maps.List.ItemIndex <> -1)
  +  and not InRange(DropCol_Maps.List.ItemIndex - DropCol_Maps.List.TopIndex, 0, DropCol_Maps.List.GetVisibleRows - 1) then
  +  begin
  +    if DropCol_Maps.List.ItemIndex < DropCol_Maps.List.TopIndex + DropCol_Maps.List.GetVisibleRows - 1 then
  +      DropCol_Maps.List.TopIndex := DropCol_Maps.List.ItemIndex
       else
  -    if DropCol_LobbyMaps.List.ItemIndex > DropCol_LobbyMaps.List.TopIndex + DropCol_LobbyMaps.List.GetVisibleRows - 1 then
  -      DropCol_LobbyMaps.List.TopIndex := DropCol_LobbyMaps.List.ItemIndex - DropCol_LobbyMaps.List.GetVisibleRows + 1;
  +    if DropCol_Maps.List.ItemIndex > DropCol_Maps.List.TopIndex + DropCol_Maps.List.GetVisibleRows - 1 then
  +      DropCol_Maps.List.TopIndex := DropCol_Maps.List.ItemIndex - DropCol_Maps.List.GetVisibleRows + 1;
     end;
   
     //After being reassigned to host we may need to reselect the save
  -  if (DropCol_LobbyMaps.ItemIndex = -1) and (fNetworking.SelectGameKind = ngk_Save) then
  +  if (DropCol_Maps.ItemIndex = -1) and (fNetworking.SelectGameKind = ngk_Save) then
       SelectByName(fNetworking.SaveInfo.FileName);
   end;
   
  
positive.code:   Row := fNetPlayersToLocal[aNetPlayerIndex];
    if (aProgress >= aTotal) or (aTotal = 0) then
    begin
      PercentBar_LobbyDlProgress[Row].Position := 0;
      PercentBar_LobbyDlProgress[Row].SetCaptions('', gResTexts[TX_LOBBY_DOWNLOADING], '');
      PercentBar_PlayerDl_ChVisibility(Row, False);
    end else begin
      PercentBar_LobbyDlProgress[Row].Position := aProgress / aTotal;
      PercentBar_LobbyDlProgress[Row].SetCaptions(IntToStr(aProgress div 1024) + 'kb ', '/', ' ' + IntToStr(aTotal div 1024) + 'kb');
      PercentBar_PlayerDl_ChVisibility(Row, True);
    end;
  end;
  
negative.code: 
  procedure TKMMenuLobby.FileDownloadClick(Sender: TObject);
  begin
    if Sender = Button_SetupDownload then
    begin
      fNetworking.RequestFileTransfer;
      Button_SetupDownload.Hide;
      Lobby_OnFileTransferProgress(1, 0);
      PercentBar_SetupProgress.Caption := gResTexts[TX_LOBBY_DOWNLOADING];
    end;
  end;
  
  