Commit graph

8995 commits

Author SHA1 Message Date
Daniel Johnson
1ea895ad34 Add 'activate' handler for the new-category entry.
This way you can hit enter to add a category; 'Save' was already control-S here, not enter, so it's not ambiguous.
2023-11-10 05:27:21 -05:00
Mathieu Comandon
c48a7d2f09 Show category / favorite menu entries even for uninstalled games (Closes #5123) 2023-11-10 02:13:22 -08:00
Daniel Johnson
4c1c6a5eab Add a check for the "id" fields
You can delete a category that had a game that has been completely removed and has no ID anymore; we don't need to remove it from the game store (it can't be there anymore) but we ought not crash.
2023-11-09 16:33:26 -05:00
Daniel Johnson
ff9aa683f6
Merge pull request #5126 from daniele-bondi/patch-1
Fix launching games from tray icon
2023-11-09 16:21:35 -05:00
daniele-bondi
b18955e014
Fix launching games from tray icon
The tray icon class calls Application.get_launch_ui_delegate, which is not defined in Application.
I wasn't sure if it was better to make the icon class use directly Application.launch_ui_delegate or add the getter method. I opted for the getter method so that the field can be treated as an implementation detail.
2023-11-09 22:09:43 +01:00
Mathieu Comandon
05a301e769 Remove agignore 2023-11-08 14:36:04 -08:00
Daniel Johnson
f3465f45f2 Oops, missed a spot! I need to check for None before using expanduser().
Resolves #5120
2023-11-07 16:33:37 -05:00
Daniel Johnson
2eec736fd9 Replace add_url_tags() with gtk_safe_urls(), which does both conversion and escaping.
add_url_tags() isn't correct- it does not handle escaping and can't be safely combined with gtk_safe(), as is done in two places.

But URLs can explicitly contain &, and that must be escaped. Text not inside URLs needs to be escaped, but escaping before or after the anchors breaks the URLs.

This function splits the text up into URLs and not-URLs and handles each case.
2023-11-04 07:36:28 -04:00
Daniel Johnson
e84f78dcdf Some cleanup. Also use the actual GLib function to escape markup.
It does escape control characters, which we didn't used to do, but I don't think that'll be a problem.
2023-11-04 07:08:02 -04:00
Daniel Johnson
43c23d7cdc Detect when installer text is not valid markup and treat it as text.
Installer scripts can contain whatever some dude pasted into them, and if we can detect that it is not markup, we can display it as plain text.
2023-11-04 06:49:36 -04:00
Daniel Johnson
c17a6abb7a The installer again recognizes the first N/A as the 'true' installer file request, not the last.
Resolves #5119
2023-11-04 06:19:07 -04:00
Daniel Johnson
b77cf2dc25 Switch to using icons instead of text to save space.
I use "..." as an icon to browse because it looks better than using text, I think. I made the icon buttons circular, because that is what Lutris usually does.

This opens the folder via xdg-open which does not seem to let me select the file (if any); not sure how to do better here.

The open-folder button is disable if we can't find a directory that exists to open.

Resolves #5096
2023-10-31 19:20:24 -04:00
Daniel Johnson
b9eeda1a19 Add an "Open" button to open the directory in a file browser.
These are just textual buttons for now.
2023-10-31 19:02:46 -04:00
Daniel Johnson
9de31af32e Download more media when reloading Lutris.
Specifically, games that are missing media, have Lutris slugs, and are not in your Lutris library can get media here.
2023-10-30 17:19:23 -04:00
K900
1f1d554df3 scummvm: handle runner not being available in get_command, add/fix test 2023-10-29 15:51:53 -07:00
Daniel Johnson
e9b8d199f4 Fix one more setting-change call to include the state. 2023-10-29 18:44:50 -04:00
Daniel Johnson
f08fb5271a Fix for app-indicator tray icon hiding.
The opposite of ACTIVE is PASSIVE, not more ACTIVE.
2023-10-29 18:43:11 -04:00
Daniel Johnson
9e9053418d Fix what looks like a messed up merge
Make sure all the settings-changed handlers are actually hooked up and are in the right places.
2023-10-29 18:40:14 -04:00
Daniel Johnson
e25c9811ee Hide the Lutris window instead of deleting it on close, when the tray icon is turned on.
Resolves #5109
2023-10-29 18:31:10 -04:00
Mathieu Comandon
58aa2de6f7 Remove unused directories 2023-10-29 15:12:09 -07:00
Mathieu Comandon
f156d15f73 Fix flatpak list command 2023-10-29 15:10:43 -07:00
Mathieu Comandon
aa53962550 Make output of flatpak list consistent 2023-10-29 14:59:03 -07:00
Daniel Johnson
f2ed457c4e Remove support for '--force-grab-cursor' in GameScope
This option is undocumented, may not be supported in current GameScope, nobody seems to understand what it does very clearly, and can be activated via the custom flags for GameScope anyway.
2023-10-29 13:41:55 -04:00
Daniel Johnson
0da16b08d6 Handle flatpak output that provides the architecture. 2023-10-28 11:50:22 -04:00
Daniel Johnson
10d64c5dc2 Supply missing import for 'logger'. 2023-10-28 10:54:43 -04:00
Mathieu Comandon
53464a4be8 Add quotes around passphrase 2023-10-27 22:56:19 -07:00
Mathieu Comandon
d1e84424ea Add error handler when not able to parse Flatpak output 2023-10-27 12:50:49 -07:00
Mathieu Comandon
d17b4583b5 Add check for missing Itch.io appids 2023-10-27 12:21:29 -07:00
NorwayFun
4b7b4c0e12 po: Update Georgian translation 2023-10-27 11:58:43 -07:00
Daniel Johnson
5c7e2bc945 Sprinkle os.path.expanduser all over
Yes, it's ugly and inelegant. But we've got many users with ~ in the paths in their config files.

