(or (and (null proc) cur)
(and proc (eq proc cur))))))
+(defvar-local eglot--current-flymake-report-fn nil
+ "Current flymake report function for this buffer")
+
(defun eglot--maybe-activate-editing-mode (&optional proc)
"Maybe activate mode function `eglot--managed-mode'.
If PROC is supplied, do it only if BUFFER is managed by it. In
"Handle notification telemetry/event"
(eglot--log "Server telemetry: %s" any))
-(defvar-local eglot--current-flymake-report-fn nil
- "Current flymake report function for this buffer")
-
(defvar-local eglot--unreported-diagnostics nil
"Unreported diagnostics for this buffer.")
(cl-defun eglot--server-window/progress
(process &key id done title message &allow-other-keys)
"Handle notification window/progress"
- (setf (eglot--spinner process) (list id title done message)))
+ (setf (eglot--spinner process) (list id title done message))
+ (when (and (equal "Indexing" title) done)
+ (dolist (buffer (buffer-list))
+ (with-current-buffer buffer
+ (when (eglot--buffer-managed-p process)
+ (funcall (or eglot--current-flymake-report-fn #'ignore)
+ eglot--unreported-diagnostics))))))
(provide 'eglot)
;;; eglot.el ends here