(element)
| 1157 | } |
| 1158 | |
| 1159 | function makeDialogDraggable(element) { |
| 1160 | element.querySelector(".dialog-header").addEventListener('mousedown', (function () { |
| 1161 | let deltaX = 0 |
| 1162 | let deltaY = 0 |
| 1163 | let dragStartX = 0 |
| 1164 | let dragStartY = 0 |
| 1165 | let oldTop = 0 |
| 1166 | let oldLeft = 0 |
| 1167 | |
| 1168 | function dlgDragStart(e) { |
| 1169 | e = e || window.event; |
| 1170 | const d = e.target.closest("dialog") |
| 1171 | e.preventDefault(); |
| 1172 | dragStartX = e.clientX; |
| 1173 | dragStartY = e.clientY; |
| 1174 | oldTop = parseInt(d.style.top) |
| 1175 | oldLeft = parseInt(d.style.left) |
| 1176 | if (isNaN(oldTop)) { oldTop = 0 } |
| 1177 | if (isNaN(oldLeft)) { oldLeft = 0 } |
| 1178 | document.addEventListener('mouseup', dlgDragClose); |
| 1179 | document.addEventListener('mousemove', dlgDrag); |
| 1180 | } |
| 1181 | |
| 1182 | function dlgDragClose(e) { |
| 1183 | document.removeEventListener('mouseup', dlgDragClose); |
| 1184 | document.removeEventListener('mousemove', dlgDrag); |
| 1185 | } |
| 1186 | |
| 1187 | function dlgDrag(e) { |
| 1188 | e = e || window.event; |
| 1189 | const d = e.target.closest("dialog") |
| 1190 | e.preventDefault(); |
| 1191 | deltaX = dragStartX - e.clientX; |
| 1192 | deltaY = dragStartY - e.clientY; |
| 1193 | d.style.left = `${oldLeft - 2 * deltaX}px` |
| 1194 | d.style.top = `${oldTop - 2 * deltaY}px` |
| 1195 | } |
| 1196 | |
| 1197 | return dlgDragStart |
| 1198 | })()) |
| 1199 | } |
| 1200 | |
| 1201 | function logMsg(msg, level, outputMsg) { |
| 1202 | if (outputMsg.hasChildNodes()) { |
no test coverage detected