]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/isearch.el (isearch-delete-char): Reopen hidden overlays (bug#52248).
authorJuri Linkov <juri@linkov.net>
Sat, 4 Dec 2021 20:04:37 +0000 (22:04 +0200)
committerJuri Linkov <juri@linkov.net>
Sat, 4 Dec 2021 20:04:37 +0000 (22:04 +0200)
(isearch-filter-visible): Move text-property-not-all higher
to not call isearch-range-invisible on inhibit-isearch text.
Remove min/max since arguments are always in the right order.

lisp/isearch.el

index fcb7d646c667f0dd985e7758641a09e4da017b3a..8815cb4f2d6415689b8a6755c33b62336a786845 100644 (file)
@@ -2504,6 +2504,11 @@ If no input items have been entered yet, just beep."
   (if (null (cdr isearch-cmds))
       (ding)
     (isearch-pop-state))
+  ;; When going back to the hidden match, reopen it.
+  (when (and (eq search-invisible 'open) isearch-hide-immediately
+             isearch-other-end)
+    (isearch-range-invisible (min (point) isearch-other-end)
+                             (max (point) isearch-other-end)))
   (isearch-update))
 
 (defun isearch-del-char (&optional arg)
@@ -3787,10 +3792,9 @@ Isearch, at least partially, as determined by `isearch-range-invisible'.
 If `search-invisible' is t, which allows Isearch matches inside
 invisible text, this function will always return non-nil, regardless
 of what `isearch-range-invisible' says."
-  (and (or (eq search-invisible t)
-           (not (isearch-range-invisible beg end)))
-       (not (text-property-not-all (min beg end) (max beg end)
-                                   'inhibit-isearch nil))))
+  (and (not (text-property-not-all beg end 'inhibit-isearch nil))
+       (or (eq search-invisible t)
+           (not (isearch-range-invisible beg end)))))
 
 \f
 ;; General utilities