helix-mirror/helix-term
Pascal Kuthe e8898fd9a8 store multiple snapshots on the document at once
Fixing autocomplete required moving the document savepoint before the
asynchronous completion request. However, this in turn causes new bugs:

If the completion popup is open, the savepoint is restored when the
popup closes (or another entry is selected). However, at that point
a new completion request might already have been created which
would have replaced the new savepoint (therefore leading to incorrectly
applied complies).

This commit fixes that bug by allowing in arbitrary number of
savepoints to be tracked on the document. The savepoints are reference
counted and therefore remain valid as long as any reference to them
remains. Weak reference are stored on the document and any reference
that can not be upgraded anymore (hence no strong reference remain)
are automatically discarded.
2023-03-09 13:01:02 +09:00
..
src store multiple snapshots on the document at once 2023-03-09 13:01:02 +09:00
tests Make m textobject look for pairs enclosing selections (#3344) 2023-02-10 13:52:57 -06:00
.gitignore Initial import. 2020-05-20 18:14:51 +09:00
build.rs feat(lsp): pass client_info on initialization (#4904) 2022-12-08 21:57:03 -06:00
Cargo.toml build(deps): bump grep-regex from 0.1.10 to 0.1.11 (#6215) 2023-03-06 19:18:28 -06:00