SS14.Launcher icon indicating copy to clipboard operation
SS14.Launcher copied to clipboard

Replace serverlist with Avalonia.DataGrid control, fixing lag and other long-standing issues

Open Visne opened this issue 3 months ago • 6 comments

This PR makes it so that the server list is an actual proper grid, instead of the hacky stuff we've had up until now. This fixes major amounts of lag (when changing filters, or just switching tabs when no filters are applied). It also theoretically makes it possible in the future ~~to add proper sorting~~ (sorting works now :3), and hiding specific columns.

Before (I'm trying to switch tabs and toggle filters as fast as possible):

https://github.com/user-attachments/assets/0802c730-d0d9-4807-b1ab-eeabbf56435f

After (outdated, has column separators and sorting now):

https://github.com/user-attachments/assets/d02a34ae-8a61-4def-aff5-a3c9103baae3

I wish I could provide cleaner separate commits but I've been working on this off and on since February so it got too messy

Visne avatar Sep 14 '25 21:09 Visne

This pull request has conflicts, please resolve those before we can evaluate the pull request.

github-actions[bot] avatar Sep 15 '25 17:09 github-actions[bot]

This pull request has conflicts, please resolve those before we can evaluate the pull request.

github-actions[bot] avatar Sep 30 '25 23:09 github-actions[bot]

This pull request has conflicts, please resolve those before we can evaluate the pull request.

github-actions[bot] avatar Oct 02 '25 01:10 github-actions[bot]

Aesthetically I definitely prefer having the separators between columns. Also the "go to servers tab" button being full-width is weird.

PJB3005 avatar Oct 02 '25 14:10 PJB3005

I've added column separators, and I've fixed the go to servers button. One very minor regression: the go to servers button is now under the scroll container as opposed to inside the scroll container, but because the scroll container is inside the DataGrid it would be quite a pain in the ass to put it inisde (I really wish Avalonia had better documentation for templating). I think it's fine like this.

I've also added column sorting :>

Visne avatar Oct 12 '25 02:10 Visne

You can't a server info entry after opening it. Also removal of the arrow indicating it's expandable is bad UX.

PJB3005 avatar Oct 12 '25 19:10 PJB3005