[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/graphql-mode 63cd55ed7d 099/122: Implement abort behaviour
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/graphql-mode 63cd55ed7d 099/122: Implement abort behaviour |
Date: |
Sat, 29 Jan 2022 08:03:38 -0500 (EST) |
branch: elpa/graphql-mode
commit 63cd55ed7d8ff255a2083b293116d0d37695ebc5
Author: Aleksandar Dimitrov <git@aleks.bg>
Commit: Aleksandar Dimitrov <git@aleks.bg>
Implement abort behaviour
---
graphql-mode.el | 26 ++++++++++++++++++++------
1 file changed, 20 insertions(+), 6 deletions(-)
diff --git a/graphql-mode.el b/graphql-mode.el
index 211ee37255..cc35fa08a1 100644
--- a/graphql-mode.el
+++ b/graphql-mode.el
@@ -153,6 +153,9 @@ Please install it and try again."))
(format "%s?operationName=%s"
url operation)))))))
+(defvar-local graphql-edit-headers--saved-temporary-window-config nil)
+(put 'graphql-edit-headers--saved-temporary-window-config 'permanent-local t)
+
(defun graphql-edit-headers ()
"Edit graphql request headers interactively in a dedicated buffer.
@@ -160,12 +163,17 @@ Open a buffer to edit `graphql-extra-headers'. The
contents of this
buffer take precedence over the setting in `graphql-extra-headers'
when sending a request."
(interactive)
- (let* ((extra-headers-buffer
- (concat "*Graphql Headers for " (buffer-file-name
(buffer-base-buffer)) "*")))
+ (setq graphql-edit-headers--saved-temporary-window-config
(current-window-configuration))
+ (let ((extra-headers-buffer
+ (concat "*Graphql Headers for " (buffer-file-name
(buffer-base-buffer)) "*")))
(pop-to-buffer extra-headers-buffer)
- (graphql-edit-headers-mode)
(when (fboundp 'json-mode)
- (json-mode))))
+ (json-mode))
+ (graphql-edit-headers-mode)))
+
+(defun graphql-edit-headers-buffer-p ()
+ "Non-nil when current buffer is a header editing buffer."
+ (bound-and-true-p graphql-edit-headers-mode))
(defun graphql-edit-headers-save ()
"TODO."
@@ -173,9 +181,15 @@ when sending a request."
(message "TODO"))
(defun graphql-edit-headers-abort ()
- "TODO."
+ "Kill current headers buffer and return to graphql file."
(interactive)
- (message "TODO"))
+ (unless (graphql-edit-headers-buffer-p) (error "Not in a GraphQL headers
buffer"))
+ (set-buffer-modified-p nil)
+ (kill-buffer (current-buffer))
+ (when graphql-edit-headers--saved-temporary-window-config
+ (unwind-protect
+ (set-window-configuration
graphql-edit-headers--saved-temporary-window-config)
+ (setq graphql-edit-headers--saved-temporary-window-config nil))))
(define-minor-mode graphql-edit-headers-mode
"Minor mode for editing graphql extra headers.
- [nongnu] elpa/graphql-mode 04e56ae626 053/122: Disable json-mode for response temporarily, (continued)
- [nongnu] elpa/graphql-mode 04e56ae626 053/122: Disable json-mode for response temporarily, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode ab58192967 081/122: Merge pull request #23 from leoliu/master, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode c643d53a4b 083/122: Don't send operationName when operation is an empty string, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 09a9af6c98 075/122: Merge remote-tracking branch 'origin/master' into next, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode b802f77542 068/122: graphql-send-query: Silence byte-compiler, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 4aebf7afd9 066/122: graphql-post-request: Use URL instead of missing ENDPOINT, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 7c37aee28b 096/122: Open .gql files automatically as well, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 1125c2136d 055/122: extend graphql-current-operation to support 'line' boundary if sexp fail, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 321c1f4b64 095/122: Implement support for loading graphql-configs, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 033f6a074c 082/122: Don't use temp buffer, as it breaks local variables, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 63cd55ed7d 099/122: Implement abort behaviour,
ELPA Syncer <=
- [nongnu] elpa/graphql-mode 7088db7250 091/122: Merge pull request #29 from Prillan/enable-json-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 9bed568ec8 097/122: Add Homepage header, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 4147fbfd97 109/122: Refuse to open g-e-h unless in graphql-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 562d13fc20 101/122: Factor out buffer closing code, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode af9b235e14 103/122: Add content of graphql-extra-headers to buffer, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 3581ad03e0 094/122: Allow *GraphQL* response buffer to be closed with "q" key, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 22361631a1 111/122: Add documentation, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 99850e1012 110/122: Don't clobber contents of existing buffer, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 0e723b962e 107/122: Factor in quitting function, ELPA Syncer, 2022/01/29
- [nongnu] elpa/graphql-mode 18f749c1bc 106/122: Simplify buffer naming, ELPA Syncer, 2022/01/29