diff --git a/client/src/components/vbox.component.jsx b/client/src/components/vbox.component.jsx
index a13c1c4e..f80270a6 100644
--- a/client/src/components/vbox.component.jsx
+++ b/client/src/components/vbox.component.jsx
@@ -172,14 +172,13 @@ class Vbox extends preact.Component {
if (!vboxSelecting) return false;
document.activeElement.blur();
clearVboxSelected();
- sendVboxAccept(vboxSelected[0], vboxSelected[1]);
+ sendVboxAccept(vboxSelected[0][0], vboxSelected[0][1]);
return true;
}
function availableBtn(v, group, index) {
if (!v) return ;
- const selected = vboxSelected[0] === group && vboxSelected[1] === index;
-
+ const selected = vboxSelected.length && vboxSelected.some(vs => vs[0] === group && vs[1] === index);
// state not yet set in double click handler
function onDblClick(e) {
clearVboxSelected();
@@ -190,10 +189,11 @@ class Vbox extends preact.Component {
function onClick(e) {
e.stopPropagation();
setItemEquip(null);
- setCombiner([]);
setInfo(vbox.free[group][index]);
- if (vboxSelected[0] === group && vboxSelected[1] === index) return clearVboxSelected();
- return setVboxSelected([group, index]);
+ if (vboxSelected.length && vboxSelected.some(vs => vs[0] === group && vs[1] === index)) {
+ return setVboxSelected(vboxSelected.filter(vs => !(vs[0] === group && vs[1] === index)));
+ }
+ return setVboxSelected([...vboxSelected, [group, index]]);
}
const combinerItems = combiner.map(j => vbox.bound[j]);
@@ -217,10 +217,7 @@ class Vbox extends preact.Component {
const disabled = vbox.bits <= group;
return (