From 4279200bd015d79179961f02a1b4d1544c61ff52 Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Sat, 18 Apr 2026 08:47:27 -0500 Subject: Gate panel-plugin swap on enabled, pre-sync plugins.txt from prefix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bethesda Plugin Manager disabled in settings still swapped the espTab at UI init — the callback ran unconditionally. Gate it on isPluginEnabled and warn + flag restart when toggling panel plugins, since the swap is one-shot. Pre-deploy sync-back: if prefix Plugins.txt mtime is newer than profile (external LOOT run), syncPluginsBack first so the deploy doesn't clobber the external edits. Co-Authored-By: Claude Opus 4.7 (1M context) --- libs/installer_bsplugins/src/MOPlugin/IPluginPanel.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libs') diff --git a/libs/installer_bsplugins/src/MOPlugin/IPluginPanel.cpp b/libs/installer_bsplugins/src/MOPlugin/IPluginPanel.cpp index 904f049..9ec2b88 100644 --- a/libs/installer_bsplugins/src/MOPlugin/IPluginPanel.cpp +++ b/libs/installer_bsplugins/src/MOPlugin/IPluginPanel.cpp @@ -37,6 +37,10 @@ bool IPluginPanel::init(MOBase::IOrganizer* organizer) } organizer->onUserInterfaceInitialized([this, organizer](QMainWindow* mainWindow) { + if (!organizer->isPluginEnabled(this)) { + return; + } + const auto tabWidget = mainWindow->findChild(u"tabWidget"_s); if (tabWidget == nullptr) { -- cgit v1.3.1