1
0
Fork 0
mirror of synced 2024-09-29 08:51:43 +13:00
Commit graph

1407 commits

Author SHA1 Message Date
loathingKernel
dda1793890
Rare: Version 1.10.8 2023-12-13 15:36:57 +02:00
loathingKernel
90acf4b9ce
Lgndr: Make the decorator compatible with python 3.9
Revert this once we move to python `>=3.10`
2023-12-13 15:05:04 +02:00
loathingKernel
f361828f37
Lgndr: Replace _installed_lock with a non-thread-local instance.
Since Python 3.11, `FileLock` is thread-local by default, which causes
numerous issues with Rare because of numerous operations running in
`QThreads` and `QRunnables`. To work around it, add a monkey LGDLFS class
that uses a non-thread-local instance of `FileLock`. Since the monkey class
exists, implement a `unlock_installed` method for code clarity

* Add decorate `LegendaryCore.egl_sync` with `unlock_installed`
* Log that Rare's monkeys are in use
* Add function signature protocols based on `typing.Protocol`
2023-12-13 15:05:01 +02:00
loathingKernel
9de5627be3
SideTabContainer: Set size policy for the container scrollarea container widget 2023-12-12 14:43:41 +02:00
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
3ce62facd2
InstallDialog: Properly find the the row when inserting install_dir_edit 2023-12-12 01:23:17 +02:00
loathingKernel
8e1a3c8c73
LoginDialog: Calculate a fixed height for the login stack based on width
* Properly find row to insert sid_edit into
* Use lazy evaluation for logging
* Clean the login forms by using separate layouts for the interactive fields
2023-12-12 01:23:17 +02:00
loathingKernel
60383d2844
IndicatorLineEdit: Remove hint label
It looks like it is not used by anything any more.
2023-12-12 01:23:17 +02:00
loathingKernel
0ec80e5678
LoginDialog: Set minimum size in a way that avoids resizing on changing widgets
The forms were updated to be more informative and easier to read.

