MCPcopy
hub / github.com/witheve/Eve / postUpdateDisplay

Function postUpdateDisplay

src/codemirror.js:749–776  ·  view source on GitHub ↗
(cm, update)

Source from the content-addressed store, hash-verified

747 }
748
749 function postUpdateDisplay(cm, update) {
750 var viewport = update.viewport;
751
752 for (var first = true;; first = false) {
753 if (!first || !cm.options.lineWrapping || update.oldDisplayWidth == displayWidth(cm)) {
754 // Clip forced viewport to actual scrollable area.
755 if (viewport && viewport.top != null)
756 viewport = {top: Math.min(cm.doc.height + paddingVert(cm.display) - displayHeight(cm), viewport.top)};
757 // Updated line heights might result in the drawn area not
758 // actually covering the viewport. Keep looping until it does.
759 update.visible = visibleLines(cm.display, cm.doc, viewport);
760 if (update.visible.from >= cm.display.viewFrom && update.visible.to <= cm.display.viewTo)
761 break;
762 }
763 if (!updateDisplayIfNeeded(cm, update)) break;
764 updateHeightsInViewport(cm);
765 var barMeasure = measureForScrollbars(cm);
766 updateSelection(cm);
767 updateScrollbars(cm, barMeasure);
768 setDocumentHeight(cm, barMeasure);
769 }
770
771 update.signal(cm, "update", cm);
772 if (cm.display.viewFrom != cm.display.reportedViewFrom || cm.display.viewTo != cm.display.reportedViewTo) {
773 update.signal(cm, "viewportChange", cm, cm.display.viewFrom, cm.display.viewTo);
774 cm.display.reportedViewFrom = cm.display.viewFrom; cm.display.reportedViewTo = cm.display.viewTo;
775 }
776 }
777
778 function updateDisplaySimple(cm, viewport) {
779 var update = new DisplayUpdate(cm, viewport);

Callers 2

updateDisplaySimpleFunction · 0.85
endOperation_finishFunction · 0.85

Calls 10

displayWidthFunction · 0.85
paddingVertFunction · 0.85
displayHeightFunction · 0.85
visibleLinesFunction · 0.85
updateDisplayIfNeededFunction · 0.85
updateHeightsInViewportFunction · 0.85
measureForScrollbarsFunction · 0.85
updateSelectionFunction · 0.85
updateScrollbarsFunction · 0.85
setDocumentHeightFunction · 0.85

Tested by

no test coverage detected