(cm, line, lineView, dims, allowAbove)
| 3474 | } |
| 3475 | |
| 3476 | function insertLineWidgetsFor(cm, line, lineView, dims, allowAbove) { |
| 3477 | if (!line.widgets) { |
| 3478 | return |
| 3479 | } |
| 3480 | var wrap = ensureLineWrapped(lineView) |
| 3481 | for (var i = 0, ws = line.widgets; i < ws.length; ++i) { |
| 3482 | var widget = ws[i], |
| 3483 | node = elt("div", [widget.node], "CodeMirror-linewidget") |
| 3484 | if (!widget.handleMouseEvents) { |
| 3485 | node.setAttribute("cm-ignore-events", "true") |
| 3486 | } |
| 3487 | positionLineWidget(widget, node, lineView, dims) |
| 3488 | cm.display.input.setUneditable(node) |
| 3489 | if (allowAbove && widget.above) { |
| 3490 | wrap.insertBefore(node, lineView.gutter || lineView.text) |
| 3491 | } else { |
| 3492 | wrap.appendChild(node) |
| 3493 | } |
| 3494 | signalLater(widget, "redraw") |
| 3495 | } |
| 3496 | } |
| 3497 | |
| 3498 | function positionLineWidget(widget, node, lineView, dims) { |
| 3499 | if (widget.noHScroll) { |
no test coverage detected