(line)
| 341 | // collapsed ranges (see markText) that might hide parts, and join |
| 342 | // other lines onto it. |
| 343 | function lineLength(line) { |
| 344 | if (line.height == 0) return 0; |
| 345 | var len = line.text.length, merged, cur = line; |
| 346 | while (merged = collapsedSpanAtStart(cur)) { |
| 347 | var found = merged.find(0, true); |
| 348 | cur = found.from.line; |
| 349 | len += found.from.ch - found.to.ch; |
| 350 | } |
| 351 | cur = line; |
| 352 | while (merged = collapsedSpanAtEnd(cur)) { |
| 353 | var found = merged.find(0, true); |
| 354 | len -= cur.text.length - found.from.ch; |
| 355 | cur = found.to.line; |
| 356 | len += cur.text.length - found.to.ch; |
| 357 | } |
| 358 | return len; |
| 359 | } |
| 360 | |
| 361 | // Find the longest line in the document. |
| 362 | function findMaxLine(cm) { |
no test coverage detected