summaryrefslogtreecommitdiff
path: root/lisp/replace.el
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2019-07-15 20:13:48 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2019-07-15 20:13:48 +0200
commit6cd3b7a62b755f8cd5ff9b02c227f133abfb4ec2 (patch)
treed8d697779800d6a2c2dff6b9ed6a7d21da9221ee /lisp/replace.el
parentb7946afe25c718822cb95fb15719ac002d9341f0 (diff)
downloademacs-6cd3b7a62b755f8cd5ff9b02c227f133abfb4ec2.tar.gz
Tweak mouse-face highlighting of Occur buffers
* lisp/replace.el (occur-engine): Ensure that the mouse highlight is done over the entire line (bug#27846).
Diffstat (limited to 'lisp/replace.el')
-rw-r--r--lisp/replace.el17
1 files changed, 10 insertions, 7 deletions
diff --git a/lisp/replace.el b/lisp/replace.el
index 7839bed7fb5..7c6c6fc9b7f 100644
--- a/lisp/replace.el
+++ b/lisp/replace.el
@@ -1751,7 +1751,7 @@ See also `multi-occur'."
(append
(when prefix-face
`(font-lock-face ,prefix-face))
- `(occur-prefix t mouse-face (highlight)
+ `(occur-prefix t
;; Allow insertion of text
;; at the end of the prefix
;; (for Occur Edit mode).
@@ -1764,23 +1764,26 @@ See also `multi-occur'."
;; We don't put `mouse-face' on the newline,
;; because that loses. And don't put it
;; on context lines to reduce flicker.
- (propertize curstring 'mouse-face (list 'highlight)
+ (propertize curstring
'occur-target marker
'follow-link t
'help-echo
"mouse-2: go to this occurrence"))
(out-line
- (concat
- match-prefix
- ;; Add non-numeric prefix to all non-first lines
- ;; of multi-line matches.
+ ;; Add non-numeric prefix to all non-first lines
+ ;; of multi-line matches.
+ (concat
(replace-regexp-in-string
"\n"
(if prefix-face
(propertize
"\n :" 'font-lock-face prefix-face)
"\n :")
- match-str)
+ ;; Add mouse face in one section to
+ ;; ensure the prefix and the string
+ ;; get a contiguous highlight.
+ (propertize (concat match-prefix match-str)
+ 'mouse-face 'highlight))
;; Add marker at eol, but no mouse props.
(propertize "\n" 'occur-target marker)))
(data