From 013d00a5e9f2bd06e4cf52c13f592ab5ef2b3ee5 Mon Sep 17 00:00:00 2001
From: TheKing-OfTime <artem.matvienko0@gmail.com>
Date: Mon, 27 Jan 2025 07:40:50 +0300
Subject: [PATCH] Add patch to unlock DevPanel if DevTools enabled

---
 patches/0003-Expose-Dev-Tools-In-Main-World.patch | 12 ++++++++++++
 repack.sh                                         |  1 +
 2 files changed, 13 insertions(+)
 create mode 100644 patches/0003-Expose-Dev-Tools-In-Main-World.patch

diff --git a/patches/0003-Expose-Dev-Tools-In-Main-World.patch b/patches/0003-Expose-Dev-Tools-In-Main-World.patch
new file mode 100644
index 0000000..83dce24
--- /dev/null
+++ b/patches/0003-Expose-Dev-Tools-In-Main-World.patch
@@ -0,0 +1,12 @@
+diff --git a/main/config.js b/main/config.js
+--- a/main/lib/preload.js
++++ b/main/lib/preload.js
+@@ -7,6 +7,8 @@ const deviceInfo_js_1 = require("./deviceInfo.js");
+ const theme_js_1 = require("../types/theme.js");
+ const hostnamePatterns_js_1 = require("../constants/hostnamePatterns.js");
+ const deviceInfo = (0, deviceInfo_js_1.getDeviceInfo)();
++const devTools = process.env.DEV_TOOLS && process.env.DEV_TOOLS > 0;
++electron_1.contextBridge.exposeInMainWorld('IS_DEVTOOLS_ENABLED', devTools);
+ electron_1.contextBridge.exposeInMainWorld('VERSION', String(config_js_1.config.buildInfo.VERSION));
+ electron_1.contextBridge.exposeInMainWorld('BRANCH', String(config_js_1.config.buildInfo.BRANCH));
+ electron_1.contextBridge.exposeInMainWorld('PLATFORM', deviceInfo.os);
diff --git a/repack.sh b/repack.sh
index e28dd79..9064faf 100755
--- a/repack.sh
+++ b/repack.sh
@@ -72,6 +72,7 @@ find "./" -type f \( -name "*.js" -o -name "*.js.map" \) -print0 | while IFS= re
     # Use 'sed' to perform the replacement in-place
     sed -i 's/l.isLinuxApplication/(window.CUSTOM_TITLE_BAR)/g' "$file"
     sed -i 's/o.isLinuxApplication/(window.CUSTOM_TITLE_BAR)/g' "$file"
+    sed -i 's/panel:!1,allowOverwriteExperiments:!1/panel:window.IS_DEVTOOLS_ENABLED??!1,allowOverwriteExperiments:window.IS_DEVTOOLS_ENABLED??!1/g' "$file"
 done
 echo ".js chunks patched"