(cm)
| 502 | CodeMirror.scrollbarModel = {"native": NativeScrollbars, "null": NullScrollbars}; |
| 503 | |
| 504 | function initScrollbars(cm) { |
| 505 | if (cm.display.scrollbars) { |
| 506 | cm.display.scrollbars.clear(); |
| 507 | if (cm.display.scrollbars.addClass) |
| 508 | rmClass(cm.display.wrapper, cm.display.scrollbars.addClass); |
| 509 | } |
| 510 | |
| 511 | cm.display.scrollbars = new CodeMirror.scrollbarModel[cm.options.scrollbarStyle](function(node) { |
| 512 | cm.display.wrapper.insertBefore(node, cm.display.scrollbarFiller); |
| 513 | // Prevent clicks in the scrollbars from killing focus |
| 514 | on(node, "mousedown", function() { |
| 515 | if (cm.state.focused) setTimeout(function() { cm.display.input.focus(); }, 0); |
| 516 | }); |
| 517 | node.setAttribute("cm-not-content", "true"); |
| 518 | }, function(pos, axis) { |
| 519 | if (axis == "horizontal") setScrollLeft(cm, pos); |
| 520 | else setScrollTop(cm, pos); |
| 521 | }, cm); |
| 522 | if (cm.display.scrollbars.addClass) |
| 523 | addClass(cm.display.wrapper, cm.display.scrollbars.addClass); |
| 524 | } |
| 525 | |
| 526 | function updateScrollbars(cm, measure) { |
| 527 | if (!measure) measure = measureForScrollbars(cm); |
no test coverage detected