(cm, pos)
| 9033 | ContentEditableInput.prototype.needsContentAttribute = true; |
| 9034 | |
| 9035 | function posToDOM(cm, pos) { |
| 9036 | var view = findViewForLine(cm, pos.line); |
| 9037 | if (!view || view.hidden) { return null } |
| 9038 | var line = getLine(cm.doc, pos.line); |
| 9039 | var info = mapFromLineView(view, line, pos.line); |
| 9040 | |
| 9041 | var order = getOrder(line, cm.doc.direction), side = "left"; |
| 9042 | if (order) { |
| 9043 | var partPos = getBidiPartAt(order, pos.ch); |
| 9044 | side = partPos % 2 ? "right" : "left"; |
| 9045 | } |
| 9046 | var result = nodeAndOffsetInLineMap(info.map, pos.ch, side); |
| 9047 | result.offset = result.collapse == "right" ? result.end : result.start; |
| 9048 | return result |
| 9049 | } |
| 9050 | |
| 9051 | function isInGutter(node) { |
| 9052 | for (var scan = node; scan; scan = scan.parentNode) |
no test coverage detected