1
Fork 0
mirror of https://github.com/redstrate/Astra.git synced 2025-04-24 21:37:46 +00:00
Commit graph

281 commits

Author SHA1 Message Date
3e8e0acaae Remove Sapphire support
I never really used this feature in Astra, and now that Kawari can
perform the login process for you (and just point it towards a Sapphire
server) I don't see a reason to support it anymore.
2025-03-17 19:40:27 -04:00
0b00a49402 Add an option to delete files when removing a game install
Otherwise your game install folder ends up littered with junk, like
mine!
2025-03-17 19:33:28 -04:00
c3acd8f44c Add a new developer option to disable updates for a specific profile
Useful if you want to pin a game install to a specific version or
whatever reason. This is a very niche option, so it's hidden behind
developer settings.
2025-03-17 19:24:43 -04:00
2466bc5448 Move most of the custom server settings to be per-account
This makes it way easier to switch between retail and alternative (other
than Sapphire) servers.
2025-03-17 19:14:20 -04:00
a6c4f53862 Save account and profile config changes again 2025-03-17 18:47:32 -04:00
79bd032322 Use KConfig's own class instead of "proxying" it in Profile
This will make it trivial to add more profile settings in the future.
2025-03-17 18:44:36 -04:00
da3084266c Use KConfig's own class instead of "proxying" it in Account
This will make it trivial to add more account settings in the future.
2025-03-17 18:27:17 -04:00
799b718818 Use KConfig's own class instead of "proxying" it with LauncherSettings
This will make it trivial to add more settings in the future.
2025-03-17 18:03:10 -04:00
73150fe8a9 Allow loading news items if banner is missing 2025-03-08 23:35:03 -05:00
4214b769df Add support for specifying a custom lobby/GM server 2025-03-08 13:51:26 -05:00
69051696e1 Improve free space string again 2025-02-28 16:03:37 -05:00
bfc95ecf37 Fix a rare crash when exiting Astra
It tries to access a destructed logger for some reason, so try to stop
doing that.
2025-02-28 15:48:31 -05:00
ace25c7bd2 Clarify that the free space requirement is *on top* of what you have
The original message wasn't clear enough, in my opinion. Not really
happy with how this sentence is structured, but it should be better.
2025-02-28 15:39:06 -05:00
dd40ae01c4 Remove old vestiages of Windows Breeze icons support
This was before the new KIconThemes functions were a thing, so these
can probably be safely removed.
2025-02-01 10:25:38 -05:00
27ee80522b Remove "Show News" setting
I think this was rarely used, and it just complicates some things.
2025-02-01 10:20:39 -05:00
1e1a1f0f29 Bump copyright date to 2025 2025-02-01 10:02:21 -05:00
e3709a4dd1 Actually return to the main page if a login error occurs in auto-login 2025-02-01 09:58:38 -05:00
5ac2002bcb Add a way to manually overwrite what's on the server
In the case where you accidentally uploaded the wrong data, or your data
is hosed to begin with.
2024-11-09 15:58:09 -05:00
807cf0e062 Improve character sync error handling, and the sync itself
Ported from libQuotient's invokeLogin to our own custom one, so we can
avoid the initial sync until login. Then, make sure we find the room
*after* the sync, not before it.

Also since I wiped the media cache from my server, I hit a crash since
it tried to open an invalid ZIP file. Now we can handle that.
2024-11-09 15:47:34 -05:00
b5b9cdfdc0 Delete KZip in CharacterSync 2024-11-09 15:06:33 -05:00
ec403a2fe7 Fix avatars for accounts not loading
This is due to a mistake on my part, a signal needs to be called.
2024-11-09 14:56:40 -05:00
41a91a0295 Fix how game PID detection in Dalamud mode when using Wine
The PID Dalamud gives us is the Windows PID, which would be internal to
Wine. Instead, if we're using Wine we need to ignore that and find the
ffxiv process ourselves.
2024-11-09 14:45:51 -05:00
1343558506 Fix typo in the update channels 2024-11-09 14:45:00 -05:00
e4da951cf9 Refactor out the two patch user agents 2024-11-09 14:33:52 -05:00
253fd5f10f Refactor out the platform, boot, game update channels 2024-11-09 14:30:10 -05:00
726d48cbda Remove extra line at the end of the text in the about page 2024-11-09 14:24:25 -05:00
a5f3865839 Fix building against the latest libQuotient 2024-11-09 14:21:26 -05:00
1f54ea2e8d Fix ordering of patch events in registerSession 2024-11-09 14:17:36 -05:00
fe60a48d7f Remove hacky Steam Deck QtQuick overrides
This doesn't really work at all, let's revert it for now.
2024-08-22 21:46:24 -04:00
0dde52a5cc Use KIconTheme::initTheme()
See https://invent.kde.org/frameworks/kiconthemes/-/issues/3 for more
information of what this does
2024-08-22 21:46:04 -04:00
f136f6475c Inhibit sleep on Linux when playing the game
This fixes a "deficiency" in KWin, where controller input does not
wake up the screen. You have to manually block the screen locking or
else you need to move the mouse every so often. The system could also
sleep while patching, which is really bad.

This is a really simple implementation that can be expanded upon later.
2024-08-22 21:22:56 -04:00
32c73a6126 Explicitly include QGuiApplication and add a note 2024-08-22 21:08:31 -04:00
5077ae188c Fix int conversion that's wrecking MSVC builds 2024-08-22 21:07:41 -04:00
edffbd13dc Make some functions const & static 2024-08-22 21:06:14 -04:00
0ff1dbd4e5 Bump libphysis, and check for disk space before updating the game
This fixes a really easy situation to run into, updating the game
without the space required. Now it should warn you before continuing
into a terrible situation.
2024-08-22 20:59:04 -04:00
0775a463e8 Port to Physis' patchlist parsing, remove our own
Also start checking the available space before downloading patches to
avoid really bad situations. This will be expanded in the future.
2024-08-22 20:42:35 -04:00
33441f06d0 Begin testing AccountManager 2024-08-22 18:57:25 -04:00
51d9551667 Remove LauncherCore dependency injection in Account/AccountManager
This is no longer needed, and we will need this to test this model
standalone.
2024-08-22 18:53:46 -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
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
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
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
47f6d1035e Add tests for the utility functions 2024-07-30 21:04:47 -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