Daniel Johnson
236f0c9999
Replace the single file pattern for service-media with a list
...
It's a list of one element except for Lutris banners and cover-art; these now support both .jpg and .png, where the user can assign either file type without transcoding.
This, in turn, allow transparency to be used in banners and cover-art via PNG files.
We still transcode any other file types into JPEG files here.
2024-02-23 13:44:21 -08:00
Mathieu Comandon
08466f2258
Send delete payload as an array
2024-02-23 13:44:21 -08:00
Daniel Johnson
bd9c4327b6
Apply sorting to category-views also.
...
I think this code-path was relying on database sorting, which was a bug.
2024-02-23 13:44:21 -08:00
Daniel Johnson
921ec55c72
Remove the view-updated signal in favor of just calling update_store().
2024-02-23 13:44:21 -08:00
Daniel Johnson
3722426941
Add the flag for multiple-runner-versions to Wine; this allows the right version to download during game installation.
...
Resolves #5302
2024-02-23 13:44:21 -08:00
Daniel Johnson
9d5ad0d674
Correct changed type information for UninstallGameDialog
...
The parent window was optional before, but now it is required, so it can be notified about game-removal.
Strictly speaking it needs to be a LutrisWindow, but I can't see how to statically test that with mypy.
2024-02-23 13:44:21 -08:00
Daniel Johnson
45fd28856b
Fix my derpy type annotation errors.
2024-02-23 13:44:21 -08:00
Daniel Johnson
fbbcf2dff7
Also require the delegate for Game.install(), and we are already providing it.
2024-02-23 13:44:21 -08:00
Daniel Johnson
342a1cb24f
Switch the install_updates and install_dlc to use the InstallUIDelegate, and always provide it.
...
Also, increase pylint max-parents. This thing is not measuring the depth of the hierarchy- we're being penalized for multiple inheritance here.
2024-02-23 13:44:19 -08:00
Daniel Johnson
172e524ba7
Pass in the launch UI delegate explicitly for launch()
...
This would be better with asyncio; we could keep the InstallWindow or whatnot visible until the game starts.
As it is, we'll just use the LutrisWindow for this.
2024-02-23 13:43:46 -08:00
Daniel Johnson
afacf82d07
Remove unused 'icons-changed' signal
...
Never fired, never connected.
2024-02-23 13:43:46 -08:00
Daniel Johnson
c4125aad45
Remove the 'game-install-update' and 'game-install-dlc' signals in favor of direct method calls.
2024-02-23 13:43:46 -08:00
Daniel Johnson
45e7634e55
Replace 'game-install' signal with a straight method call.
...
Still using the default application object here.
2024-02-23 13:43:46 -08:00
Daniel Johnson
5081458f31
Remove 'game-stop' in favor of 'game-stopped' and the stop_game() method.
...
This means we have to filter the running-games list a bit more, since we don't guarantee a stopping game is removed from there before anything else.
2024-02-23 13:43:46 -08:00
Daniel Johnson
19ff134fb3
Replace the 'game-launch' signal with direct calls.
...
Mostly using the application to provide a default UI delegate.
2024-02-23 13:43:46 -08:00
Mathieu Comandon
ee9738f320
Use DELETE method when deleting from remote
2024-02-23 13:43:46 -08:00
Mathieu Comandon
62afeeb2ad
Get rid of game-removed signal, screw mypy
2024-02-23 13:43:45 -08:00
Mathieu Comandon
ad82a5c778
Remove one more game-removed signal
2024-02-23 13:43:45 -08:00
Mathieu Comandon
dee381c81e
Big commit, continue implementing deletion from remote library, create path_cache module, start getting rid of game-removed signal
2024-02-23 13:43:45 -08:00
Mathieu Comandon
d2dbf455e2
Remove special case for the Steam runner
2024-02-23 13:43:45 -08:00
Mathieu Comandon
02444ae019
Half assed python type hints won't let me do trivial stuff like renaming a property, what a bunch of useless crap.
2024-02-23 13:43:45 -08:00
Mathieu Comandon
7c53af2ff0
Half assed python type hints won't let me do trivial stuff like renaming a property, what a bunch of useless crap.
2024-02-23 13:43:45 -08:00
Mathieu Comandon
64d1f4436d
Sneaky property EXPOSED\!\!
2024-02-23 13:43:45 -08:00
Mathieu Comandon
b3871f93d5
Nested classes, not even once
2024-02-23 13:43:45 -08:00
Mathieu Comandon
71e654c7a6
Reformat
2024-02-23 13:43:45 -08:00
Mathieu Comandon
4c2ad3a1d8
Rename to remove_from_library_checkbox
2024-02-23 13:43:45 -08:00
Mathieu Comandon
7c61eb4184
Rename PGA_DB to DB_PATH
2024-02-23 13:43:45 -08:00
Mathieu Comandon
c464ece487
Remove confusion about what the PGA is
2024-02-23 13:43:45 -08:00
Mathieu Comandon
3bfe0af614
Fix matching when incremental updates are used
2024-02-23 13:43:45 -08:00
Mathieu Comandon
32711d4dc9
Store timestamp of end of sync
2024-02-23 13:43:45 -08:00
Mathieu Comandon
8296f15cab
Always add runner and platform labels in game bar
2024-02-23 13:43:45 -08:00
Mathieu Comandon
a5e3ad5281
Improve year sorting
2024-02-23 13:43:45 -08:00
Mathieu Comandon
6cf55e7813
Totally fix sorting
2024-02-23 13:43:45 -08:00
Mathieu Comandon
351085947b
Almost fix sort order
2024-02-23 13:43:45 -08:00
Mathieu Comandon
24fe69c40a
Use read_bool_setting when appropriate
2024-02-23 13:43:45 -08:00
Mathieu Comandon
0526fdf30e
Change terminology associated with sorting, remove sort_params which was justifying itself with statements that were borderline voodoo
2024-02-23 13:43:45 -08:00
Daniel Johnson
4f037ec86c
Add checks to not apply "gpu" setting if it would be disabled.
2024-02-23 13:43:45 -08:00
Daniel Johnson
7981d1ebfc
Disable the "GPUs" option when there is only one GPU.
...
In that case, 'Auto' seems to be the safe choice, and overriding it can break games. So we won't allow this.
Resolves #5304 again.
2024-02-23 13:43:45 -08:00
Daniel Johnson
dfca536623
"condition" and "error" will disable the option controls, but *not* the reset button.
...
This way if a bad setting is no longer editable, it will be possible to reset back to the default, which should be safe.
2024-02-23 13:43:45 -08:00
Daniel Johnson
69d2e870f5
Revert "Restore the old "dri_prime" system option."
...
This reverts commit 4af774ba67
.
2024-02-23 13:43:45 -08:00
Daniel Johnson
ff2f74f240
Revert "Reduce the scope of the restored 'dri_prime' option to just 'prime'"
...
This reverts commit 186ea5ab78
.
2024-02-23 13:43:45 -08:00
Daniel Johnson
696c0e2a7c
Revert "Remove Prime option"
...
This reverts commit 1304886fc7
.
2024-02-23 13:43:45 -08:00
Mathieu Comandon
f5373eaaa2
Remove Prime option
2024-02-23 13:43:45 -08:00
Mathieu Comandon
8fcc7f3fb3
Rename method
2024-02-23 13:43:45 -08:00
Daniel Johnson
df325b3658
Reduce the scope of the restored 'dri_prime' option to just 'prime'
...
That's a slightly different 0.5.16 option, and it controls only the __NV_PRIME_RENDER_OFFLOAD __VK_LAYER_NV_optimus env-vars; I think __GLX_VENDOR_LIBRARY_NAME applies outside of this one feature.
This should allow the use of discrete GPUs- without the crashy env-var.
2024-02-23 13:43:45 -08:00
Daniel Johnson
4fdc8eb7b7
Restore the old "dri_prime" system option.
...
However, it now controls the new prime activation code, which works only with an explicit GPU choice, so I've added a warning about that.
There's no separate "prime" option; "dri_prime" can now handle both the NVidia and not-so-NVidia cases. I've not restored the 'optimus' options either.
This change means the __NV_PRIME_RENDER_OFFLOAD is not set by default, because that causes crashes on mono-GPU NVidia systems.
Resolves #5304
2024-02-23 13:43:45 -08:00
Daniel Johnson
5373278617
Release DB_LOCK even if an exception occurs executing a query.
2024-02-23 13:43:45 -08:00
Daniel Johnson
ada86795a9
Cache the compositore start/stop commands.
...
This isn't for performance; we need to commands to be stable so when we restart the compositor, we're using the command we got when we stopped it.
But the compositor is not likely to change while we run, so a simple global cache should do fine.
2024-02-23 13:43:45 -08:00
Mathieu Comandon
ff7998b9b0
Also limit games sent by the client in incremental updates
2024-02-23 13:43:45 -08:00
Mathieu Comandon
c6c9956dfa
Standardize data on both sides
2024-02-23 13:43:45 -08:00