From b5cb763ab1e34bfcc3420468d1fc9a60a0e17933 Mon Sep 17 00:00:00 2001 From: ed Date: Sat, 1 Mar 2025 22:03:18 +0000 Subject: [PATCH] usb-eject: treepar fix since this dumb plugin found an actual usecase, fix the most glaring issue when nodes overflow from treeul into treepar, the eject-button is cloned over as well, but the clone does nothing (as expected), though this will also cause a flood of new eject-buttons appearing, and that's worth fixing NB: check treeul + treepar explicitly; avoid docul --- bin/hooks/usb-eject.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/bin/hooks/usb-eject.js b/bin/hooks/usb-eject.js index 4deb2995..4e977991 100644 --- a/bin/hooks/usb-eject.js +++ b/bin/hooks/usb-eject.js @@ -1,7 +1,9 @@ // see usb-eject.py for usage function usbclick() { - QS('#treeul a[href="/usb/"]').click(); + var o = QS('#treeul a[href="/usb/"]') || QS('#treepar a[href="/usb/"]'); + if (o) + o.click(); } function eject_cb() { @@ -19,11 +21,14 @@ function add_eject_2(a) { return; var v = aw[2], - k = 'umount_' + v, - o = ebi(k); + k = 'umount_' + v; - if (o) + for (var b = 0; b < 9; b++) { + var o = ebi(k); + if (!o) + break; o.parentNode.removeChild(o); + } a.appendChild(mknod('span', k, '⏏'), a); o = ebi(k); @@ -40,7 +45,7 @@ function add_eject_2(a) { }; function add_eject() { - var o = QSA('#treeul a[href^="/usb/"]'); + var o = QSA('#treeul a[href^="/usb/"]') || QSA('#treepar a[href^="/usb/"]'); for (var a = o.length - 1; a > 0; a--) add_eject_2(o[a]); };