浏览代码

Merge pull request #2006 from kalle264/fix_draggable_objects

Fix draggable object deletion
Falko Schindler 1 年之前
父节点
当前提交
287455511e
共有 1 个文件被更改,包括 10 次插入4 次删除
  1. 10 4
      nicegui/elements/scene.js

+ 10 - 4
nicegui/elements/scene.js

@@ -326,14 +326,20 @@ export default {
     },
     draggable(object_id, value) {
       if (!this.objects.has(object_id)) return;
-      if (value) this.draggable_objects.push(this.objects.get(object_id));
-      else this.draggable_objects.pop(this.objects.get(object_id));
+      const object = this.objects.get(object_id);
+      if (value) this.draggable_objects.push(object);
+      else {
+        const index = this.draggable_objects.indexOf(object);
+        if (index != -1) this.draggable_objects.splice(index, 1);
+      }
     },
     delete(object_id) {
       if (!this.objects.has(object_id)) return;
-      this.objects.get(object_id).removeFromParent();
+      const object = this.objects.get(object_id);
+      object.removeFromParent();
       this.objects.delete(object_id);
-      this.draggable_objects.pop(this.objects.get(object_id));
+      const index = this.draggable_objects.indexOf(object);
+      if (index != -1) this.draggable_objects.splice(index, 1);
     },
     set_texture_url(object_id, url) {
       if (!this.objects.has(object_id)) return;