Commit graph

9640 commits

Author SHA1 Message Date
Daniel Johnson ad040a318e 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-18 09:39:54 -05:00
Daniel Johnson 9fb4e3b258 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-18 09:39:34 -05:00
Daniel Johnson 16d17766c9 Remove unused 'icons-changed' signal
Never fired, never connected.
2024-02-18 09:33:50 -05:00
Daniel Johnson 741acc1cca Remove the 'game-install-update' and 'game-install-dlc' signals in favor of direct method calls. 2024-02-18 09:32:26 -05:00
Daniel Johnson 59b5a4813d Replace 'game-install' signal with a straight method call.
Still using the default application object here.
2024-02-18 09:28:50 -05:00
Daniel Johnson bc39b4846e 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-18 09:12:33 -05:00
Daniel Johnson d6a0c72363 Replace the 'game-launch' signal with direct calls.
Mostly using the application to provide a default UI delegate.
2024-02-18 09:11:31 -05:00
Mathieu Comandon 1510d8a78e Use DELETE method when deleting from remote 2024-02-18 03:28:19 -08:00
Mathieu Comandon bd3946b21e Get rid of game-removed signal, screw mypy 2024-02-18 03:19:09 -08:00
Mathieu Comandon 83faa3dd22 Remove one more game-removed signal 2024-02-18 03:00:59 -08:00
Mathieu Comandon 30b31ea0ae Big commit, continue implementing deletion from remote library, create path_cache module, start getting rid of game-removed signal 2024-02-18 02:44:49 -08:00
Mathieu Comandon f4c9518b64 Remove special case for the Steam runner 2024-02-17 21:36:05 -08:00
Mathieu Comandon 829b9cc683 Half assed python type hints won't let me do trivial stuff like renaming a property, what a bunch of useless crap. 2024-02-17 21:20:08 -08:00
Mathieu Comandon 15fc8d4400 Half assed python type hints won't let me do trivial stuff like renaming a property, what a bunch of useless crap. 2024-02-17 21:17:22 -08:00
Mathieu Comandon b982dc1588 Sneaky property EXPOSED\!\! 2024-02-17 20:46:17 -08:00
Mathieu Comandon e9a6f6a273 Nested classes, not even once 2024-02-17 20:39:59 -08:00
Mathieu Comandon 58cef57ffa Reformat 2024-02-17 20:37:26 -08:00
Mathieu Comandon 9ff20eb82c Rename to remove_from_library_checkbox 2024-02-17 20:33:38 -08:00
Mathieu Comandon de70ab6cb0 Rename PGA_DB to DB_PATH 2024-02-17 20:12:46 -08:00
Mathieu Comandon 121772eb2c Remove confusion about what the PGA is 2024-02-17 20:03:54 -08:00
Mathieu Comandon 73b6df7cbb Fix matching when incremental updates are used 2024-02-17 19:52:13 -08:00
Mathieu Comandon 5fdcb4220f Store timestamp of end of sync 2024-02-17 19:41:30 -08:00
Mathieu Comandon 5a566c07f9 Always add runner and platform labels in game bar 2024-02-17 19:40:04 -08:00
Mathieu Comandon ea39c8b985 Improve year sorting 2024-02-17 19:12:17 -08:00
Mathieu Comandon ff7d9a76fa Totally fix sorting 2024-02-17 18:48:09 -08:00
Mathieu Comandon bb5b7f266e Almost fix sort order 2024-02-17 18:46:30 -08:00
Mathieu Comandon 01340c3499 Use read_bool_setting when appropriate 2024-02-17 18:35:56 -08:00
Mathieu Comandon a6065181c6 Change terminology associated with sorting, remove sort_params which was justifying itself with statements that were borderline voodoo 2024-02-17 18:22:52 -08:00
Daniel Johnson 7ae13cea67 Add checks to not apply "gpu" setting if it would be disabled. 2024-02-17 19:17:00 -05:00
Daniel Johnson 8bda741ce2 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-17 18:57:15 -05:00
Daniel Johnson 6425cea19d "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-17 18:49:22 -05:00
Daniel Johnson 1cce0c1d82 Revert "Restore the old "dri_prime" system option."
This reverts commit 4af774ba67.
2024-02-17 17:14:22 -05:00
Daniel Johnson 68945021a0 Revert "Reduce the scope of the restored 'dri_prime' option to just 'prime'"
This reverts commit 186ea5ab78.
2024-02-17 17:14:17 -05:00
Daniel Johnson d0e21f6119 Revert "Remove Prime option"
This reverts commit 1304886fc7.
2024-02-17 17:14:10 -05:00
Mathieu Comandon 1304886fc7 Remove Prime option 2024-02-17 14:10:57 -08:00
Mathieu Comandon 4c02033c59 Rename method 2024-02-17 14:08:36 -08:00
Daniel Johnson 186ea5ab78 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-17 14:11:59 -05:00
Daniel Johnson 4af774ba67 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-17 10:02:59 -05:00
Daniel Johnson 96c60613f3 Release DB_LOCK even if an exception occurs executing a query. 2024-02-17 07:28:04 -05:00
Daniel Johnson 32c343b820 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-16 16:34:57 -05:00
Mathieu Comandon 0c38a22ad3 Also limit games sent by the client in incremental updates 2024-02-16 03:45:47 -08:00
Mathieu Comandon 658d9354b3 Standardize data on both sides 2024-02-16 03:38:35 -08:00
Mathieu Comandon 08b27d0feb Implement incremental sync 2024-02-16 01:55:28 -08:00
Mathieu Comandon 8ea4309f5a Improve adding games locally 2024-02-16 00:39:35 -08:00
Mathieu Comandon de938824d9 Add missing playtime to created games 2024-02-16 00:06:29 -08:00
Mathieu Comandon 2404c43a3e Also include playtiem 2024-02-15 23:55:48 -08:00
Mathieu Comandon 0ce8486d4f Only sync played games 2024-02-15 23:54:55 -08:00
Mathieu Comandon 7d6180769f Sync local library with remote 2024-02-15 23:37:31 -08:00
Mathieu Comandon 7a1ccb576d Remove setup exes from exe candidates 2024-02-13 14:58:48 -08:00
Mathieu Comandon dd66cdfc8d Add sync button to accounts section 2024-02-13 14:58:48 -08:00