MCPcopy Create free account
hub / github.com/breck7/scroll / postUpdateDisplay

Function postUpdateDisplay

external/.scrollLibs.js:5989–6022  ·  view source on GitHub ↗
(cm, update)

Source from the content-addressed store, hash-verified

5987 }
5988
5989 function postUpdateDisplay(cm, update) {
5990 var viewport = update.viewport
5991
5992 for (var first = true; ; first = false) {
5993 if (!first || !cm.options.lineWrapping || update.oldDisplayWidth == displayWidth(cm)) {
5994 // Clip forced viewport to actual scrollable area.
5995 if (viewport && viewport.top != null) {
5996 viewport = { top: Math.min(cm.doc.height + paddingVert(cm.display) - displayHeight(cm), viewport.top) }
5997 }
5998 // Updated line heights might result in the drawn area not
5999 // actually covering the viewport. Keep looping until it does.
6000 update.visible = visibleLines(cm.display, cm.doc, viewport)
6001 if (update.visible.from >= cm.display.viewFrom && update.visible.to <= cm.display.viewTo) {
6002 break
6003 }
6004 }
6005 if (!updateDisplayIfNeeded(cm, update)) {
6006 break
6007 }
6008 updateHeightsInViewport(cm)
6009 var barMeasure = measureForScrollbars(cm)
6010 updateSelection(cm)
6011 updateScrollbars(cm, barMeasure)
6012 setDocumentHeight(cm, barMeasure)
6013 update.force = false
6014 }
6015
6016 update.signal(cm, "update", cm)
6017 if (cm.display.viewFrom != cm.display.reportedViewFrom || cm.display.viewTo != cm.display.reportedViewTo) {
6018 update.signal(cm, "viewportChange", cm, cm.display.viewFrom, cm.display.viewTo)
6019 cm.display.reportedViewFrom = cm.display.viewFrom
6020 cm.display.reportedViewTo = cm.display.viewTo
6021 }
6022 }
6023
6024 function updateDisplaySimple(cm, viewport) {
6025 var update = new DisplayUpdate(cm, viewport)

Callers 2

endOperation_finishFunction · 0.85
updateDisplaySimpleFunction · 0.85

Calls 11

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
minMethod · 0.80

Tested by

no test coverage detected