a22ddd13b7
Use QAbstractItemModelTester in ProfileManagerTest
2024-08-22 18:53:24 -04:00
ba89c7f487
Move Account::updateConfig to LauncherCore
...
This is the last LauncherCore dependency inside of Account, and it fits
better in LauncherCore anyway.
2024-08-22 18:50:43 -04:00
b7aafea3ea
Replace usage of LauncherCore::isSteamDeck with Utility::isSteamDeck
...
This calls into the function anyway, no need to use this version of the
function.
2024-08-22 18:48:29 -04:00
c602f01062
Move fetchAvatar from Account to LauncherCore
...
This is to head towards removing the LauncherCore dependency inside of
Account (and by extension, AccountManager.) This function should really
belong here anyway, since it uses a lot of functionality from
LauncherCore.
2024-08-22 18:46:45 -04:00
9876cb0aab
Fix the QML registration static lib post-refactor
2024-08-22 18:45:44 -04:00
7ba1d4459e
Add tests for more profile management
...
Adding and removing profiles, and some of the profile index functions.
2024-08-22 18:32:17 -04:00
53b6cbf7af
Re-arrange more code into astra_static and introduce ProfileManagerTest
2024-08-22 18:24:22 -04:00
9d9ab245da
Call physis_blowfish_free in encryptGameArg
2024-08-22 18:03:33 -04:00
99555830d6
Add ProcessWatcher test
2024-08-22 17:59:05 -04:00
2ee0606a56
Small improvements to the ProcessWatcher API
...
Changes the PID parameter to qint64 to be consistent with KProcessList
and QProcess. Also adds a QObject parent parameter.
2024-08-22 17:59:00 -04:00
1b1dca1bfb
Set bottom padding explicitly on the login page
...
This fixes the look of it on the Steam Deck with the qqc2-breeze-style.
2024-08-04 22:53:39 -04:00
6278dc2a96
Make sure to use insecure fallback when reading keychain values
2024-08-04 22:50:19 -04:00
36c06eed8b
Add a utility function to check the SteamDeck environment variable
2024-08-04 22:48:02 -04:00
d3478b6133
Don't lock some Steam Deck options behind --steam
...
It's possible to add Astra a non-Steam game shortcut, so now it should
enable the org.kde.breeze and some other stuff in that case.
2024-08-04 22:44:49 -04:00
dfe0803d76
Don't allow manually inputting a OTP when they're auto-generated
2024-08-04 22:43:32 -04:00
47f6d1035e
Add tests for the utility functions
2024-07-30 21:04:47 -04:00
29cd58e62f
Link to libQuotient only when BUILD_SYNC is enabled
2024-07-30 21:02:22 -04:00
0658f09995
Send a hash filelist up to the room to ensure we don't duplicate work
2024-07-30 21:02:22 -04:00
a382c07896
Call sync() before trying to synchronize game data
...
This should hopefully cut down on old room state
2024-07-30 21:02:22 -04:00
ce1411de79
Re-open the game window (if you have that option enabled) to show sync
2024-07-30 21:02:22 -04:00
a0da4d02b7
Implement sync locking, and upload data when quitting the game
2024-07-30 21:02:22 -04:00
3d989d5790
Add CMake option for sync support
...
This is to ease the amount of work for me packaging at first, so I can
focus on the actual feature. Once all packages support it, this option
can go away.
2024-07-30 21:02:22 -04:00
3ec355e79e
WIP Sync
2024-07-30 21:02:22 -04:00
3b95982dcf
Fix Astra considering the game exited when Dalamud exits
...
This is a design limitation of the Dalamud Injector (at least from how
we use it) because we depend on the child process exiting to be when the
game exists. For vanilla games, this is true but not for Dalamud. Now we
track the PID given to us by Dalamud and use that as an indicator to
when the game exits.
This is needed to properly keep tracked of when the game exists for the
future sync feature.
2024-07-30 19:15:37 -04:00
e32a61edad
Add tabs to profile & account settings
...
The settings are getting quite long, so let's "fix" that by separating
them into categorical settings.
2024-07-28 22:40:54 -04:00
a8190dabbc
Add buttons to reset server settings to default or localhost
2024-07-28 22:29:46 -04:00
2b346cb4fd
Fix developer settings
2024-07-28 22:16:55 -04:00
20eba826ee
Add explicit QIcon include
2024-07-28 22:15:12 -04:00
ee6c29a559
Add explicit QGuiApplication include
2024-07-28 22:15:12 -04:00
79f0600f69
Require KF 6.4 and only pull KF 6.4 on CI
2024-07-28 22:15:12 -04:00
7dd6b259f7
Switch to libcotp upstream again
...
The MSVC support was merged, so there's no longer a need to use my
personal fork.
2024-07-28 22:15:12 -04:00
f9a7b3726f
Update libphysis to fix further patching issues
2024-07-18 14:09:10 -04:00
9de0b319ac
Don't check for frontier url unless the launcher exists
...
This fixes a crash when trying to create a brand new profile
2024-07-18 14:01:32 -04:00
24b5af28f1
Update libphysis to fix patching issue
2024-07-18 13:58:06 -04:00
27e8169a0f
Misc code cleanup
...
Make more things const, auto and whatnot
2024-07-04 20:53:06 -04:00
1401f9e85e
Fix the asset updater downloading and checking the wrong Dalamud channel
...
Whoopsie, forgot to actually add it to the URL...
2024-07-01 23:05:46 -04:00
a30b26fa3a
Meh, throw out XIVAPI and fetch avatars from the Lodestone directly
...
XIVAPI was kind of unnecessary here, and on top of that it's barely
working nowadays. We can grab the image URL directly from the Lodestone,
cutting out the middleman.
2024-06-29 20:46:08 -04:00
b04a4af954
Update the frontier fallback URL
2024-06-29 20:16:05 -04:00
b0b5b2916e
Dynamically grab frontier URL from the existing launcher
...
Yet another thing we no longer have to worry about updating manually,
at least as often.
Fixes #8
2024-06-29 20:08:17 -04:00
8c956d96c2
Use new banner API, bump referer
...
Fixes #7
2024-06-29 19:57:16 -04:00
dfabcd6cd9
Add a way to use local, non-updatable Dalamud versions
...
You can now plop your own custom Dalamud installation into a "local"
folder under %APPDATA\dalamud and Astra will use it without question. It
won't update it or perform any game version checks.
2024-06-29 19:33:39 -04:00
d51ba16e5c
Error out when the boot patching server returns 404
...
Found this while testing out Kawari, apparently we didn't check this
until now.
2024-06-29 15:15:20 -04:00
3618c509af
Remove leftover console.info call
2024-06-29 15:14:34 -04:00
d754dd3a02
Bump KDE Frameworks minimum version to 6.3, require Kirigami Add-ons
2024-06-29 11:05:50 -04:00
99785e5d68
Don't store patches in temp directories anymore
...
This was causing memory issues on systems (like Linux/Flatpak) where the
temp directory existed on tmpfs (aka RAM). Now they're stored in app
data and deleted when we're finished with them.
Fixes #17
2024-06-29 11:00:48 -04:00
99b7255c66
Fix the Windows build ( #18 )
...
Updates libphysis to remove the cdylib which was causing linking troubles, update DLLs
2024-06-29 10:58:15 -04:00
5264753acc
Only deploy on WIN32
...
This breaks on Linux in numerous ways
2024-06-28 05:42:37 -04:00
5eefc017f3
Disable cargo vendoring for now
...
This is breaking on the tempfile crate for some reason.
2024-06-28 05:42:37 -04:00
ac63581799
Meh, I meant to use qCritical and not qFatal
2024-06-27 22:48:26 -04:00
67fa840766
Add missing translation arg
2024-06-27 22:29:29 -04:00