More fixes here. First, fixed binary path parsing for profiles,
so you should be able to add a profile on macOS now. Only one
requirement - you should add Quake3-UrT.x86_64 file, which located
inside Urban Terror's application bundle, under Contents/MacOS
directory.
Fixed the way we call Urban Terror on macOS and tested it. Should
work now flawlessly.
Bumped to 0.1.0-beta2, and mac-only release for now.
Refactored the way URTrator working with profiles - now everything
that could be taken from internal cache will be taken from cache.
The very same as with servers.
Moved all callbacks from callbacks to events, so we achieve full
asynchronity here and can launch anything in goroutines :).
Moved MainWindow-related game launching functions into another
file (mainwindow_launch.go).
Made quick connect widget working. Note, that even if you're on
Favorites and trying to connect to one of favorited servers but
with quick connect - you still have to choose right profile
near Launch button!
Maybe something else I forget.
Removed debug prints, as we don't really need them now.
Fixed database updating from cache, until now only inserts was working
fine, updates failing. All because of forgotten comma :(.
Reworked handling of icons in servers lists, now they didn't
recreated, but reused from created on application start. Can also
save us much memory for long runs.
Moved gamemode detector to mainwindow_helpers, where it should be.
Refactored MainWindow source, splitted initialization and
helper functions into separate files.
Now lists headers sizes and positions are remembered and correctly
restored on launch.
About dialog should now be fixed everywhere. Previously it
causes crash on macOS and Windows. See https://github.com/mattn/go-gtk/issues/282
Columns now can be rearranged and resized. No saving or restoring yet.
Fixed favorites servers - they now correctly added/removed in/from cache,
and also fixed favorite server edition dialog, which now also takes
advantage from server's cache.
Added new toolbar button for updating one server. It works :).
Added new column in servers lists, which shows is server is private or public.
Added checking if Urban Terror launched while trying to shut down
URTrator. If yes - we will show error message and won't quit,
until Urban Terror will be dead.
Fixed players parsing in server's response, now we can show 0 players.
Showr info (kinda) completed, general server info, players and vars
are here. Some work on sorting is in ToDo.
On servers updating when all data successfully gathered we're now
properly updating rows in Servers and Favorites lists.
Increased "simultaneous ping limit" for now, but anyway it provides
too bad results. Need to find a way to fix it.
Fixed profile update with some fields changed, now it won't show
error dialog.
Removed "Second X session" checkbox column from profiles list,
have no idea (for now) how to properly use them.
Now we have pooler which will pool connections (like pinging),
so there will be no timeouts due to "we have launched 100000 goroutines".
Reworked all code to use events (see Eventer). Still more work about
this to go.
Maybe more fixes I forgot.
Adding a favorite server now requires created valid profile. It will
not allow to create favorite server without proper profile.
Fixed servers updating database, now they put all fields there.
Added stubs for players info and extended server config things in
database.
Configuration is now properly saved for parameters in Options window.
Also they are restored fine.
Added tray icon with two default actions: show/hide and exit. More
to come.
Favorites functionality done, except editing favorite server.
Note, that game profile defined for favorite server have
higher priority on normal profile selected in combobox near
"Launch!" button. Later WILL be ignored.
Bunch of fixes is added.