Fix horizontal scrolling issue after toggling softwrap on/off

Fixes #645
This commit is contained in:
Dmitry Maluka
2021-03-03 20:51:06 +01:00
parent c960c93a83
commit a1651aec2f
3 changed files with 23 additions and 1 deletions

View File

@@ -189,6 +189,13 @@ type Buffer struct {
cursors []*Cursor
curCursor int
StartCursor Loc
// OptionCallback is called after a buffer option value is changed.
// The display module registers its OptionCallback to ensure the buffer window
// is properly updated when needed. This is a workaround for the fact that
// the buffer module cannot directly call the display's API (it would mean
// a circular dependency between packages).
OptionCallback func(option string, nativeValue interface{})
}
// NewBufferFromFileAtLoc opens a new buffer with a given cursor location

View File

@@ -41,6 +41,10 @@ func (b *Buffer) SetOptionNative(option string, nativeValue interface{}) error {
b.Type.Readonly = nativeValue.(bool)
}
if b.OptionCallback != nil {
b.OptionCallback(option, nativeValue)
}
return nil
}