diff --git a/src/main/kotlin/app/termora/terminal/CursorStore.kt b/src/main/kotlin/app/termora/terminal/CursorStore.kt index d2a9287..dbb0257 100644 --- a/src/main/kotlin/app/termora/terminal/CursorStore.kt +++ b/src/main/kotlin/app/termora/terminal/CursorStore.kt @@ -13,9 +13,11 @@ data class CursorStore( */ val textStyle: TextStyle, /** + * 如果为 null 表示没有设置 + * * @see [DataKey.AutoWrapMode] */ - val autoWarpMode: Boolean, + val autoWarpMode: Boolean?, /** * @see [DataKey.OriginMode] */ diff --git a/src/main/kotlin/app/termora/terminal/CursorStoreStores.kt b/src/main/kotlin/app/termora/terminal/CursorStoreStores.kt index 36c98cb..c290354 100644 --- a/src/main/kotlin/app/termora/terminal/CursorStoreStores.kt +++ b/src/main/kotlin/app/termora/terminal/CursorStoreStores.kt @@ -22,7 +22,9 @@ object CursorStoreStores { terminalModel.setData(DataKey.OriginMode, cursorStore.originMode) terminalModel.setData(DataKey.TextStyle, cursorStore.textStyle) - terminalModel.setData(DataKey.AutoWrapMode, cursorStore.autoWarpMode) + if (cursorStore.autoWarpMode != null) { + terminalModel.setData(DataKey.AutoWrapMode, cursorStore.autoWarpMode) + } terminalModel.setData(DataKey.GraphicCharacterSet, cursorStore.graphicCharacterSet) val region = if (terminalModel.isOriginMode()) terminalModel.getScrollingRegion() @@ -52,7 +54,7 @@ object CursorStoreStores { val cursorStore = CursorStore( position = terminal.getCursorModel().getPosition(), textStyle = terminalModel.getData(DataKey.TextStyle), - autoWarpMode = terminalModel.getData(DataKey.AutoWrapMode, false), + autoWarpMode = if (terminalModel.hasData(DataKey.AutoWrapMode)) terminalModel.getData(DataKey.AutoWrapMode) else null, originMode = terminalModel.isOriginMode(), graphicCharacterSet = graphicCharacterSet.copy(characterSets = characterSets), )