NOTE: The reason the form is bigger than the contents is because the
QLabels have word-wrapping enabled and as such they substitute width
for height (`hasHeightforWidth`)
2023-12-12 01:23:16 +02:00
loathingKernel
e188cee4e5
BrowserLogin: Add privacy note 2023-12-12 01:23:16 +02:00
loathingKernel
64e9e312c7
BrowserLogin: Improve instructions 2023-12-12 01:23:15 +02:00
loathingKernel
8c83f8aa23
InstallDialog: Add install_dir_edit widget without using an extra layout 2023-12-12 01:23:15 +02:00
loathingKernel
0d62965edb
Dialogs: Make titles uniform 2023-12-12 01:23:15 +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
ca5daab71d
Lgndr: Log that the data lock is active 2023-12-10 22:46:02 +02:00
loathingKernel
0503cb1bb4
VerifyWorker: Use verify_stdout factory instead of direct assignment 2023-12-10 22:44:59 +02:00
loathingKernel
e1c1d01958
ImportGroup: Use get_boolean_choice factory insteand of lambda 2023-12-10 22:44:19 +02:00
loathingKernel
fa5294b1d5
Lgndr: Replace the monkey functions with factories to create them
The factories are also usable in Rare's code to create compatible
functions for the callbacks. If they there is no callback they just
log what is happening. It also removes the need for `typing-extentions`
module.
2023-12-10 22:43:31 +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
845bc54a90
InstallDialog: Add selective downloads descriptions as tooltips 2023-12-10 14:22:29 +02:00
loathingKernel
d1d7e6d2e7
InstallDialog: Code consistency with button slot names 2023-12-10 14:22:29 +02:00
loathingKernel
13eaa459e1
LaunchDialog: accept_close -> reject_close for code consistency 2023-12-10 14:22:29 +02:00
loathingKernel
0ea8d2c0d2
UninstallDialog: Handle Escape key
Handle Escape key to go through the proper cancellation routine.
2023-12-10 14:22:29 +02:00
loathingKernel
8ec82f0283
About: Use UI membership instead of double inheritance 2023-12-10 14:22:28 +02:00
loathingKernel
90f55287c0
WineResolver: Fix typo 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
Stelios Tsampas
7824fa20a8
InstallDialog: Always show prerequisites if they exist
* Do not depend the relevant InstallOptionsModel option to on the running platform
2023-12-10 14:22:27 +02:00
loathingKernel
1c9b6f3faf
Launcher: Add Fortnite to detached processes 2023-12-10 14:22:27 +02:00
loathingKernel
b20be46752
InstallDialog: Offer to install prerequisites on native platforms 2023-12-10 14:22:27 +02:00
loathingKernel
5be24a4d89
SteamGrades: Use orjson instead of python's implementation 2023-12-10 14:21:39 +02:00
loathingKernel
86c683835b
Rare: Unset QT_QPA_PLATFORMTHEME at startup
It can mess up theming.
2023-12-10 14:21:39 +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
c21fddefb4
Utils: Delete deprecated CloudWorker. 2023-12-10 14:21:38 +02:00
loathingKernel
c4da6a9512
MainWindow: Untie exit procedure from offline argument 2023-12-10 14:21:38 +02:00
loathingKernel
6e7ea3181e
GameInfo: Add tags groupbox 2023-12-10 14:21:38 +02:00
loathingKernel
75a339d390
Flatpak: Don't export subprocess's env in flatpak's env 2023-12-10 14:21:38 +02:00
loathingKernel
193b5fba44
Paths: Expose Rare configuration directory 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
9a87e4e39f
RareLauncher: Fix crash when a false app_name argument is supplied 2023-12-10 14:21:37 +02:00
loathingKernel
ba65ffa905
Wine,WineResolver: Add more logging 2023-12-10 14:21:37 +02:00
loathingKernel
9a941e3001
Wine: Set environment through flatpak-spawn arguments
Partially fixes #305
2023-12-10 14:21:37 +02:00
loathingKernel
4350591411
Wine: Run commands through flatpak-spawn when in flatpak
Partially fixes #305
2023-12-10 14:21:37 +02:00
loathingKernel
ff2b9f2605
Rare: Update scripts to use the new entry point 2023-12-10 14:21:36 +02:00
loathingKernel
bdbb61d3a6
Rare: Move the different applications into their respective folders 2023-12-10 14:21:36 +02:00
loathingKernel
5f062830cf
RareLauncher: Enable terminate and kill buttons 2023-12-10 14:21:35 +02:00
loathingKernel
adf192e424
Rare: Version 1.10.7 (pre-release) 2023-12-10 13:52:33 +02:00
loathingKernel
5a2c9ae444
Lgndr: Handle exceptions in the unlock decorator 2023-12-10 13:47:07 +02:00
loathingKernel
9dd078aa92
Lgndr: match _handle_uninstaller signature 2023-12-10 12:18:50 +02:00
loathingKernel
e308686468
Revert "Lgndr: Add _login overload in core.py"
This reverts commit 8d0397415d.
2023-12-10 12:09:38 +02:00
loathingKernel
6daee29c24
Revert "Lgndr: Undo bind_ip changes"
This reverts commit 7979563cb5.
2023-12-10 12:09:26 +02:00
loathingKernel
2319c7c889
Rare: Release 1.10.6 2023-12-07 19:44:37 +02:00
loathingKernel
b60062d455
Code: Use vars() instead of directly accessing __dict__ 2023-12-07 19:40:16 +02:00
loathingKernel
509d33e1b7
MainWindow: Default to closing to tray to respect the default setting 2023-12-07 19:39:45 +02:00
loathingKernel
c2676eaa90
GameProcess: Don't spam with not found processes on startup 2023-12-07 19:39:07 +02:00
Stelios Tsampas
dab13748f3
About: Fix crash on version update check
Fixes: #330
2023-12-07 19:33:58 +02:00
loathingKernel
999d3bf7b8
Rare: Release 1.10.5 2023-12-05 00:26:59 +02:00
loathingKernel
70af132da1
EOSGroup: Check for 'user.reg' file to validate prefix path 2023-12-03 17:01:05 +02:00
loathingKernel
842bd27e8c
Rare: Release 1.10.4 2023-12-03 11:21:52 +02:00
loathingKernel
c56e7ce82c
RareGame: Moved some properties and methods to RareGameBase
These properties or methods were moved to RareGameBase
* `version`: For RareEosOverlay and maybe RareGameSlim
* `is_origin`: For RareGameSlim
* `install_path`: A partial Origin-unaware version
* `is_mac/is_win32`: For completeness

New methods
* `is_overlay`: For the download manager

