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