Bug 887. Remove folding if the reconcile buffer is killed
This ensure adequate cleanup if the reconciliation buffer is killed vice quit from.
This commit is contained in:
parent
eef9245eb8
commit
e245e41d6b
1 changed files with 19 additions and 9 deletions
|
|
@ -170,18 +170,26 @@
|
||||||
|
|
||||||
(defun ledger-reconcile-quit ()
|
(defun ledger-reconcile-quit ()
|
||||||
(interactive)
|
(interactive)
|
||||||
|
;(ledger-reconcile-quit-cleanup)
|
||||||
(let ((buf ledger-buf)
|
(let ((buf ledger-buf)
|
||||||
(reconcile-buf (current-buffer)))
|
(recon-buf (get-buffer ledger-recon-buffer-name)))
|
||||||
(with-current-buffer ledger-buf
|
;Make sure you delete the window before you delete the buffer,
|
||||||
(remove-hook 'after-save-hook 'ledger-reconcile-refresh-after-save t))
|
;otherwise, madness ensues
|
||||||
|
(with-current-buffer recon-buf
|
||||||
|
(delete-window (get-buffer-window recon-buf))
|
||||||
|
(kill-buffer recon-buf))
|
||||||
|
(set-window-buffer (selected-window) buf)))
|
||||||
|
|
||||||
;Make sure you delete the window before you delete the buffer,
|
(defun ledger-reconcile-quit-cleanup ()
|
||||||
;otherwise, madness ensues
|
(interactive)
|
||||||
(delete-window (get-buffer-window reconcile-buf))
|
(let ((buf ledger-buf)
|
||||||
(kill-buffer reconcile-buf)
|
(reconcile-buf (get-buffer ledger-recon-buffer-name)))
|
||||||
|
(with-current-buffer buf
|
||||||
|
(remove-hook 'after-save-hook 'ledger-reconcile-refresh-after-save t))
|
||||||
(if ledger-fold-on-reconcile
|
(if ledger-fold-on-reconcile
|
||||||
(ledger-occur-quit-buffer buf))))
|
(ledger-occur-quit-buffer buf))))
|
||||||
|
|
||||||
|
|
||||||
(defun ledger-marker-where-xact-is (emacs-xact)
|
(defun ledger-marker-where-xact-is (emacs-xact)
|
||||||
"find the position of the xact in the ledger-buf buffer using
|
"find the position of the xact in the ledger-buf buffer using
|
||||||
the emacs output from ledger, return the buffer and a marker
|
the emacs output from ledger, return the buffer and a marker
|
||||||
|
|
@ -330,6 +338,8 @@
|
||||||
(define-key map [menu-bar ldg-recon-menu ref] '("Refresh" . ledger-reconcile-refresh))
|
(define-key map [menu-bar ldg-recon-menu ref] '("Refresh" . ledger-reconcile-refresh))
|
||||||
(define-key map [menu-bar ldg-recon-menu sav] '("Save" . ledger-reconcile-save))
|
(define-key map [menu-bar ldg-recon-menu sav] '("Save" . ledger-reconcile-save))
|
||||||
|
|
||||||
(use-local-map map)))
|
(use-local-map map)
|
||||||
|
|
||||||
|
(add-hook 'kill-buffer-hook 'ledger-reconcile-quit-cleanup nil t)))
|
||||||
|
|
||||||
(provide 'ldg-reconcile)
|
(provide 'ldg-reconcile)
|
||||||
Loading…
Add table
Reference in a new issue