Commit Graph

139 Commits

Author SHA1 Message Date
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
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
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
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
074af007d5 Added digest-crc gem, added Mixer class to read and write Renegade MIX1 files 2021-11-25 18:27:23 -06:00
e0e649c922 Changes, made server browser refresh button have a hard 30 second minimum refresh interval, settings are now saved! 2021-11-24 21:50:56 -06:00
829bc3b2e1 Added refresh button to Server Browser 2021-11-24 20:48:06 -06:00
af0bf99f65 Render lock icon onto passworded servers game icon 2021-11-22 22:24:16 -06:00
6dd1966384 Play now button functional, server list Server now rejects 'players' with nicks Nod and GDI to correct player count, implemented show folder for Games list 2021-11-22 22:02:01 -06:00
74fc6bc24c Server browser filter options are now saved and restored 2021-11-22 21:19:08 -06:00
66e8c04fc7 Server list is now pre-fetched during 'bootup' 2021-11-22 20:48:46 -06:00
a4dd375511 Removed window as central storage, added Store class to be central memory store 2021-11-22 20:38:24 -06:00
3a269cbaae Added noto font, fixed bug in Join Server button 2021-11-22 13:15:19 -06:00