[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 0ddc794 22/50: always remove highlighting when a command c
From: |
Michael Heerdegen |
Subject: |
[elpa] master 0ddc794 22/50: always remove highlighting when a command caused multiple changes |
Date: |
Mon, 09 Nov 2015 03:35:46 +0000 |
branch: master
commit 0ddc7949925278bd5c54578b43199cc3d52b510b
Author: Michael Heerdegen <address@hidden>
Commit: Michael Heerdegen <address@hidden>
always remove highlighting when a command caused multiple changes
---
on-screen.el | 16 +++++++++++++---
1 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/on-screen.el b/on-screen.el
index e094eda..8c42636 100644
--- a/on-screen.el
+++ b/on-screen.el
@@ -210,7 +210,11 @@ if you scroll further until `on-screen-delay' is over."
:group 'on-screen :type 'boolean)
(defcustom on-screen-remove-when-edit nil
- "Whether to instantly remove highlighting when editing."
+ "Whether to instantly remove highlighting when editing.
+
+In those situations where a single command causes multiple
+changes to a buffer highlighting is always removed to avoid
+confusion."
:group 'on-screen :type 'boolean)
(defcustom on-screen-treat-cut-lines nil
@@ -236,6 +240,9 @@ a non-nil value may make scrolling stuttering on slow
computers."
(defvar on-screen-data nil
"Association list holding internal data.")
+(defvar on-screen-command-counter 0)
+(defvar on-screen-last-change 0)
+
;;; User Commands
@@ -446,6 +453,7 @@ only the windows of the selected frame."
(defun on-screen-pre-command ()
"Remember visible buffer parts in the selected frame."
;; This normally goes to `pre-command-hook'.
+ (incf on-screen-command-counter)
(condition-case nil
(mapc (lambda (win) (with-current-buffer (window-buffer win)
(when (on-screen-enabled-p)
@@ -567,12 +575,14 @@ had changed."
"Reset highligting for current buffer after it was changed.
This has to be done for all its windows. Goes to
`after-change-functions'."
- (when on-screen-remove-when-edit
+ (when (or on-screen-remove-when-edit
+ (= on-screen-last-change on-screen-command-counter))
(let ((buf (current-buffer)))
(when (on-screen-enabled-p buf)
(dolist (win (on-screen-get-windows t))
(when (eq (window-buffer win) buf)
- (on-screen-remove-highlighting win)))))))
+ (on-screen-remove-highlighting win))))))
+ (setq on-screen-last-change on-screen-command-counter))
(defun on-screen-after-wconf-change ()
"Clean up after the window configuration has changed.
- [elpa] master cdf787a 08/50: removed optional arg of on-screen-record-ranges (not used), (continued)
- [elpa] master cdf787a 08/50: removed optional arg of on-screen-record-ranges (not used), Michael Heerdegen, 2015/11/08
- [elpa] master be07506 01/50: Initial commit, Michael Heerdegen, 2015/11/08
- [elpa] master 6aaa211 11/50: remove visual line stuff, Michael Heerdegen, 2015/11/08
- [elpa] master c083518 09/50: added homepage to header, Michael Heerdegen, 2015/11/08
- [elpa] master dd6de11 15/50: minor change, Michael Heerdegen, 2015/11/08
- [elpa] master 38b4a11 19/50: add missing autoload for global-on-screen-mode alias, Michael Heerdegen, 2015/11/08
- [elpa] master 4f4c320 20/50: Update copyright, Michael Heerdegen, 2015/11/08
- [elpa] master 350a979 23/50: add workaround for bug#16796, Michael Heerdegen, 2015/11/08
- [elpa] master 03ddd52 16/50: after-scroll: don't remove highlighting when called in succession, Michael Heerdegen, 2015/11/08
- [elpa] master 5134a22 21/50: minor change (rename two functions), Michael Heerdegen, 2015/11/08
- [elpa] master 0ddc794 22/50: always remove highlighting when a command caused multiple changes,
Michael Heerdegen <=
- [elpa] master 6a73928 18/50: fix invisible fringe markers positioned in invisible lines (e.g. org), Michael Heerdegen, 2015/11/08
- [elpa] master 55c8f4b 27/50: small changes in header, Michael Heerdegen, 2015/11/08
- [elpa] master f4b1ef2 17/50: new option: on-screen-remove-when-edit, decrease overlay priority, Michael Heerdegen, 2015/11/08
- [elpa] master a7630ca 24/50: convert to cl-lib, Michael Heerdegen, 2015/11/08
- [elpa] master 8256496 25/50: use a more modest gray for on-screen-narrow-line face, Michael Heerdegen, 2015/11/08
- [elpa] master b1c1f7e 32/50: new option: on-screen-drawing-threshold, Michael Heerdegen, 2015/11/08
- [elpa] master 259440a 26/50: add Package-Requires header, Michael Heerdegen, 2015/11/08
- [elpa] master 098325c 29/50: set default value of on-screen-treat-cut-lines to t, Michael Heerdegen, 2015/11/08
- [elpa] master 23cf5db 30/50: use lexical binding, Michael Heerdegen, 2015/11/08
- [elpa] master 787fe34 31/50: bump version to 1.1, Michael Heerdegen, 2015/11/08