feat(core): file context improvements and option to disable (#24661)
This commit is contained in:
@@ -108,9 +108,11 @@ export const { use: useEditorContext, provider: EditorContextProvider } = create
|
||||
send({ id: requestID, method, params })
|
||||
}
|
||||
|
||||
const scheduleReconnect = (delay: number) => {
|
||||
const scheduleReconnect = () => {
|
||||
if (closed) return
|
||||
if (reconnect) clearTimeout(reconnect)
|
||||
attempt += 1
|
||||
const delay = Math.min(1000 * 2 ** (attempt - 1), 10_000)
|
||||
reconnect = setTimeout(connect, delay)
|
||||
}
|
||||
|
||||
@@ -122,7 +124,7 @@ export const { use: useEditorContext, provider: EditorContextProvider } = create
|
||||
const dbPath = resolveZedDbPath()
|
||||
if (!dbPath) {
|
||||
setStore("status", "disabled")
|
||||
scheduleReconnect(1000)
|
||||
scheduleReconnect()
|
||||
return
|
||||
}
|
||||
zedSelection ??= resolveZedSelection(dbPath)
|
||||
@@ -143,7 +145,7 @@ export const { use: useEditorContext, provider: EditorContextProvider } = create
|
||||
.finally(() => {
|
||||
zedSelection = undefined
|
||||
})
|
||||
scheduleReconnect(1000)
|
||||
scheduleReconnect()
|
||||
return
|
||||
}
|
||||
|
||||
@@ -207,13 +209,11 @@ export const { use: useEditorContext, provider: EditorContextProvider } = create
|
||||
if (closed) return
|
||||
|
||||
setStore("status", "connecting")
|
||||
attempt += 1
|
||||
const delay = Math.min(1000 * 2 ** (attempt - 1), 30000)
|
||||
scheduleReconnect(delay)
|
||||
scheduleReconnect()
|
||||
})
|
||||
}
|
||||
|
||||
scheduleReconnect(0)
|
||||
connect()
|
||||
|
||||
onCleanup(() => {
|
||||
closed = true
|
||||
@@ -232,6 +232,9 @@ export const { use: useEditorContext, provider: EditorContextProvider } = create
|
||||
selection() {
|
||||
return store.selection
|
||||
},
|
||||
clearSelection() {
|
||||
setStore("selection", undefined)
|
||||
},
|
||||
onMention(listener: (mention: EditorMention) => void) {
|
||||
mentionListeners.add(listener)
|
||||
return () => mentionListeners.delete(listener)
|
||||
|
||||
Reference in New Issue
Block a user