(doc, line)
| 5394 | // are part of a visual line that starts with another line, or when |
| 5395 | // they are entirely covered by collapsed, non-widget span. |
| 5396 | function lineIsHidden(doc, line) { |
| 5397 | var sps = sawCollapsedSpans && line.markedSpans; |
| 5398 | if (sps) for (var sp, i = 0; i < sps.length; ++i) { |
| 5399 | sp = sps[i]; |
| 5400 | if (!sp.marker.collapsed) continue; |
| 5401 | if (sp.from == null) return true; |
| 5402 | if (sp.marker.widgetNode) continue; |
| 5403 | if (sp.from == 0 && sp.marker.inclusiveLeft && lineIsHiddenInner(doc, line, sp)) |
| 5404 | return true; |
| 5405 | } |
| 5406 | } |
| 5407 | function lineIsHiddenInner(doc, line, span) { |
| 5408 | if (span.to == null) { |
| 5409 | var end = span.marker.find(1, true); |
no test coverage detected