emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/eglot a7a2b52 27/54: Fix #362: unbreak window/showMessa


From: João Távora
Subject: [elpa] externals/eglot a7a2b52 27/54: Fix #362: unbreak window/showMessageRequest
Date: Thu, 16 Apr 2020 05:31:49 -0400 (EDT)

branch: externals/eglot
commit a7a2b52d156ff506cbcdd9e58108cffce439188f
Author: João Távora <address@hidden>
Commit: João Távora <address@hidden>

    Fix #362: unbreak window/showMessageRequest
    
    * eglot.el (eglot-handle-request): Answer with a proper
    MessageActionItem.
---
 eglot.el | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/eglot.el b/eglot.el
index 90f2c68..b3a7f51 100644
--- a/eglot.el
+++ b/eglot.el
@@ -1450,16 +1450,16 @@ COMMAND is a symbol naming the command."
 (cl-defmethod eglot-handle-request
   (_server (_method (eql window/showMessageRequest)) &key type message actions)
   "Handle server request window/showMessageRequest"
-  (or (completing-read
-       (concat
-        (format (propertize "[eglot] Server reports (type=%s): %s"
-                            'face (if (<= type 1) 'error))
-                type message)
-        "\nChoose an option: ")
-       (or (mapcar (lambda (obj) (plist-get obj :title)) actions)
-           '("OK"))
-       nil t (plist-get (elt actions 0) :title))
-      (jsonrpc-error :code -32800 :message "User cancelled")))
+  (let ((label (completing-read
+                (concat
+                 (format (propertize "[eglot] Server reports (type=%s): %s"
+                                     'face (if (<= type 1) 'error))
+                         type message)
+                 "\nChoose an option: ")
+                (or (mapcar (lambda (obj) (plist-get obj :title)) actions)
+                    '("OK"))
+                nil t (plist-get (elt actions 0) :title))))
+    (if label `(:title ,label) :null)))
 
 (cl-defmethod eglot-handle-notification
   (_server (_method (eql window/logMessage)) &key _type _message)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]