1
Fork 0
mirror of https://github.com/redstrate/Astra.git synced 2025-04-23 12:57:45 +00:00
Commit graph

122 commits

Author SHA1 Message Date
ca4d47349b Remove LauncherCore::launchGame
This is only used internally now, so we can remove it from public API
2023-10-11 14:35:10 -04:00
7ad09f6fcf Fix up GameRunner::addRegistryKey comments 2023-10-11 14:33:22 -04:00
42d817a47c Move game running logic into its own class, shrink LauncherCore more 2023-10-11 14:30:21 -04:00
b091a4db8c Blegh, rename loginOauth function to loginOAuth 2023-10-11 14:15:49 -04:00
f99964b2bb Overhaul all the login classes, make the code way clearer
The old pre-async login system (especially SE's) was this weird mess
and it wasn't clear what data was flowing where, etc. Now it's a flat
function with comments and a bit better logging.
2023-10-11 14:13:42 -04:00
0bec42f836 Remove unused hasAccount function from LauncherCore 2023-10-11 13:41:22 -04:00
0f07f0aacd Reduce public API of SquareLauncher 2023-10-11 13:39:54 -04:00
999a2dc311 Ensure private members are prefixed with m_ 2023-10-11 13:39:10 -04:00
f0d1e1bcbe Move LauncherCore::mgr to private, add accessor function instead 2023-10-11 13:34:43 -04:00
5be109e60b Move more LauncherCore API to private, reduce surface area
Trying to wrangle this giant class still
2023-10-11 13:29:32 -04:00
61fff13502 Move launcher settings to its own class, simplify LauncherCore 2023-10-11 13:25:24 -04:00
d1d96d5e9f Make Steamworks API initialization failure fatal 2023-10-11 13:08:00 -04:00
e2ad7e71d5 Add update config step to work around some launch issues
This will update the config file on boot to prevent stalls due to the
opening cutscene movie, and also update the screenshot dir.
2023-10-11 13:03:23 -04:00
2d7538bae1 Add screenshots directory setting 2023-10-11 12:58:53 -04:00
77a85fcafc Improve look and spacing of login, accounts, and profiles pages 2023-10-08 20:24:35 -04:00
67dcd90058 Overhaul initial setup flow, again
This improves the flow drastically, first by porting it from MobileForm
to FormCard. Next, it fixes some of the annoying bugs such as the
profile not switching properly when adding a new profile. Selecting an
existing game path is now possible, and it's less likely you can enter
in invalid account credentials. The overall look and behavior of some
of the pages is improved.
2023-10-08 20:01:17 -04:00
3a7dc40826 Remove more dead code 2023-10-08 19:14:17 -04:00
b17dcaf0b2 Improve asset updater error handling, allow disabling Dalamud
In the rare situation where the goatcorp servers are offline, they
shouldn't prevent a profile from launching. This adds an option to
quickly disable Dalamud if needed.
2023-10-08 19:09:56 -04:00
0e909c6670 Use new Dalamud distribution servers, improve asset updater logging 2023-10-08 18:54:03 -04:00
7280aa5a48 Use a better default wine prefix path
This manages prefixes by default, like we do with game installs and user
documents now. It's still possible to point to an existing wine prefix.
2023-10-08 18:15:41 -04:00
c05311fccc Add better logging
Astra's own logs are now stored in a rotating log, the default message
format is improved. The client and DXVK now dump their logs in the same
place instead of in the game directory.
2023-10-08 18:02:02 -04:00
2662b0e0bb Refactor parts of the Steam API support
To make the code a bit cleaner, ensure the steam api class is only
initialized if Steam support is needed. Also shuts down the steam api
too.
2023-10-08 17:55:13 -04:00
dbb03bfeff Remove unused launch functions
The official launcher, config backup tool, and sys info functions were
removed from the interface so lets yeet these unused functions from
bitrot.
2023-10-08 17:52:11 -04:00
910e023dc7 Move config to app config folder
This stops polluting the .config folder, and makes it tidier to move
configs and such.
2023-10-08 17:51:23 -04:00
bc1b6fe2c8 Add button to clear lodestone avatar cache 2023-10-08 13:22:49 -04:00
1157f7b1ab Add option to configure xiv api server url 2023-10-08 13:22:34 -04:00
043b42892e Show login errors on auto login page 2023-10-08 13:21:13 -04:00
5bd5656e14 Add missing [[nodisacrd] on Profile::loggedIn 2023-10-08 13:19:51 -04:00
76770acc33 Fix various typos and text label improvements 2023-10-08 13:19:23 -04:00
ea16fb8f1a Move encrypted arguments option to developer settings
This is a fairly developer-oriented option, there's no reason to set
this per-profile.
2023-10-08 13:18:05 -04:00
bdcbcd9fc1 Remove GameParser class 2023-10-08 13:16:48 -04:00
be14785e61 Add preferred protocol developer setting 2023-10-06 18:14:32 -04:00
ed2ea9da33 Improve Account::getKeychainValue, make async 2023-10-06 18:08:21 -04:00
b366c046e0 Remove mentions of Watchdog
It's currently bitrotting anyway, no reason to keep it for the next
release
2023-10-06 18:07:44 -04:00
c0d68c0b56 Introduce PatchList class to consolidate patchlist body parsing
This also adds tests for the class, which was desperately needed. Also
adds plenty of debug messages to pick apart problems in the patching
process.
2023-10-04 11:09:50 -04:00
1cbfc17c1a Improve profile/account creation and deletion experience
The windows should properly close when necessary, and the setup can no
longer loop itself because it didn't re-read the game version. You can
now select another profile's game installation when setting up a new
profile.
2023-09-20 16:44:43 -04:00
481fb8214f Make Dalamud inject method/delay settings work, remove opt out setting
The automatic marketboard setting seems to have disappeared recently.
2023-09-20 16:28:59 -04:00
7db9cdeb42 Add back ability to set OTP secret through account settings 2023-09-20 15:33:33 -04:00
7e2992ead2 Prevent auto login loop, and stop from logging in twice 2023-09-17 19:30:22 -04:00
201f4df179 Add back auto login functionality 2023-09-17 19:20:41 -04:00
90a5ffc6c8 Parallelize and speed up the login process even more
Now the asset updating process is parallelized (especially asset file
downloading). There's less wasteful usage of the patcher and game
version reading when no patches need to be installed.
2023-09-17 18:43:58 -04:00
14854a6187 Small C++ fixes 2023-09-17 09:02:11 -04:00
f990b9dd75 Modernize ProfileManager 2023-09-17 08:52:48 -04:00
8d103c33d8 Modernize Profile 2023-09-17 08:51:26 -04:00
c50780e149 Fix spacing of Q_OBJECT macros 2023-09-17 08:32:47 -04:00
aaafc05079 Modernize LauncherCore 2023-09-17 08:31:24 -04:00
dc298a24f1 Modernize CompatibilityToolInstaller 2023-09-16 21:26:46 -04:00
3a471553ab Modernize AccountManager 2023-09-16 21:23:58 -04:00
83bed335db Use string literals in Account class 2023-09-16 21:22:20 -04:00
8e9d1587f0 Modernize bits of the Patcher class 2023-09-16 21:18:50 -04:00