1
0
Fork 0
mirror of synced 2024-06-30 04:00:48 +12:00
Commit graph

756 commits

Author SHA1 Message Date
loathingKernel 490f0dc69f
Shop: Rename module to store 2023-12-12 13:02:07 +02:00
loathingKernel 83dd118784
ShopWidget: The shop is broken, set it only show the free games and the wishlist 2023-12-12 12:48:43 +02:00
loathingKernel 0ef2497afb
QtRequests: Handle multiple requests concurrently and use caching
It is still junky but less so. It allows us to use QNetworkRequest's
caching mechanism instead of doing so on our own per-case.
2023-12-12 12:41:18 +02:00
loathingKernel 6c0a92966e
GameSettings: Properly find row to insert widgets. 2023-12-12 01:23:19 +02:00
loathingKernel d563421391
EGLSyncGroup: Properly find the correct rows to insert widgets 2023-12-12 01:23:18 +02:00
loathingKernel b5a18f2858
ImportGroup: Properly find the row when inserting path_edit and app_name_edit 2023-12-12 01:23:18 +02:00
loathingKernel 38cc1f34a2
ImportGroup: Update the form when each time it is shown
Reduces startup time and outdated information in the completer/checks.
2023-12-10 23:43:46 +02:00
loathingKernel e1c1d01958
ImportGroup: Use get_boolean_choice factory insteand of lambda 2023-12-10 22:44:19 +02:00
loathingKernel df0f7603f2
ImportGroup: Don't enable the Import Game button if import is running 2023-12-10 22:12:17 +02:00
loathingKernel 8f88dc661c
DlThread: Create callback function for future use 2023-12-10 22:06:44 +02:00
loathingKernel 8ec82f0283
About: Use UI membership instead of double inheritance 2023-12-10 14:22:28 +02:00
loathingKernel 562c956634
DebugSettings: Refactor slightly
The quit signal is disconnected currently.
2023-12-10 14:22:28 +02:00
loathingKernel a33c4e5cf2
AccountWidget: Use ExitCodes enum everywhere instead of magic values 2023-12-10 14:22:28 +02:00
loathingKernel 99eaf86507
AccountWidget: Add a Quit button in the widget in case the system tray
is unavailable (for example running in a gamescope session)

* Do not show the launch window while instantiating the application. This
probably was causing numerous issues because it was running outside of
the applications event loop. This also fixes the exit button on the login
dialog requiring `sys.exit()` to quit Rare. Now it goes through the
proper cleanup procedures.

* Make slot and signal names more uniform

* Fix a problem with RareCore connecting RareGames to the same signals
multiple times when the library was refreshed.
2023-12-10 14:21:39 +02:00
loathingKernel 6e7ea3181e
GameInfo: Add tags groupbox 2023-12-10 14:21:38 +02:00
loathingKernel debb62c990
CloudSaves: On Windows, resolve the save path immediately if unset 2023-12-10 14:21:38 +02:00
loathingKernel b60062d455
Code: Use vars() instead of directly accessing __dict__ 2023-12-07 19:40:16 +02:00
Stelios Tsampas dab13748f3
About: Fix crash on version update check
Fixes: #330
2023-12-07 19:33:58 +02:00
loathingKernel 70af132da1
EOSGroup: Check for 'user.reg' file to validate prefix path 2023-12-03 17:01:05 +02:00
loathingKernel a355339016
EGLSyncGroup: Resolve EGL manifest path on showEvent() 2023-12-03 11:21:51 +02:00
loathingKernel 3e7408ee8f
EGLSync: Update the widget when it is shown for the first time
* Don't hide irrelevant elements in Windows, disable them and use them as information
* Create the `Manifests` folder in ProgramData if its parent exists.
2023-11-29 13:16:52 +02:00
loathingKernel a87f34163a
Skip widget updates on spontaneous events.
Spontaneous are events external to the application such as the window
manager showing or hiding the application. We don't want to update on those.
2023-11-29 12:50:39 +02:00
loathingKernel c063f5f5b9
Library: Move image loading from RareCore to the GameWidget
Instead of loading images in the showEvent of the MainWindow,
load them in the showEvent of each widget. It seems to reduce
the startup stuttering this way. With some more work
we can only load the images for the widgets that are currently
visible and reduce the stutter even more.

