1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-02-08 20:58:58 +00:00

* lisp/hl-line.el (hl-line-make-overlay): New fun. Set priority.

(hl-line-highlight, global-hl-line-highlight): Use it.
(hl-line-overlay): Use defvar-local.

Fixes: debbugs:16192
This commit is contained in:
Stefan Monnier 2013-12-19 09:00:55 -05:00
parent 1269a68086
commit 2230a6e314
2 changed files with 24 additions and 15 deletions

View File

@ -1,12 +1,18 @@
2013-12-19 Stefan Monnier <monnier@iro.umontreal.ca>
* hl-line.el (hl-line-make-overlay): New fun. Set priority (bug#16192).
(hl-line-highlight, global-hl-line-highlight): Use it.
(hl-line-overlay): Use defvar-local.
2013-12-19 Jan Djärv <jan.h.d@swipnet.se>
* term/ns-win.el: Require dnd.
(global-map): Remove drag items.
(ns-insert-text, ns-set-foreground-at-mouse)
(ns-set-background-at-mouse): Remove
(ns-drag-n-drop, ns-drag-n-drop-other-frame)
(ns-drag-n-drop-as-text, ns-drag-n-drop-as-text-other-frame): New
functions.
(ns-set-background-at-mouse):
Remove (ns-drag-n-drop, ns-drag-n-drop-other-frame)
(ns-drag-n-drop-as-text, ns-drag-n-drop-as-text-other-frame):
New functions.
2013-12-19 Glenn Morris <rgm@gnu.org>
@ -79,8 +85,8 @@
2013-12-18 Tassilo Horn <tsdh@gnu.org>
* textmodes/reftex-vars.el (reftex-label-alist-builtin): Reference
tables with ~\ref{...} instead of only \ref{...}.
* textmodes/reftex-vars.el (reftex-label-alist-builtin):
Reference tables with ~\ref{...} instead of only \ref{...}.
2013-12-18 Chong Yidong <cyd@gnu.org>
@ -113,8 +119,8 @@
2013-12-18 Le Wang <l26wang@gmail.com>
* comint.el (comint-previous-matching-input-from-input): Retain
point (Bug#13404).
* comint.el (comint-previous-matching-input-from-input):
Retain point (Bug#13404).
2013-12-18 Chong Yidong <cyd@gnu.org>

View File

@ -1,4 +1,4 @@
;;; hl-line.el --- highlight the current line
;;; hl-line.el --- highlight the current line -*- lexical-binding:t -*-
;; Copyright (C) 1998, 2000-2013 Free Software Foundation, Inc.
@ -61,9 +61,8 @@
;;; Code:
(defvar hl-line-overlay nil
(defvar-local hl-line-overlay nil
"Overlay used by Hl-Line mode to highlight the current line.")
(make-variable-buffer-local 'hl-line-overlay)
(defvar global-hl-line-overlay nil
"Overlay used by Global-Hl-Line mode to highlight the current line.")
@ -155,13 +154,18 @@ addition to `hl-line-highlight' on `post-command-hook'."
(remove-hook 'change-major-mode-hook #'hl-line-unhighlight t)
(remove-hook 'pre-command-hook #'hl-line-unhighlight t)))
(defun hl-line-make-overlay ()
(let ((ol (make-overlay (point) (point))))
(overlay-put ol 'priority -50) ;(bug#16192)
(overlay-put ol 'face hl-line-face)
ol))
(defun hl-line-highlight ()
"Activate the Hl-Line overlay on the current line."
(if hl-line-mode ; Might be changed outside the mode function.
(progn
(unless hl-line-overlay
(setq hl-line-overlay (make-overlay 1 1)) ; to be moved
(overlay-put hl-line-overlay 'face hl-line-face))
(setq hl-line-overlay (hl-line-make-overlay))) ; To be moved.
(overlay-put hl-line-overlay
'window (unless hl-line-sticky-flag (selected-window)))
(hl-line-move hl-line-overlay))
@ -200,8 +204,7 @@ Global-Hl-Line mode uses the functions `global-hl-line-unhighlight' and
(when global-hl-line-mode ; Might be changed outside the mode function.
(unless (window-minibuffer-p)
(unless global-hl-line-overlay
(setq global-hl-line-overlay (make-overlay 1 1)) ; to be moved
(overlay-put global-hl-line-overlay 'face hl-line-face))
(setq global-hl-line-overlay (hl-line-make-overlay))) ; To be moved.
(overlay-put global-hl-line-overlay 'window
(unless global-hl-line-sticky-flag
(selected-window)))