Signed-off-by: loathingKernel <142770+loathingKernel@users.noreply.github.com>
2023-12-03 11:21:52 +02:00
loathingKernel
a355339016
EGLSyncGroup: Resolve EGL manifest path on showEvent() 2023-12-03 11:21:51 +02:00
loathingKernel
8d0397415d
Lgndr: Add _login overload in core.py
Revert this commit once the new version of Legendary (`>0.20.33`) is released
2023-12-03 11:21:51 +02:00
loathingKernel
7979563cb5
Lgndr: Undo bind_ip changes
Revert this commit once the new version of Legendary (`>0.20.33`) is released
2023-12-01 13:22:35 +02:00
loathingKernel
9aae822295
Lgndr: Import legendary changes 2023-12-01 13:21:44 +02:00
loathingKernel
32859715d3
Lgndr: Use perf_counter in download (Rare only) 2023-11-30 12:51:39 +02:00
loathingKernel
f672a678c9
Paths: Detect when running though python -m rare 2023-11-29 13:25:04 +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
c05209578c
InstallDialog: Fix install dialog not calculating available space
After the PathEdit change that stopped it from emitting the
textChanged signal when instatiated, the available space
calculation wouldn't take place, so do it when the dialog
becomes visible.
2023-11-29 12:47:56 +02:00
loathingKernel
ef07243677
IndicatorEdit: Set contents before connecting signals
Previously a lot of things would start running concurrently at
startup as we were setting up the UI. This removes a considerable
amount of perceived delay.

Note: there are better ways to make sure forms are populated when they
are viewed, such as each widget's `showEvent()`
2023-11-29 12:47:56 +02:00
loathingKernel
3b0c25e241
Widgets: Move PathInputDialog to rare/widget as a generic option
This widget is currently unused and could be deleted
2023-11-29 12:39:27 +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
4726849403
LoadingWidget: Use @MultisampledNight 's animation
Thanks, UwU
2023-11-28 16:48:13 +02:00
loathingKernel
d6809c287e
RareCore: Fix a problem with dialogs spawning multiple times.
RareCore was connecting RareGames to the same signals
multiple times when the library was refreshed.
2023-11-28 16:38:03 +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
f2c575e082
InstallDialog: Expose platforms in RareGame and use it
to populate the combobox
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
d53eb92e53
Login: Remove spacer 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
d2af82ae35
RareLauncher: Move class attributes to instance attributes.
Removed some superfluous variables that were already exposed through
RareGame and moved around some block to correct initialization errors
after moving to instance attributes
2023-11-28 16:38:00 +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
d11faa5263
ImageManager: Remove leading space 2023-11-28 16:38:00 +02:00
loathingKernel
adaf90f0a8
RareGame/RareCore: Add add_dlc method to connect a dlc with the main game
Move validation after the DLCs have been added so the can be uninstalled
too if the game can't be found.
2023-11-28 16:37:59 +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
ffqq
f38c751d43 feat: add freebsd support 2023-07-16 10:03:59 +03:00
lennard
da4163ced7
Bump version to 1.10.3 2023-06-11 15:53:07 +02:00
loathingKernel
b2722b6ceb
RareCore: Init default sections if they are not in the config file.
Fixes: #296
2023-06-11 13:40:00 +03:00
loathingKernel
1f06c87743
ImageManager: Few improvements
Check if there is a `keyImages` attribute before accessing it, and return
an empty list in case it isn't available. Fixes a recent crash with
`Prison Architect - eureka Update 1` DLC.

Exit early from `download_image` if the requested image is currently being
downloaded. This avoids multiple preparations and loading callbacks for
queued images.

Remove checking for supported OS when creating the icon. Now we create
icons in `icns` format for `Darwin` irregardless the fact we don't use them
for anything.
2023-06-05 01:33:11 +03:00
loathingKernel
605a5050af
RareGame: Make owned_dlcs a set
By making the attribute into a set, we avoid adding already existing dlcs
back into it when refreshing the library. Fixes duplicated entries in
the DLC page.
2023-05-29 16:40:45 +03:00
loathingKernel
5307932656
RareCore: Replace individual fetch workers with a single one.
The workers where co-dependent anyways as the non-asset worker
was started after the games worker had sent back its results.
By combining them we can move any data manipulations to the worker
and simplify the handling in RareCore.
2023-05-29 16:40:36 +03: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
lennard
3acf289280
Update translations
and update config, so tx push works
2023-05-28 23:30:01 +02:00
lennard
875ba52768
Bump version to 1.10.2 2023-05-26 23:32:50 +02:00
loathingKernel
5ce9a2edfa RareCore: Handle exception when fetching non-asset games
https://discord.com/channels/826881530310819914/884510635642216499/1111321692703305729
There is a tab character in the appId of Fallout New Vegas: Honest Hearts DLC, this breaks metadata storage
on Windows as they can't handle tabs at the end of the filename (?)
Legendary and Heroic are also affected, but it completed breaks Rare, so dodge it for now pending a fix.
2023-05-26 19:11:58 +02:00
loathingKernel
737730583f ImageManager: Check if desktop icons are supported on current plaform
Before creating icons, check if desktop links are supported by Rare
on the current platform.

