branch: externals/org
commit 901b061393a30ac67a96302e30a8b139b53c749b
Author: Slawomir Grochowski <[email protected]>
Commit: Slawomir Grochowski <[email protected]>
; org-colview: Extract display environment helpers
* lisp/org-colview.el (org-columns--suspend-display-environment)
(org-columns--resume-display-environment): New functions.
(org-columns-remove-overlays, org-columns--display-rows): Use them.
This groups conflicting mode and line-wrapping suspension under a
single display-environment abstraction, so column view setup and
teardown name the display state they adjust.
Refactoring: Extract Function.
No behavior change.
---
lisp/org-colview.el | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/lisp/org-colview.el b/lisp/org-colview.el
index 1ac9bf10ca..3ef1a049dd 100644
--- a/lisp/org-colview.el
+++ b/lisp/org-colview.el
@@ -611,6 +611,16 @@ Saved value is restored by
`org-columns--resume-line-wrapping'."
(when (local-variable-p 'org-colview-initial-truncate-line-value)
(setq truncate-lines org-colview-initial-truncate-line-value)))
+(defun org-columns--suspend-display-environment ()
+ "Suspend display state that conflicts with column view."
+ (org-columns--suspend-conflicting-modes)
+ (org-columns--suspend-line-wrapping))
+
+(defun org-columns--resume-display-environment ()
+ "Resume display state suspended by column view."
+ (org-columns--resume-conflicting-modes)
+ (org-columns--resume-line-wrapping))
+
;;;; Header line
(defvar org-columns-full-header-line-format nil
@@ -687,8 +697,7 @@ This is needed to later remove this relative remapping.")
(setq org-columns-overlays nil)
(let ((inhibit-read-only t))
(remove-text-properties (point-min) (point-max) '(read-only t))))
- (org-columns--resume-conflicting-modes)
- (org-columns--resume-line-wrapping)))
+ (org-columns--resume-display-environment)))
(defun org-columns-quit ()
"Remove the column overlays and in this way exit column editing."
@@ -974,8 +983,7 @@ Also sets `org-columns-top-level-marker' to the new
position."
ROWS must be a non-empty list of collected column rows."
(org-columns--set-widths rows)
(org-columns--display-header-line)
- (org-columns--suspend-conflicting-modes)
- (org-columns--suspend-line-wrapping)
+ (org-columns--suspend-display-environment)
(dolist (row rows)
(goto-char (car row))
(org-columns--display-line (cdr row))))