From d37d651d8c68039f5010828e997f25a2844eefc5 Mon Sep 17 00:00:00 2001 From: ThePedroo Date: Sun, 18 May 2025 13:06:14 -0300 Subject: [PATCH] improve: immediatly set monitor status after set in WebUI This commit improves the "Actions" tab by immediatly changing visually the monitor status in the WebUI once modified. --- webroot/js/monitorActions.js | 43 ++++++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/webroot/js/monitorActions.js b/webroot/js/monitorActions.js index 791d1db..4fd76d3 100644 --- a/webroot/js/monitorActions.js +++ b/webroot/js/monitorActions.js @@ -1,19 +1,38 @@ -import { exec } from './kernelsu.js' +import { exec, toast } from './kernelsu.js' + +import { getTranslations } from './language.js' const monitor_start = document.getElementById('monitor_start_button') const monitor_stop = document.getElementById('monitor_stop_button') const monitor_pause = document.getElementById('monitor_pause_button') -if (monitor_start) { - monitor_start.addEventListener('click', () => { - exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl start') - }) +const monitor_status = document.getElementById('monitor_status'); - monitor_stop.addEventListener('click', () => { - exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl exit') - }) +(async () => { + const sys_lang = localStorage.getItem('/system/language') + const translations = await getTranslations(sys_lang || 'en_US') - monitor_pause.addEventListener('click', () => { - exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl stop') - }) -} + if (monitor_start) { + monitor_start.addEventListener('click', () => { + if (![ translations.page.actions.status.tracing, translations.page.actions.status.stopping, translations.page.actions.status.stopped ].includes(monitor_status.innerHTML)) return; + + monitor_status.innerHTML = translations.page.actions.status.tracing + + exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl start') + }) + + monitor_stop.addEventListener('click', () => { + monitor_status.innerHTML = translations.page.actions.status.exiting + + exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl exit') + }) + + monitor_pause.addEventListener('click', () => { + if (![ translations.page.actions.status.tracing, translations.page.actions.status.stopping, translations.page.actions.status.stopped ].includes(monitor_status.innerHTML)) return; + + monitor_status.innerHTML = translations.page.actions.status.stopped + + exec('/data/adb/modules/zygisksu/bin/zygisk-ptrace64 ctl stop') + }) + } +})() \ No newline at end of file