MCPcopy Create free account
hub / github.com/OpenEndedGroup/Field2 / postUpdateDisplay

Function postUpdateDisplay

lib/web/CodeMirror/src/display/update_display.js:163–193  ·  view source on GitHub ↗
(cm, update)

Source from the content-addressed store, hash-verified

161}
162
163export function postUpdateDisplay(cm, update) {
164 let viewport = update.viewport
165
166 for (let first = true;; first = false) {
167 if (!first || !cm.options.lineWrapping || update.oldDisplayWidth == displayWidth(cm)) {
168 // Clip forced viewport to actual scrollable area.
169 if (viewport && viewport.top != null)
170 viewport = {top: Math.min(cm.doc.height + paddingVert(cm.display) - displayHeight(cm), viewport.top)}
171 // Updated line heights might result in the drawn area not
172 // actually covering the viewport. Keep looping until it does.
173 update.visible = visibleLines(cm.display, cm.doc, viewport)
174 if (update.visible.from >= cm.display.viewFrom && update.visible.to <= cm.display.viewTo)
175 break
176 } else if (first) {
177 update.visible = visibleLines(cm.display, cm.doc, viewport)
178 }
179 if (!updateDisplayIfNeeded(cm, update)) break
180 updateHeightsInViewport(cm)
181 let barMeasure = measureForScrollbars(cm)
182 updateSelection(cm)
183 updateScrollbars(cm, barMeasure)
184 setDocumentHeight(cm, barMeasure)
185 update.force = false
186 }
187
188 update.signal(cm, "update", cm)
189 if (cm.display.viewFrom != cm.display.reportedViewFrom || cm.display.viewTo != cm.display.reportedViewTo) {
190 update.signal(cm, "viewportChange", cm, cm.display.viewFrom, cm.display.viewTo)
191 cm.display.reportedViewFrom = cm.display.viewFrom; cm.display.reportedViewTo = cm.display.viewTo
192 }
193}
194
195export function updateDisplaySimple(cm, viewport) {
196 let update = new DisplayUpdate(cm, viewport)

Callers 2

endOperation_finishFunction · 0.90
updateDisplaySimpleFunction · 0.70

Calls 12

displayWidthFunction · 0.90
paddingVertFunction · 0.90
displayHeightFunction · 0.90
visibleLinesFunction · 0.90
updateHeightsInViewportFunction · 0.90
measureForScrollbarsFunction · 0.90
updateSelectionFunction · 0.90
updateScrollbarsFunction · 0.90
signalMethod · 0.80
updateDisplayIfNeededFunction · 0.70
setDocumentHeightFunction · 0.70
minMethod · 0.45

Tested by

no test coverage detected