fix: keep large-file editing responsive
Bound synchronous full-source syntax parsing, cache dirty comparisons, edit ordinary inline changes in place, retain changed-row undo history, and buffer atomic saves. Skip repository snapshots beyond existing worker limits before copying their text.
This commit is contained in:
@@ -109,6 +109,7 @@ impl Editor {
|
||||
.is_some_and(|binding| binding.owner == self.tab_id)
|
||||
{
|
||||
buffer.saved_lines.clone_from(&buffer.lines);
|
||||
buffer.dirty_cache.set(Some(false));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -268,6 +269,7 @@ impl Editor {
|
||||
}) {
|
||||
buffer.review_buffer = None;
|
||||
buffer.saved_lines.clone_from(&buffer.lines);
|
||||
buffer.dirty_cache.set(Some(false));
|
||||
}
|
||||
}
|
||||
self.autosave_local_review()?;
|
||||
@@ -849,6 +851,7 @@ impl Editor {
|
||||
self.active.lines = split_lines(text);
|
||||
self.active.saved_lines.clone_from(&self.active.lines);
|
||||
self.active.text_revision = self.active.text_revision.wrapping_add(1);
|
||||
self.active.dirty_cache.set(Some(false));
|
||||
self.normalize_targets();
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user