Skip to content

Commit d4673ac

Browse files
authored
drop minimal hook mode
1 parent 7f65c0d commit d4673ac

File tree

10 files changed

+43
-63
lines changed

10 files changed

+43
-63
lines changed

module/service.sh

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,13 @@ for kpm in $KPNDIR/kpm/*.kpm; do
1616
kpatch kpm load "$kpm" || rm -f "$kpm"
1717
done
1818

19-
[ -n "$REHOOK" ] && [ "$REHOOK" -ge 0 ] && [ "$REHOOK" -le 2 ] && kpatch rehook $REHOOK
19+
if [ -n "$REHOOK" ]; then
20+
if [ "$REHOOK" = "enable" ] || [ "$REHOOK" = "disable" ]; then
21+
kpatch rehook $REHOOK
22+
else
23+
rm -f "$KPNDIR/rehook"
24+
fi
25+
fi
2026

2127
until [ "$(getprop sys.boot_completed)" = "1" ]; do
2228
sleep 1

module/status.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ if kpatch hello >/dev/null 2>&1; then
4646
[ -z "$KPM_COUNT" ] && KPM_COUNT=0
4747

4848
REHOOK_MODE="$(kpatch rehook_status 2>/dev/null | awk '{print $NF}')"
49-
[ -z "$REHOOK_MODE" ] && REHOOK_MODE="0"
49+
[ -z "$REHOOK_MODE" ] && REHOOK_MODE="enabled"
5050

5151
string="$active | kpmodule: $KPM_COUNT 💉 | rehook: $REHOOK_MODE 🪝"
5252
fi

webui/index.html

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -151,21 +151,16 @@
151151
<div id="settings-page" class="page">
152152
<div class="page-content">
153153
<div class="list-group">
154-
<div class="list-item installed-only" id="rehook">
154+
<label class="list-item installed-only" id="rehook">
155155
<md-ripple></md-ripple>
156156
<md-icon><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="M440-120q-100 0-170-70t-70-170v-240l200 200-56 57-64-64v47q0 66 47 113t113 47q66 0 113-47t47-113v-127q-36-14-58-44.5T520-600q0-38 22-68.5t58-44.5v-167h80v167q36 14 58 44.5t22 68.5q0 38-22 69t-58 44v127q0 100-70 170t-170 70Zm200-440q17 0 28.5-11.5T680-600q0-17-11.5-28.5T640-640q-17 0-28.5 11.5T600-600q0 17 11.5 28.5T640-560Zm0-40Z"/></svg></md-icon>
157157
<div class="list-item-content">
158-
<div slot="headline" data-i18n="title_rehook_mode">Rehook Mode</div>
158+
<div slot="headline" data-i18n="title_rehook_syscall">Rehook Syscall</div>
159159
</div>
160-
<div class="list-item-trailing" id="rehook-menu-container">
161-
<div class="menu-text" id="rehook-text">Disable</div>
162-
<md-menu id="rehook-menu" anchor="rehook" anchor-corner="start-end" menu-corner="start-end">
163-
<md-menu-item data-i18n="label_rehook_mode_disable">Disable</md-menu-item>
164-
<md-menu-item data-i18n="label_rehook_mode_target">Target</md-menu-item>
165-
<md-menu-item data-i18n="label_rehook_mode_minimal">Minimal</md-menu-item>
166-
</md-menu>
160+
<div class="list-item-trailing">
161+
<md-switch selected></md-switch>
167162
</div>
168-
</div>
163+
</label>
169164
<div class="list-item" id="language">
170165
<md-ripple></md-ripple>
171166
<md-icon><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 -960 960 960"><path d="m476-80 182-480h84L924-80h-84l-43-122H603L560-80h-84ZM160-200l-56-56 202-202q-35-35-63.5-80T190-640h84q20 39 40 68t48 58q33-33 68.5-92.5T484-720H40v-80h280v-80h80v80h280v80H564q-21 72-63 148t-83 116l96 98-30 82-122-125-202 201Zm468-72h144l-72-204-72 204Z" /></svg></md-icon>

webui/index.js

Lines changed: 23 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,6 @@ import * as excludeModule from './page/exclude.js';
99
export const modDir = '/data/adb/modules/KPatch-Next';
1010
export const persistDir = '/data/adb/kp-next';
1111

12-
const rehookMode = [
13-
"disable", // 0
14-
"target", // 1
15-
"minimal" // 2
16-
]
17-
1812
export let MAX_CHUNK_SIZE = 96 * 1024;
1913

2014
async function updateStatus() {
@@ -62,38 +56,41 @@ async function reboot(reason = "") {
6256

6357
async function initRehook() {
6458
const rehook = document.getElementById('rehook');
65-
const rehookMenu = rehook.querySelector('md-menu');
66-
const mode = await updateRehookStatus();
67-
if (mode) rehook.onclick = () => rehookMenu.open = !rehookMenu.open;
68-
rehookMenu.querySelectorAll('md-menu-item').forEach((item, index) => {
69-
item.onclick = () => {
70-
setRehookMode(index);
71-
rehook.click();
72-
}
59+
const rehookRipple = rehook.querySelector('md-ripple');
60+
const rehookSwitch = rehook.querySelector('md-switch');
61+
const isEnabled = await updateRehookStatus();
62+
if (isEnabled === null) {
63+
rehookRipple.disabled = true;
64+
rehookSwitch.disabled = true;
65+
return;
66+
}
67+
rehookSwitch.addEventListener('change', () => {
68+
setRehookMode(rehookSwitch.selected);
7369
});
7470
}
7571

7672
async function updateRehookStatus() {
7773
const rehook = document.getElementById('rehook');
78-
const rehookText = rehook.querySelector('.menu-text');
79-
const rehookRipple = rehook.querySelector('md-ripple');
74+
const rehookSwitch = rehook.querySelector('md-switch');
8075

81-
let modeName = 'target', modeId = null;
76+
let isEnabled = null;
8277

8378
const result = await exec(`kpatch rehook_status`, { env: { PATH: `${modDir}/bin` } });
84-
const mode = result.stdout.split('\n').find(line => line.includes('mode: '));
85-
if (mode) {
86-
modeId = parseInt(mode.split(':')[1].trim());
87-
modeName = rehookMode[modeId];
79+
if (result.errno === 0) {
80+
const mode = result.stdout.split(':')[1].trim();
81+
if (mode === 'enabled') {
82+
isEnabled = true;
83+
} else if (mode === 'disabled') {
84+
isEnabled = false;
85+
}
86+
rehookSwitch.selected = isEnabled;
8887
}
89-
rehookText.textContent = getString('label_rehook_mode_' + modeName);
90-
rehookText.classList.toggle('disabled', !mode);
91-
rehookRipple.disabled = !mode;
9288

93-
return modeId !== null;
89+
return isEnabled;
9490
}
9591

96-
function setRehookMode(mode) {
92+
function setRehookMode(isEnable) {
93+
const mode = isEnable ? "enable" : "disable";
9794
exec(`
9895
kpatch rehook ${mode} && echo ${mode} > ${persistDir}/rehook && sh "${modDir}/status.sh"`,
9996
{ env: { PATH: `${modDir}/bin:$PATH` } }

webui/public/locales/strings/bn.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<string name="title_reboot_download">ডাউনলোডে রিবুট</string>
1717
<string name="title_reboot_edl">EDL-এ রিবুট</string>
1818
<string name="title_kernel">কার্নেল</string>
19-
<string name="title_rehook_mode">রিহুক মোড</string>
19+
<string name="title_rehook_syscall">রিহুক Syscall</string>
2020
<!-- Buttons -->
2121
<string name="button_install">ইনস্টল করতে ক্লিক করুন</string>
2222
<string name="button_uninstall">আনইনস্টল</string>
@@ -35,9 +35,6 @@
3535
<string name="label_show_system_app">সিস্টেম অ্যাপ দেখান</string>
3636
<string name="label_system_default">সিস্টেম ডিফল্ট</string>
3737
<string name="label_trigger_event">ট্রিগার ইভেন্ট</string>
38-
<string name="label_rehook_mode_disable">নিষ্ক্রিয়</string>
39-
<string name="label_rehook_mode_target">টার্গেট</string>
40-
<string name="label_rehook_mode_minimal">ন্যূনতম</string>
4138
<!-- Status -->
4239
<string name="status_not_installed">ইনস্টল করা নেই</string>
4340
<string name="status_working">কাজ করছে 😋</string>

webui/public/locales/strings/en.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<string name="title_reboot_download">Reboot to Download</string>
1717
<string name="title_reboot_edl">Reboot to EDL</string>
1818
<string name="title_kernel">Kernel</string>
19-
<string name="title_rehook_mode">Rehook Mode</string>
19+
<string name="title_rehook_syscall">Rehook Syscall</string>
2020
<!-- Buttons -->
2121
<string name="button_install">Click to install</string>
2222
<string name="button_uninstall">Uninstall</string>
@@ -35,9 +35,6 @@
3535
<string name="label_show_system_app">Show system app</string>
3636
<string name="label_system_default">System Default</string>
3737
<string name="label_trigger_event">Trigger Event</string>
38-
<string name="label_rehook_mode_disable">Disable</string>
39-
<string name="label_rehook_mode_target">Target</string>
40-
<string name="label_rehook_mode_minimal">Minimal</string>
4138
<!-- Status -->
4239
<string name="status_not_installed">Not installed</string>
4340
<string name="status_working">Working 😋</string>

webui/public/locales/strings/fr.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<string name="title_reboot_bootloader">Redémarrer vers le Bootloader</string>
1616
<string name="title_reboot_download">Redémarrer en mode Téléchargement</string>
1717
<string name="title_reboot_edl">Redémarrer en mode EDL</string>
18-
<string name="title_rehook_mode">Mode Rehook</string>
18+
<string name="title_rehook_syscall">Rehook Syscall</string>
1919
<!-- Buttons -->
2020
<string name="button_install">Appuyez pour installer</string>
2121
<string name="button_uninstall">Désinstaller</string>
@@ -33,9 +33,6 @@
3333
<string name="label_show_system_app">Afficher les applications système</string>
3434
<string name="label_system_default">Paramètre système par défaut</string>
3535
<string name="label_trigger_event">Déclencher un événement</string>
36-
<string name="label_rehook_mode_disable">Désactiver</string>
37-
<string name="label_rehook_mode_target">Cible</string>
38-
<string name="label_rehook_mode_minimal">Minimal</string>
3936
<!-- Status -->
4037
<string name="status_not_installed">Non installé</string>
4138
<string name="status_working">En fonctionnement 😋</string>

webui/public/locales/strings/ja.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<string name="title_reboot_download">ダウンロードモードへ再起動</string>
1717
<string name="title_reboot_edl">EDL へ再起動</string>
1818
<string name="title_kernel">カーネル</string>
19-
<string name="title_rehook_mode">再フックモード</string>
19+
<string name="title_rehook_syscall">再フック Syscall</string>
2020
<!-- Buttons -->
2121
<string name="button_install">クリックしてインストール</string>
2222
<string name="button_uninstall">アンインストール</string>
@@ -35,9 +35,6 @@
3535
<string name="label_show_system_app">システムアプリを表示</string>
3636
<string name="label_system_default">システムのデフォルト</string>
3737
<string name="label_trigger_event">トリガーイベント</string>
38-
<string name="label_rehook_mode_disable">無効化</string>
39-
<string name="label_rehook_mode_target">ターゲット</string>
40-
<string name="label_rehook_mode_minimal">最小限</string>
4138
<!-- Status -->
4239
<string name="status_not_installed">未インストール</string>
4340
<string name="status_working">動作中 😋</string>

webui/public/locales/strings/tr.xml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<string name="title_reboot_download">İndirme Modunda Yeniden Başlat</string>
1717
<string name="title_reboot_edl">EDL Modunda Yeniden Başlat</string>
1818
<string name="title_kernel">Çekirdek</string>
19-
<string name="title_rehook_mode">Yeniden Kancala Modu</string>
19+
<string name="title_rehook_syscall">Yeniden Kancala Syscall</string>
2020
<!-- Buttons -->
2121
<string name="button_install">Yüklemek için tıkla</string>
2222
<string name="button_uninstall">Kaldır</string>
@@ -35,9 +35,6 @@
3535
<string name="label_show_system_app">Sistem uygulamasını göster</string>
3636
<string name="label_system_default">Sistem Varsayılanı</string>
3737
<string name="label_trigger_event">Olay Tetikle</string>
38-
<string name="label_rehook_mode_disable">Devre Dışı Bırak</string>
39-
<string name="label_rehook_mode_target">Hedef</string>
40-
<string name="label_rehook_mode_minimal">Minimal</string>
4138
<!-- Status -->
4239
<string name="status_not_installed">Kurulu Değil</string>
4340
<string name="status_working">Çalışıyor 😋</string>
@@ -84,4 +81,4 @@
8481
<string name="msg_error_loading_apps">Uygulamalar yüklenirken hata oluştu: </string>
8582
<string name="msg_error_rendering_apps">Uygulamalar oluşturulurken hata oluştu: </string>
8683
<string name="msg_unknown">Bilinmiyor</string>
87-
</resources>
84+
</resources>

webui/public/locales/strings/zh-CN.xml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<string name="title_reboot_download">重启到 Download</string>
1717
<string name="title_reboot_edl">重启到 EDL</string>
1818
<string name="title_kernel">内核</string>
19-
<string name="title_rehook_mode">重挂钩模式</string>
19+
<string name="title_rehook_syscall">重挂钩 Syscall</string>
2020
<!-- Buttons -->
2121
<string name="button_install">点击安装</string>
2222
<string name="button_uninstall">卸载</string>
@@ -35,9 +35,6 @@
3535
<string name="label_show_system_app">显示系统应用</string>
3636
<string name="label_system_default">系统默认</string>
3737
<string name="label_trigger_event">触发事件</string>
38-
<string name="label_rehook_mode_disable">禁用</string>
39-
<string name="label_rehook_mode_target">目标</string>
40-
<string name="label_rehook_mode_minimal">最小化</string>
4138
<!-- Status -->
4239
<string name="status_not_installed">未安装</string>
4340
<string name="status_working">工作中 😋</string>

0 commit comments

Comments
 (0)