Commit Graph

248 Commits

Author SHA1 Message Date
7da254fd61 Changed how account data is stored, authorization header is now sent when logged in, adjusted spacing game filters for server list, fixed crashing when trying to load icon for game whos icon is not present, a bit of code cleanup to Api to use Async::HTTP::Client over Async::Internet directly (for everything except get requests), probably a few misc. changes 2022-02-04 08:59:15 -06:00
4996315aeb Made games list and game menu scrollable, added ENV["SDL_VIDEO_ALLOW_SCREENSAVER"] to enable system to sleep when idle with launcher still open 2022-01-18 18:56:31 -06:00
484c5891f4 Use gosu's new Window#gain/lose_focus callbacks to reduce update interval when window is not focused 2022-01-10 20:14:11 -06:00
1b91191d90 Server Browser is now properly updated like the offical launcher- just a bit more flashy due to taking 100+ ms to regenerate ui elements 2021-12-30 18:56:56 -06:00
1214c35fb5 Fixed application taskbar not hiding after task completion, implemented basic uninstaller task, server browser is only told to update from updater if server data has actually changed, added Interface.instance method- fixes assuming window.current_state is a Interface instance. 2021-12-30 15:47:42 -06:00
d880d1525f Put a bandaid on Api.package_details by using Async::HTTP::Client instead of directly using Async::HTTP::Internet- TODO: use :Client instead of ::Internet, enabled verify_files task in installer 2021-12-29 08:37:54 -06:00
82add3cc9d Brought back Excon for package downloading as the method recommended by async-http is unreliable, added support for importing games, repairer and updater tasks are both now simple subclasses of installer, implemented verify_files for checking installed files to prune download package list (currently causes Api.package_details to fail..., so disabled for now), misc. changes. 2021-12-28 17:55:40 -06:00
f4aa666386 Removed settings and download manager icon buttons and moved to proper navigation 'links', Cache.install_path checks settings for games install path before defaulting 2021-12-27 22:15:17 -06:00
0f943252c5 Websocket based server list updater now works, gui needs a bit of work to not flash when refreshing list 2021-12-27 20:48:30 -06:00
92f6a76381 Almost functional websocket based server list updater 2021-12-27 18:37:02 -06:00
822a9a8971 Added some comments 2021-12-27 17:08:46 -06:00
93cc161f4c Finished removing usage of Excon- package download reimplemented (TODO: see if it's possibly to not need to make n requests to endpoint to emulate excon's chunked downloading), raise Async::Stop when window is closed to shutdown reactor 2021-12-27 09:56:09 -06:00
55191f143a Added option to force fetch to Cache.fetch, force user profile picture to be fetched on start up or on login 2021-12-26 21:32:54 -06:00
e87f14079d Added semi-functional websocket implementation of signalR for live server list changes (seems a bit chatty though with some servers only having time remaining changing, fixed crash when a user has an active login but their profile picture was removed, fixed not explicitly saving Cache.fetch'ed items as binary 'wb' resulting in corrupt profile image. 2021-12-26 21:23:53 -06:00
52e46eced5 Finished evicting Thread- probably more fiber scheduling to do while I figure out how to put Tasks into a Ractor 2021-12-26 13:46:48 -06:00
2bbb2acc6e Replaced most Excon + Thread calls with Async 2021-12-26 09:20:25 -06:00
f1e7d430b6 Initial work on game verification 2021-12-23 18:15:11 -06:00
570652e40d Update README 2021-12-23 16:17:41 -06:00
9707110972 Added parallel downloads setting (not in gui options yet), added a thread pool for downloading multiple packages at once- quite helpful for TSR 😁, fixed download resuming (used wrong file mode...) 2021-12-23 10:56:28 -06:00
47a22311bb Show confirmation dialog when trying to close window when the app manager is #busy? 2021-12-22 18:35:41 -06:00
961b61c0ce Made Join Server button have a different colored background for non-release servers, added small download icon next to a game's icon when it is not installed, updated Update Now string to Install Update, selected app and channel are now saved to the settings- possibly removing an unnecessary click 2021-12-22 18:14:26 -06:00
6b82fad794 Improved server list to show server release channel and to use correct channel for launch game, disable update interval manager due to current implementation being a bit janky looking 2021-12-22 15:48:51 -06:00
d2723c82ab renamed variable to make better sense of what it means 2021-12-22 14:56:20 -06:00
54ae2a1212 fixed download manager sometimes cropping off game version 2021-12-22 10:05:17 -06:00
25ff879101 Fixed Mixer MemoryBuffer not using a fixed encoding and fixed writing 1 too many bytes causing broken files when handling crossing of buffer boundry 2021-12-21 21:39:36 -06:00
da04debec4 Fixes 2021-12-16 22:22:36 -06:00
4f675644ee Enabled updater, TODO: make updater do less work than installer 2021-12-06 10:34:06 -06:00
a6c194b762 Show update available icon on Games page next to the games icon 2021-12-06 10:03:04 -06:00
a7a5b98955 Updates are now checked 2021-12-06 09:56:04 -06:00
451f92b9d6 Reduce update interval when inactive 2021-12-03 15:32:55 -06:00
c1a497cd91 Added app icon 2021-12-03 11:08:48 -06:00
707468e455 Fixed broken Process.spawn due to missing quotes for windows 2021-12-03 11:08:37 -06:00
e59441cd17 Mixer::Writer now uses the memory buffer, disabled verbose puts from Task verify package 2021-12-02 11:53:37 -06:00
22676418d3 Renamed main file 2021-12-02 08:28:26 -06:00
112690436e Removed old stand in files from when this project was intended to show UI/UX improvements for the official launcher 2021-12-02 08:25:48 -06:00
fd90403886 Use new marquee style of progress bar for unpacking/patching since we don't have progress feedback 2021-12-02 08:16:52 -06:00
ade951f87c Fixed Mixer erroring on CRC's shorter than 8 characters long, hardcoded crc string for .w3dhub.patch 2021-12-01 19:49:25 -06:00
74a2ca652b Removed usages of eager_load, probably fixed application launching weirdness 2021-11-30 14:00:51 -06:00
a3061743f9 Replaced Mixer::Reader eager loading with buffered reader (*same speed, less memory), added option to not load mix file data, stubbed Mixer::Patcher for future low memory patching 2021-11-30 12:25:59 -06:00
2a5a9229bc Fixed unable to join non-renlike games due to the way that Process.spawn arguments are wrapped in quotes, enriched server game balance indictator 2021-11-29 22:12:05 -06:00
1a71d1274f Show estimate of game balance based on score 2021-11-29 21:18:29 -06:00
13103a7380 Added app icon, removed W3DHub::NAME constant, replaced stub content in community updates section with actual W3D Hub news 2021-11-29 18:39:15 -06:00
e9aeb4a3e2 Fixed not wrapping tar paths in quotes 2021-11-27 16:33:30 -06:00
7257030e74 Added support for applying patches! added DemoInputDelay state to make recording Boot state easier, misc fixes for tweaks. 2021-11-26 22:36:29 -06:00
2a65761b8d Task now ask Interface to update task status instead of just doing it themselves whenever they want, stubbed apply_patch method, moved unpacking into its own method 2021-11-26 15:21:22 -06:00
6c18e16357 Added ApplicationManager::Status, DownloadManager now displays data from Status, added improved progress information to DownloadManager via Task updating its Status object 2021-11-26 12:17:26 -06:00
935aed1a7a Fixed crash from Cache accessing the global variable $Store instead of the class Store 2021-11-25 19:53:06 -06:00
4e30075f6b Added confirm dialog, clicking uninstall game now triggers confirmation 2021-11-25 19:08:20 -06:00
e7ada9d800 Update gems, git ignore test files (leading _) 2021-11-25 18:35:33 -06:00
074af007d5 Added digest-crc gem, added Mixer class to read and write Renegade MIX1 files 2021-11-25 18:27:23 -06:00