This plops a bunch of expanduser calls in an effort to make games like that at least work.

It's unlikely this covers everything, but hopefully it will handle the most important cases.
2023-10-25 19:34:38 -04:00
Daniel Johnson
9965b9de60 Add exception handling so if desktop integration fails, the game may still be run.
The integration isn't critical; we'll log the exception and continue, and hope Wine can still start.

Resolves #5101
2023-10-25 18:41:52 -04:00
Daniel Johnson
f557e1c486 Prophylactically expand ~ for wine prefix access.
It should be expanded, but just in case it is not.
2023-10-25 18:37:13 -04:00
Quinn64
c09097491f
Added support for Flatpak custom commands (#5090) 2023-10-25 15:22:14 -07:00
Adi Efendic
b870d29241 Add additional validation for playtime input 2023-10-25 14:37:30 -07:00
Adi Efendic
38af68261e Add input field for playtime in edit game dialog 2023-10-25 14:37:30 -07:00
Daniel Johnson
11d728f524 Use spawn to start a terminal
This way, Lutris does not lock up until the terminal exits.

Resolves #5093
2023-10-23 16:27:12 -04:00
Daniel Johnson
6568fe4bd8 Add check that the prefix can be found before giving it to Steam via env-var.
Resolves #5091
2023-10-22 13:13:31 -04:00
Daniel Johnson
ed4e4c32ba Add prophylactic code for bogus environment variables.
Each env-var value should be a string, if not we skip None and convert all other values to strings. But we also log warnings so we can tell which env-var it was.
2023-10-22 11:53:16 -04:00
Daniel Johnson
85e63862f6
Merge pull request #5087 from NorwayFun/master
po: Add Georgian translation
2023-10-21 07:47:36 -04:00
NorwayFun
6f280a0429
po: Add Georgian translation 2023-10-21 12:45:44 +02:00
NorwayFun
89f31ed5fd
Update LINGUAS: Add Georgian 2023-10-21 12:45:05 +02:00
Mathieu Comandon
ba9c0aea5a Typo!!!!!!!! 2023-10-19 18:09:59 -07:00
Mathieu Comandon
6b3cacb33b Be more lenient with Flatpak options 2023-10-18 16:58:50 -07:00
Mathieu Comandon
a1319a82dd Add user expansion to create_prefix 2023-10-18 14:27:01 -07:00
Mathieu Comandon
7b17a9a25d Expand user path in path_exists 2023-10-18 14:06:55 -07:00
Mathieu Comandon
a9f0dfabbf Improve Flatpak support for ScummVM 2023-10-18 13:15:45 -07:00
Mathieu Comandon
5158fc37eb No need to write to shortcut file when no shortcut is removed 2023-10-17 16:28:32 -07:00
Mathieu Comandon
3a27de7a94 Remove Steam shortcut, completely remove games with no playtime, remove update_all_artwork 2023-10-17 16:25:52 -07:00
Daniel Johnson
8c5e6d7264 Make sorting by name ('natural sorting') be case-insensitive, because game publishers don't know how to spell.
Resolves #5076
2023-10-17 19:00:31 -04:00
Mathieu Comandon
e6d578f250 Check for validity of files in scripts (Fixes #5057) 2023-10-17 15:46:49 -07:00