(doc, line, span)
| 1603 | } } |
| 1604 | } |
| 1605 | function lineIsHiddenInner(doc, line, span) { |
| 1606 | if (span.to == null) { |
| 1607 | var end = span.marker.find(1, true); |
| 1608 | return lineIsHiddenInner(doc, end.line, getMarkedSpanFor(end.line.markedSpans, span.marker)) |
| 1609 | } |
| 1610 | if (span.marker.inclusiveRight && span.to == line.text.length) |
| 1611 | { return true } |
| 1612 | for (var sp = (void 0), i = 0; i < line.markedSpans.length; ++i) { |
| 1613 | sp = line.markedSpans[i]; |
| 1614 | if (sp.marker.collapsed && !sp.marker.widgetNode && sp.from == span.to && |
| 1615 | (sp.to == null || sp.to != span.from) && |
| 1616 | (sp.marker.inclusiveLeft || span.marker.inclusiveRight) && |
| 1617 | lineIsHiddenInner(doc, line, sp)) { return true } |
| 1618 | } |
| 1619 | } |
| 1620 | |
| 1621 | // Find the height above the given line. |
| 1622 | function heightAtLine(lineObj) { |
no test coverage detected