From 2a223671b9d82e6aa29f31a60c7ab1f7c7975354 Mon Sep 17 00:00:00 2001 From: kmmiio99o Date: Sat, 31 Jan 2026 21:48:43 +0100 Subject: [PATCH] fix: not being able to enable bundle injection --- .../xposed/modules/LogBox/LogBoxActions.kt | 55 +++++++++++-------- .../xposed/modules/LogBox/LogBoxUtils.kt | 9 ++- 2 files changed, 39 insertions(+), 25 deletions(-) diff --git a/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxActions.kt b/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxActions.kt index 39fd5b4..2558f30 100644 --- a/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxActions.kt +++ b/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxActions.kt @@ -63,31 +63,38 @@ object LogBoxActions { settingsFile.parentFile?.mkdirs() val settings = if (settingsFile.exists()) JSONObject(settingsFile.readText()) else JSONObject() - if (bundle.exists()) { - if (disabled.exists()) disabled.delete() - val renamed = bundle.renameTo(disabled) - settings.put("bundleInjectionDisabled", true) - settingsFile.writeText(settings.toString()) - Toast.makeText( - context, - if (renamed) "Bundle injection disabled" else "Bundle injection disabled (marker set)", - Toast.LENGTH_SHORT - ).show() - } else if (disabled.exists()) { - val renamed = disabled.renameTo(bundle) - settings.put("bundleInjectionDisabled", false) - settingsFile.writeText(settings.toString()) - Toast.makeText( - context, - if (renamed) "Bundle injection enabled" else "Bundle injection enabled (marker removed)", - Toast.LENGTH_SHORT - ).show() - } else { - disabled.writeText("") - settings.put("bundleInjectionDisabled", true) - settingsFile.writeText(settings.toString()) - Toast.makeText(context, "Bundle injection disabled (marker created)", Toast.LENGTH_SHORT).show() + val currentlyDisabled = LogBoxUtils.isBundleInjectionDisabled(context) + val newState = !currentlyDisabled + + if (bundle.exists() && disabled.exists()) { + bundle.delete() } + + if (newState) { + // Disable injection + if (disabled.exists()) { + disabled.delete() + } + if (bundle.exists()) { + bundle.renameTo(disabled) + } else { + disabled.writeText("") + } + settings.put("bundleInjectionDisabled", true) + Toast.makeText(context, "Bundle injection disabled", Toast.LENGTH_SHORT).show() + } else { + // Enable injection + if (disabled.exists()) { + disabled.renameTo(bundle) + } else if (!bundle.exists()) { + bundle.writeText("") + } + settings.put("bundleInjectionDisabled", false) + Toast.makeText(context, "Bundle injection enabled", Toast.LENGTH_SHORT).show() + } + + settingsFile.writeText(settings.toString()) + } catch (e: Exception) { Log.e("Error toggling bundle injection: ${e.message}") showError(context, "Failed to toggle bundle injection", e.message) diff --git a/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxUtils.kt b/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxUtils.kt index 495e66f..fc6f52f 100644 --- a/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxUtils.kt +++ b/app/src/main/kotlin/ShiggyXposed/xposed/xposed/modules/LogBox/LogBoxUtils.kt @@ -86,9 +86,16 @@ object LogBoxUtils { val cacheDir = File(context.dataDir, Constants.CACHE_DIR) val bundle = File(cacheDir, Constants.MAIN_SCRIPT_FILE) val disabled = File(cacheDir, "${Constants.MAIN_SCRIPT_FILE}.disabled") - if (disabled.exists()) return true + + if (disabled.exists()) { + if (bundle.exists()) { + bundle.delete() + } + return true + } if (bundle.exists()) return false + // If neither file exists, check settings val settingsFile = File(context.filesDir, "logbox/LOGBOX_SETTINGS") if (!settingsFile.exists()) return false val json = JSONObject(settingsFile.readText())