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

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

[nongnu] elpa/elpher 786bf0699b 1/2: Sensibly handle C-g when requesting


From: ELPA Syncer
Subject: [nongnu] elpa/elpher 786bf0699b 1/2: Sensibly handle C-g when requesting gemini input.
Date: Thu, 23 Mar 2023 09:01:33 -0400 (EDT)

branch: elpa/elpher
commit 786bf0699b970d302e932d0d1004d7db182574d1
Author: plugd <plugd@thelambdalab.xyz>
Commit: plugd <plugd@thelambdalab.xyz>

    Sensibly handle C-g when requesting gemini input.
---
 elpher.el | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/elpher.el b/elpher.el
index 53ca1e4470..966e6595b7 100644
--- a/elpher.el
+++ b/elpher.el
@@ -1,6 +1,6 @@
 ;;; elpher.el --- A friendly gopher and gemini client  -*- lexical-binding: t 
-*-
 
-;; Copyright (C) 2019-2022 Tim Vaughan <plugd@thelambdalab.xyz>
+;; Copyright (C) 2019-2023 Tim Vaughan <plugd@thelambdalab.xyz>
 ;; Copyright (C) 2020-2022 Elpher contributors (See info manual for full list)
 
 ;; Author: Tim Vaughan <plugd@thelambdalab.xyz>
@@ -1352,14 +1352,17 @@ that the response was malformed."
          (elpher-with-clean-buffer
           (insert "Gemini server is requesting input."))
          (let* ((query-string
-                 (if (eq (elt response-code 1) ?1)
-                     (read-passwd (concat response-meta ": "))
-                   (read-string (concat response-meta ": "))))
+                 (with-local-quit
+                   (if (eq (elt response-code 1) ?1)
+                       (read-passwd (concat response-meta ": "))
+                     (read-string (concat response-meta ": ")))))
                 (query-address (seq-copy (elpher-page-address 
elpher-current-page)))
                 (old-fname (url-filename query-address)))
-           (setf (url-filename query-address)
-                 (concat old-fname "?" (url-build-query-string 
`((,query-string)))))
-           (elpher-get-gemini-response query-address renderer)))
+           (if (not query-string)
+               (elpher-visit-previous-page)
+             (setf (url-filename query-address)
+                   (concat old-fname "?" (url-build-query-string 
`((,query-string)))))
+             (elpher-get-gemini-response query-address renderer))))
         (?2 ; Normal response
          (funcall renderer response-body response-meta))
         (?3 ; Redirect



reply via email to

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