Fixes Dummerle/Rare#262
2023-05-14 22:13:12 +02:00
lennard
ae8cee76ae
Fix crash on launch helper exit 2023-05-08 18:58:49 +02:00
lennard
21a339b394
Finish french translation 2023-05-08 08:46:47 +02: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
Stelios Tsampas
23c2f6dc0a RareGame: Return app_title as folder name if FolderName is not in customAttributes
Fortnite specifically doesn't provide `FolderName` in `customAttributes`, meaning we can't create the shortcut. If the attribute is not provided, assume that it is safe to use the application title.

Fixes: #283
2023-05-04 17:45:51 +03:00
lennard
3d0ebf702a
Bump version 1.10.1 2023-05-04 01:03:59 +02:00
loathingKernel
82128e35ca
RareCore: Use correct typing identifier 2023-05-03 17:27:36 +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
loathingKernel
0e4e7420cf
Refactor: Move ImageSize to models
`ImageSize` is a property of `ImageWidget` it is relevant to
`ImageManager` and the store widgets. So move it out of `ImageManager`.
2023-05-03 17:27:35 +03:00
loathingKernel
6986b1eab3
Rare: Apply UTC timezone info on dates 2023-05-03 17:27:35 +03:00
lennard
672bc814ba Fix import game 2023-05-03 12:32:12 +02:00
lennard
62aa78dcae Fix release-tests workflow 2023-05-03 12:32:12 +02:00
lennard
f8b38e0cb8 Fix desktop shortcuts on windows 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
lennard
263af75853 Do not set available space text twice in install dialog 2023-05-03 12:32:12 +02:00
lennard
075443261d Show free space in install dialog 2023-05-03 12:32:12 +02:00
lennard
b6fc468681 Fix win-zip workflow 2023-05-03 12:32:12 +02:00
lennard
fb67c15622
Bump version to 1.10.0 2023-05-01 16:27:26 +02:00
lennard
5cfd3fffe3
Fix offline mode 2023-04-16 19:38:26 +02:00
lennard
30c3dadd4d
Update translations 2023-04-13 01:10:12 +02:00
lennard
42c1a1aaa6 Add a small fix 2023-04-08 01:03:14 +02:00
lennard
c876e1fc3a Fix linux and proton settings environment_changed on windows 2023-04-08 01:03:14 +02:00
lennard
a06dc7cd0f Use signal.disconnect without parameters 2023-04-08 01:03:14 +02:00
lennard
60da656877 Disconnect all game process signals before stop to prevent exceptions 2023-04-08 01:03:14 +02:00
lennard
b48e1603cb Add a signal handler to launch helper 2023-04-08 01:03:14 +02:00
lennard
f1fa0ada1a Open cloud save dialog after playing a game, if no action set on start 2023-04-08 01:03:14 +02:00
Dummerle
3f17a69e65
Merge pull request #272 from loathingKernel/fixups
Show environment variables from the "default" section in per-game settings.
2023-04-07 19:37:56 +02:00
loathingKernel
2e1585bda8
EnvVarsModel: Be more lenient when checking for unchanged contents
Previously the unchanged contents check tested both `key` and `value`
at the same time, so the following case was not accepted.

`ENV_VAR=ENV_VAR`

No matter how unlikely it is for the key to be equal to the value, there
is no reason to restrict it.

For the `key` ("0") column, protecting against existing keys also handles
this case. For the `value` ("1") column, a check has been added.
2023-04-07 14:19:20 +03:00
loathingKernel
fee96a5f9d
[RareGame] Apply state if the game is found to be running at startup 2023-04-06 23:41:23 +03:00
lennard
9644d45b23
Check if mangohud exists when enabling it 2023-04-05 17:51:36 +02:00
lennard
0186b4f3c4
Add documentation for is_non_asset
{'Windows': GameAsset(app_name='', asset_id='', build_version='', catalog_item_id='', label_name='', namespace='', metadata={})}
2023-04-05 13:32:35 +02:00
lennard
df1731de09 Fix key error for default mango hud settings 2023-04-05 13:09:34 +02:00
lennard
ea0f40bb41 Update game state, when saves updated 2023-04-05 13:09:34 +02:00