[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/visual-fill-column f833fb94ff 095/137: Use the window's pr
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/visual-fill-column f833fb94ff 095/137: Use the window's previous margins as minimum margins. |
Date: |
Sun, 2 Jan 2022 22:59:14 -0500 (EST) |
branch: elpa/visual-fill-column
commit f833fb94ffe93c100dc736ff7bfdcb678a6fedb2
Author: Joost Kremers <joostkremers@fastmail.fm>
Commit: Joost Kremers <joostkremers@fastmail.fm>
Use the window's previous margins as minimum margins.
Store the width of the margins before activating `visual-fill-column-mode`,
use
it as the minimum width of the margins and restore it when
`visual-fill-column-mode` is disabled.
---
visual-fill-column.el | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/visual-fill-column.el b/visual-fill-column.el
index b4d3a62b4e..c4a87e6f48 100644
--- a/visual-fill-column.el
+++ b/visual-fill-column.el
@@ -66,6 +66,9 @@ this option is set to a value, it is used instead."
(make-variable-buffer-local 'visual-fill-column-center-text)
(put 'visual-fill-column-center-text 'safe-local-variable 'symbolp)
+(defvar visual-fill-column--min-margins nil "Width of the margins before
invoking `visual-fill-column-mode'.")
+(make-variable-buffer-local 'visual-fill-column--min-margins)
+
(defvar visual-fill-column-mode-map
(let ((map (make-sparse-keymap)))
(define-key map [right-margin mouse-1] (global-key-binding [mouse-1])) ;
#'mouse-set-point
@@ -125,14 +128,19 @@ that actually visit a file."
(add-hook 'window-configuration-change-hook
#'visual-fill-column--adjust-window 'append 'local)
(if (>= emacs-major-version 26)
(add-hook 'window-size-change-functions
#'visual-fill-column--adjust-frame 'append))
+ (let ((margins (window-margins (selected-window))))
+ (setq visual-fill-column--min-margins (cons (or (car margins) 0)
+ (or (cdr margins) 0))))
(visual-fill-column--adjust-window))
(defun visual-fill-column-mode--disable ()
"Disable `visual-fill-column-mode' for the current buffer."
(remove-hook 'window-configuration-change-hook
#'visual-fill-column--adjust-window 'local)
- (set-window-fringes (get-buffer-window (current-buffer)) nil)
- (set-window-margins (get-buffer-window (current-buffer)) nil)
- (set-window-parameter (get-buffer-window (current-buffer)) 'min-margins nil))
+ (let ((window (get-buffer-window (current-buffer))))
+ (set-window-margins window (car visual-fill-column--min-margins) (cdr
visual-fill-column--min-margins))
+ (set-window-fringes window nil)
+ (set-window-parameter window 'min-margins nil)
+ (kill-local-variable 'visual-fill-column--min-margins)))
;;;###autoload
(defun visual-fill-column-split-window-sensibly (&optional window)
@@ -224,7 +232,7 @@ and `text-scale-mode-step'."
(setq left right)
(setq right 0))
- (set-window-parameter window 'min-margins '(0 . 0))
+ (set-window-parameter window 'min-margins visual-fill-column--min-margins)
(set-window-margins window left right)))
(provide 'visual-fill-column)
- [nongnu] elpa/visual-fill-column 606d86e38c 060/137: Update doc string of `turn-on-visual-fill-column-mode'., (continued)
- [nongnu] elpa/visual-fill-column 606d86e38c 060/137: Update doc string of `turn-on-visual-fill-column-mode'., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column dd6f1e0cf2 084/137: Resize screenshots., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 14e841218d 083/137: Add text introducing screenshots to the README., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 48a3690b01 091/137: Add more bindings for mouse events in the margins., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 2048a0ce91 089/137: turn-on-visual-fill-column-mode: Do not depend on `visual-line-mode`., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 7ca18f37af 092/137: Rewrap comment., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 598bc992f0 093/137: Update Emacs dependency to 25.1., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 7c479f1a1c 098/137: Use `(selected-window)' instead of `(get-buffer-window (current-buffer))'., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column e73f99e09f 104/137: Fix the values of `visual-fill-column-inhibit-sensible-window-split`., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 0c410828e0 101/137: Use `window-configuration-change-hook' in Emacs 27 as well., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column f833fb94ff 095/137: Use the window's previous margins as minimum margins.,
ELPA Syncer <=
- [nongnu] elpa/visual-fill-column ff329c5ffd 105/137: Merge branch 'devel', ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 1da41f73a4 096/137: Use `window-size-change-functions`., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 9258eaf705 100/137: Resurrect `visual-fill-column-split-window'., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column ca98d4bb93 112/137: Revert "Make `visual-fill-column-offset` buffer-local.", ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 043867c469 108/137: Fix comment., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 5f5d816b5c 106/137: Correctly take width of line numbers into account., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 26cf5171ca 110/137: Make `visual-fill-column-offset` buffer-local., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 78a21e1ee2 113/137: Revert "Add `visual-fill-column-offset`.", ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 5b08b9ae9d 116/137: Add test for `visual-fill-column--add-extra-width`., ELPA Syncer, 2022/01/02
- [nongnu] elpa/visual-fill-column 46b7cb720f 120/137: Do not try to restore the margin width when disabling v-f-c-mode., ELPA Syncer, 2022/01/02