From b8b715fbebfd8c3d4278a3359fbed1a52da4780f Mon Sep 17 00:00:00 2001
From: GeckoEidechse <40122905+GeckoEidechse@users.noreply.github.com>
Date: Sun, 2 Jul 2023 17:01:05 +0200
Subject: feat: Add button to disable ModSettings mod (#393)

In preparation for Northstar releasing merged Mod Settings mod
---
 src-vue/src/views/RepairView.vue | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

(limited to 'src-vue/src/views/RepairView.vue')

diff --git a/src-vue/src/views/RepairView.vue b/src-vue/src/views/RepairView.vue
index 9b3543d4..e284e824 100644
--- a/src-vue/src/views/RepairView.vue
+++ b/src-vue/src/views/RepairView.vue
@@ -17,6 +17,10 @@
                 {{ $t('settings.repair.window.force_reinstall_ns') }}
             </el-button>
 
+            <el-button type="primary" @click="disableModsettingsMod">
+                {{ $t('settings.repair.window.disable_modsettings') }}
+            </el-button>
+
             <h2>FlightCore</h2>
 
             <el-button type="primary" @click="cleanUpDownloadFolder">
@@ -121,6 +125,20 @@ export default defineComponent({
             // ...and save
             await persistentStore.save();
         },
+        async disableModsettingsMod() {
+            let game_install = {
+                game_path: this.$store.state.game_path,
+                install_type: this.$store.state.install_type
+            } as GameInstall;
+
+            await invoke("set_mod_enabled_status", { gameInstall: game_install, modName: "Mod Settings", isEnabled: false })
+                .then((message) => {
+                    showNotification(this.$t('generic.success'), this.$t('settings.repair.window.disable_modsettings_success'));
+                })
+                .catch((error) => {
+                    showErrorNotification(error);
+                });
+        },
     },
     watch: {
         // Lang value is propagated to repair view after it's mounted, so we need to watch
-- 
cgit v1.2.3

