fix: fix cursor going out of bounds when filtering response (#2850)
This commit is contained in:
@@ -195,21 +195,19 @@ export function useCodemirror(
|
|||||||
ViewPlugin.fromClass(
|
ViewPlugin.fromClass(
|
||||||
class {
|
class {
|
||||||
update(update: ViewUpdate) {
|
update(update: ViewUpdate) {
|
||||||
if (update.selectionSet) {
|
const cursorPos = update.state.selection.main.head
|
||||||
const cursorPos = update.state.selection.main.head
|
const line = update.state.doc.lineAt(cursorPos)
|
||||||
|
|
||||||
const line = update.state.doc.lineAt(cursorPos)
|
cachedCursor.value = {
|
||||||
|
line: line.number - 1,
|
||||||
cachedCursor.value = {
|
ch: cursorPos - line.from,
|
||||||
line: line.number - 1,
|
|
||||||
ch: cursorPos - line.from,
|
|
||||||
}
|
|
||||||
|
|
||||||
cursor.value = {
|
|
||||||
line: cachedCursor.value.line,
|
|
||||||
ch: cachedCursor.value.ch,
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cursor.value = {
|
||||||
|
line: cachedCursor.value.line,
|
||||||
|
ch: cachedCursor.value.ch,
|
||||||
|
}
|
||||||
|
|
||||||
if (update.docChanged) {
|
if (update.docChanged) {
|
||||||
// Expensive on big files ?
|
// Expensive on big files ?
|
||||||
cachedValue.value = update.state.doc
|
cachedValue.value = update.state.doc
|
||||||
|
|||||||
Reference in New Issue
Block a user