fun useAlternateBuffer()

in core/src/com/jediterm/terminal/model/TerminalTextBuffer.kt [394:425]


  fun useAlternateBuffer(enabled: Boolean) {
    alternateBuffer = enabled
    if (enabled) {
      if (!isUsingAlternateBuffer) {
        screenLinesStorageBackup = screenLinesStorage
        historyLinesStorageBackup = historyLinesStorage
        screenLinesStorage = createScreenLinesStorage()
        historyLinesStorage = createHistoryLinesStorage()

        screenBufferBackup = screenBuffer
        historyBufferBackup = historyBuffer
        screenBuffer = createLinesBuffer(screenLinesStorage)
        historyBuffer = createLinesBuffer(historyLinesStorage)
        isUsingAlternateBuffer = true
      }
    }
    else {
      if (isUsingAlternateBuffer) {
        screenLinesStorage = screenLinesStorageBackup!!
        historyLinesStorage = historyLinesStorageBackup!!
        screenLinesStorageBackup = createScreenLinesStorage()
        historyLinesStorageBackup = createHistoryLinesStorage()

        screenBuffer = screenBufferBackup!!
        historyBuffer = historyBufferBackup!!
        screenBufferBackup = createLinesBuffer(screenLinesStorageBackup!!)
        historyBufferBackup = createLinesBuffer(historyLinesStorageBackup!!)
        isUsingAlternateBuffer = false
      }
    }
    fireModelChangeEvent()
  }