From 725e4027f29e000ba35cd1ccbcc77fa4037884ac Mon Sep 17 00:00:00 2001 From: kramo <93832451+kra-mo@users.noreply.github.com> Date: Wed, 5 Apr 2023 10:13:22 +0200 Subject: [PATCH] Add option to import Steam games from Lutris --- data/gtk/preferences.blp | 9 +++++++++ data/hu.kramo.Cartridges.gschema.xml | 3 +++ src/preferences.py | 7 +++++++ src/utils/lutris_parser.py | 2 +- 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/data/gtk/preferences.blp b/data/gtk/preferences.blp index e2bf52f..23b406b 100644 --- a/data/gtk/preferences.blp +++ b/data/gtk/preferences.blp @@ -121,6 +121,7 @@ template PreferencesWindow : Adw.PreferencesWindow { valign: center; } } + Adw.ActionRow { title: _("Lutris Cache Location"); subtitle: _("Directory to use when importing game covers"); @@ -130,6 +131,14 @@ template PreferencesWindow : Adw.PreferencesWindow { valign: center; } } + + Adw.ActionRow { + title: _("Import Steam Games"); + + Switch lutris_steam_switch { + valign: center; + } + } } Adw.ExpanderRow heroic_expander_row { diff --git a/data/hu.kramo.Cartridges.gschema.xml b/data/hu.kramo.Cartridges.gschema.xml index 20d116a..910a03e 100644 --- a/data/hu.kramo.Cartridges.gschema.xml +++ b/data/hu.kramo.Cartridges.gschema.xml @@ -31,6 +31,9 @@ "~/.var/app/net.lutris.Lutris/cache/lutris" + + false + true diff --git a/src/preferences.py b/src/preferences.py index 56eaae6..47ac7a6 100644 --- a/src/preferences.py +++ b/src/preferences.py @@ -101,6 +101,7 @@ class PreferencesWindow(Adw.PreferencesWindow): lutris_expander_row = Gtk.Template.Child() lutris_file_chooser_button = Gtk.Template.Child() lutris_cache_file_chooser_button = Gtk.Template.Child() + lutris_steam_switch = Gtk.Template.Child() heroic_expander_row = Gtk.Template.Child() heroic_file_chooser_button = Gtk.Template.Child() @@ -213,6 +214,12 @@ class PreferencesWindow(Adw.PreferencesWindow): self.lutris_expander_row, self.lutris_file_chooser_button, ) + self.schema.bind( + "lutris-import-steam", + self.lutris_steam_switch, + "active", + Gio.SettingsBindFlags.DEFAULT, + ) def set_cache_dir(_source, result, _unused): try: diff --git a/src/utils/lutris_parser.py b/src/utils/lutris_parser.py index 270132a..aadf143 100644 --- a/src/utils/lutris_parser.py +++ b/src/utils/lutris_parser.py @@ -83,7 +83,7 @@ def lutris_parser(parent_widget): # No need to unlink temp files as they disappear when the connection is closed database_tmp_path.unlink(missing_ok=True) - if schema.get_boolean("steam"): + if not schema.get_boolean("lutris-import-steam"): rows = [row for row in rows if not row[3] == "steam"] current_time = int(time())