Skip to content

Commit e666d4f

Browse files
committed
[academic_query] fix drag and drop
SQUASHED: AUTO-COMMIT-src-components-widgets-academic-subquery.html,AUTO-COMMIT-src-components-widgets-academic-subquery.js,
1 parent 51cd19b commit e666d4f

File tree

2 files changed

+24
-9
lines changed

2 files changed

+24
-9
lines changed

src/components/widgets/academic-subquery.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,10 @@
3939
}
4040

4141
.dropTarget {
42-
border: 2px solid white;
42+
border: 1px solid white;
4343
}
4444
.dropTarget.over {
45-
border: 2px dotted #666;
45+
border: 1px dotted #666;
4646
}
4747

4848
.queryPart:blank {

src/components/widgets/academic-subquery.js

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -166,11 +166,13 @@ export default class AcademicSubquery extends Morph {
166166

167167
// TODO: falls ich das umbaue, sodass eine subquery einfach als
168168
// html Element in updateView erstellt wird, muss das hier auch da rein
169-
// this.addEventListener('dragstart', (evt) => this.onDragStart(evt))
170-
// this.addEventListener('dragend', (evt) => this.onDragEnd(evt))
171-
// this.addEventListener('dragover', (evt) => this.onDragOver(evt))
172-
// this.addEventListener('drop', (evt) => this.onDrop(evt))
173-
169+
/* this.addEventListener('dragstart', (evt) => this.onDragStart(evt))
170+
this.addEventListener('dragend', (evt) => this.onDragEnd(evt))
171+
this.addEventListener('dragover', (evt) => this.onDragOver(evt))
172+
this.addEventListener('dragenter', (evt) => this.onDragEnter(evt))
173+
this.addEventListener('dragleave', (evt) => this.onDragLeave(evt))
174+
this.addEventListener('drop', (evt) => this.onDrop(evt))
175+
*/
174176
this.style.draggable = 'true';
175177
// "drag",
176178
// "dragend",
@@ -190,7 +192,7 @@ export default class AcademicSubquery extends Morph {
190192
// this.id = id
191193

192194
event.dataTransfer.effectAllowed = 'move';
193-
event.dataTransfer.setData('text/html', this.innerHTML);
195+
event.dataTransfer.setData('text/html', this.queryElement.getQuery()); // set Query as info
194196
//event.dataTransfer.setData("application/lively4id", id);
195197
}
196198

@@ -207,11 +209,14 @@ export default class AcademicSubquery extends Morph {
207209
}
208210

209211
onDrop(event) {
212+
event.preventDefault();
213+
event.stopPropagation();
210214
//if (this.dragStart !== this) {
211215
//var id = event.dataTransfer.getData("application/lively4id")
212216
//var el = lively.query(this, "#"+id);
213217
//lively.notify("ELEMENT", el);
214-
this.innerHTML = event.dataTransfer.getData("text/html");
218+
var query = event.dataTransfer.getData("text/html");
219+
this.queryElement.setQuery(event.dataTransfer.getData("text/html")); // read query in
215220
this.classList.remove('over');
216221
//}
217222
}
@@ -248,6 +253,15 @@ export default class AcademicSubquery extends Morph {
248253
this.ui.addEventListener('dragleave', this.onDragLeave)
249254
this.ui.addEventListener('drop', this.onDrop)
250255
}
256+
this.ui.queryElement = this; // oufff
257+
/*if (!this.isComplex) {
258+
this.addEventListener('dragstart', this.onDragStart)
259+
this.addEventListener('dragend', this.onDragEnd)
260+
this.addEventListener('dragover', this.onDragOver)
261+
this.addEventListener('dragenter', this.onDragEnter)
262+
this.addEventListener('dragleave', this.onDragLeave)
263+
this.addEventListener('drop', this.onDrop)
264+
}*/
251265
pane.appendChild(this.ui)
252266
}
253267

@@ -318,6 +332,7 @@ export default class AcademicSubquery extends Morph {
318332

319333
async toggleEditing() {
320334
this.editing = !this.editing;
335+
lively.notify("EDIT", this.editing)
321336
this.ui = await this.queryToView();
322337
this.updateView();
323338
}

0 commit comments

Comments
 (0)