fix select/deselect and recurse

This commit is contained in:
Stewart Allen 2021-11-08 20:23:56 -05:00
commit cbb446eda1
2 changed files with 7 additions and 7 deletions

View file

@ -2379,7 +2379,7 @@
if (event && event.target.nodeName === "CANVAS") { if (event && event.target.nodeName === "CANVAS") {
if (object && object.object) { if (object && object.object) {
if (object.object.widget) { if (object.object.widget) {
platform.select(object.object.widget, event.shiftKey); platform.select(object.object.widget, event.shiftKey, false);
} }
} else { } else {
platform.deselect(); platform.deselect();

View file

@ -1853,7 +1853,7 @@
if (viewMode !== VIEWS.ARRANGE) { if (viewMode !== VIEWS.ARRANGE) {
return; return;
} }
// apply deselect to entire group // apply select to entire group
if (recurse && widget && widget.group.length > 1) { if (recurse && widget && widget.group.length > 1) {
for (let w of widget.group) { for (let w of widget.group) {
platformSelect(w, true, false); platformSelect(w, true, false);
@ -1864,15 +1864,15 @@
sel = (selectedMeshes.indexOf(mesh) >= 0); sel = (selectedMeshes.indexOf(mesh) >= 0);
if (sel) { if (sel) {
if (shift) { if (shift) {
platform.deselect(widget) platform.deselect(widget, recurse)
} else if (selectedMeshes.length > 1) { } else if (selectedMeshes.length > 1) {
platform.deselect(); platform.deselect(undefined, recurse);
platform.select(widget, false); platform.select(widget, false, recurse);
} }
} else { } else {
// prevent selection in slice view // prevent selection in slice view
if (!mesh.material.visible) return; if (!mesh.material.visible) return;
if (!shift) platform.deselect(); if (!shift) platform.deselect(undefined, recurse);
selectedMeshes.push(mesh); selectedMeshes.push(mesh);
API.event.emit('widget.select', widget); API.event.emit('widget.select', widget);
widget.setColor(color.selected); widget.setColor(color.selected);
@ -2135,7 +2135,7 @@
w.setColor(color); w.setColor(color);
}; };
b.onclick = function() { b.onclick = function() {
platformSelect(w, true); platformSelect(w, true, false);
color = w.getColor(); color = w.getColor();
}; };
} }