aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/EditModel.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/EditModel.cxx')
-rw-r--r--src/EditModel.cxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/EditModel.cxx b/src/EditModel.cxx
index 033d79bd2..a0339de35 100644
--- a/src/EditModel.cxx
+++ b/src/EditModel.cxx
@@ -121,6 +121,9 @@ EditModel::EditModel() : braces{} {
EditModel::~EditModel() {
try {
+ // Erasing the view state won't throw even though SetViewState
+ // and the resulting map::erase aren't marked noexcept.
+ pdoc->SetViewState(this, {});
// This never throws but isn't marked noexcept for compatibility
pdoc->Release();
} catch (...) {
@@ -178,3 +181,10 @@ void EditModel::EnsureModelState() {
}
}
}
+
+void EditModel::ChangeUndoSelectionHistory(Scintilla::UndoSelectionHistoryOption undoSelectionHistoryOptionNew) {
+ undoSelectionHistoryOption = undoSelectionHistoryOptionNew;
+ if (undoSelectionHistoryOption == UndoSelectionHistoryOption::Disabled) {
+ pdoc->SetViewState(this, {});
+ }
+}