At the same time, reduce the number of concurrent downloads
in the image manager and add a timeout so we won't halt.
The exception from the timeout is just logged at this point,
and the download is not requeued.
2023-11-29 12:50:02 +02:00
loathingKernel c0ac23b21d
Ubisoft: Update Ubisoft redemption widget to use RareCore
* Load and populate Ubisoft information when the page is shown instead of startup.
* List all Ubisoft games, and differentiate based on whether they been redeemed.
2023-11-28 17:15:45 +02:00
loathingKernel 05070919f3
GameWidget: Remove obsolete cloud saves code 2023-11-28 16:51:27 +02:00
loathingKernel 110ea51ed6
DxvkSettings: Add compiler config option 2023-11-28 16:38:02 +02:00
loathingKernel 083094bcfc
Downloads: Code clarity 2023-11-28 16:38:02 +02:00
loathingKernel 43766c82a4
GameInfo: Enable Modify button only when the game has SDLs
Add icons to the DLC install/uninstall buttons
2023-11-28 16:38:02 +02:00
loathingKernel e4782b70ae
GameInfo: Add button icons 2023-11-28 16:38:02 +02:00
loathingKernel 301d070ab3
WrapperSettings: Show wrapper name in warning dialogs. 2023-11-28 16:38:01 +02:00
loathingKernel 7b308d7c90
WrapperSettings: Use Ui through membership instead of inheritance. 2023-11-28 16:38:01 +02:00
loathingKernel 536078748b
WrapperWidget: Use a drop-down menu to hold actions. 2023-11-28 16:38:01 +02:00
loathingKernel 22e5d3c1a3
Wrappers: Use an edit button instead of double-click 2023-11-28 16:38:01 +02:00
loathingKernel 49fdd410ce
Housekeeping: Remove some print remnants 2023-11-28 16:38:01 +02:00
loathingKernel ecdafd3c1c
Wrappers: Allow wrapper editing on double-click.
Internally this works by removing the old wrapper and adding a new wrapper
int the same index.
2023-11-28 16:38:00 +02:00
loathingKernel 95fba89277
Wrapper: Truncate text on widgets to show only the command
Truncate the widget's text down to the command only without the arguments.
Show the full command with the arguments in the tooltip instead.

Update some text.
2023-11-28 16:38:00 +02:00
loathingKernel 21141e43ea
Wrapper: Fix wrapper reordering not being saved.
The order was determined by the order of the container dictionary entries.
Re-order them before returning the list by their index in the container
widget.

Fixes #304
2023-11-28 16:38:00 +02:00
loathingKernel eb48a506d2
GameInfo: Add 'Modify Game' button to adjust selective downloads 2023-11-28 16:38:00 +02:00
loathingKernel 07cbcf52d0
Meta: Update links 2023-11-28 15:20:06 +02:00
loathingKernel f3a962260c
About: Update page
* Check for updates each time the page is visited
* Updated links, developers and contributors.
* Use a less difficult to read color for links

The check for updates still happens at startup, there is now a
subsequent check every time the about label is visited.

The update check should be moved into RareCore itself in the future.

Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-11-28 15:12:56 +02:00
loathingKernel 497bdc08cc
Downloads: Remove UNINSTALLING state on cancel 2023-05-29 15:49:52 +03:00
loathingKernel eaed611c5f
GameDlcWidget: Respond to update signal
Using the update signal we can enable and disable the install/uninstall
button by querying the state of the RareGame
2023-05-29 14:32:30 +03:00
loathingKernel d4c763296e
Downloads: Apply DOWNLOADING and UNINSTALLING states earlier
By applying the state earlier, we can implicitly avoid re-queuing
downloads.
2023-05-29 14:30:54 +03:00
loathingKernel 6b0bf9621d
GameDlcWidget: Fix crash when installing or uninstalling a DLC
When the user navigates to a different game info page, the dlc widgets
get deleted. Because the signal was connected to a lambda, the connection
wasn't severed upon deletion and once the DLC would finish downloading,
Rare would crash because the object with the piggyback signal was already
deleted. By using a dedicated slot to emit the signal we ensure that the
connction is severed at Qt object deletion
2023-05-29 03:04:43 +03:00
loathingKernel 7218f0b696
ImportGroup: Add force import option.
When checked, the check for missing files will be skipped, allowing
for games missing too many files or their executable to be imported.
2023-05-07 16:33:08 +03:00
loathingKernel 184be66662
ImportGame: Pass app_name through the signal to resolve some information
Not working particularly well, since setting the path tries to auto-detect
the `app_name`, but it doesn't break anything either.
2023-05-03 17:27:36 +03:00
loathingKernel 4a96224dd3
GameInfo: Enable Import Game button, redirects to Import Game tab 2023-05-03 17:27:36 +03:00
loathingKernel 1c6a05c3f1
Refactor: Import ImageSize from widgets or directly from models 2023-05-03 17:27:36 +03:00
lennard 672bc814ba Fix import game 2023-05-03 12:32:12 +02:00
lennard ec6f24e3f8 Add tag to hide games from library 2023-05-03 12:32:12 +02:00