From 85866fdc784de1cccb18265fef494c11a63c09d6 Mon Sep 17 00:00:00 2001
From: Akib Azmain Turja <akib@disroot.org>
Date: Wed, 4 Oct 2023 17:52:05 +0600
Subject: [PATCH] Don't put overlay on prompt while history Isearch

* eat.el (eat--line-history-isearch-message-overlay)
(eat--line-history-isearch-message): Remove.
* eat.el (eat--line-history-isearch-setup)
(eat--line-history-isearch-end): Don't modify
'isearch-message-function'.
* eat.el (eat-mode): Don't make 'isearch-message-function' and
'eat--line-history-isearch-message-overlay' buffer-local.
---
 eat.el | 53 -----------------------------------------------------
 1 file changed, 53 deletions(-)

diff --git a/eat.el b/eat.el
index 262d25f..57aaedc 100644
--- a/eat.el
+++ b/eat.el
@@ -6005,9 +6005,6 @@ character."
 (defvar eat--line-matching-input-from-input-string ""
   "Input previously used to match input history.")
 
-(defvar eat--line-history-isearch-message-overlay nil
-  "Overlay to show Isearch prompt, replacing the shell prompt.")
-
 (defvar eat--saved-line-input-history-isearch 'not-saved
   "Saved value of `eat-line-input-history-isearch'.")
 
@@ -6293,8 +6290,6 @@ If N is negative, search backwards for the -Nth previous match."
     (setq isearch-message-prefix-add "history ")
     (setq isearch-search-fun-function
           #'eat--line-history-isearch-search)
-    (setq isearch-message-function
-          #'eat--line-history-isearch-message)
     (setq isearch-wrap-function #'eat--line-history-isearch-wrap)
     (setq isearch-push-state-function
           #'eat--line-history-isearch-push-state)
@@ -6305,11 +6300,8 @@ If N is negative, search backwards for the -Nth previous match."
 
 (defun eat--line-history-isearch-end ()
   "Clean up after terminating Isearch."
-  (when eat--line-history-isearch-message-overlay
-    (delete-overlay eat--line-history-isearch-message-overlay))
   (setq isearch-message-prefix-add nil)
   (setq isearch-search-fun-function 'isearch-search-fun-default)
-  (setq isearch-message-function nil)
   (setq isearch-wrap-function nil)
   (setq isearch-push-state-function nil)
   ;; Force isearch to not change mark.
@@ -6401,49 +6393,6 @@ If N is negative, search backwards for the -Nth previous match."
            ;; Return nil on the error "no next/preceding item"
            (error nil)))))))
 
-(defun eat--line-history-isearch-message (&optional c-q-hack ellipsis)
-  "Display the input history search prompt.
-
-If there are no search errors, this function displays an overlay with
-the Isearch prompt which replaces the original shell prompt.
-Otherwise, it displays the standard Isearch message returned from
-the function `isearch-message'.
-
-C-Q-HACK and ELLIPSIS are same as in function `isearch-message', which
-see."
-  (if (not (and isearch-success (not isearch-error)))
-      ;; Use standard function `isearch-message' when not in input
-      ;; line, or search fails, or has an error (like incomplete
-      ;; regexp).  This function displays isearch message in the echo
-      ;; area, so it's possible to see what is wrong in the search
-      ;; string.
-      (isearch-message c-q-hack ellipsis)
-    ;; Otherwise, put the overlay with the standard Isearch prompt
-    ;; over the shell prompt.
-    (if (overlayp eat--line-history-isearch-message-overlay)
-        (move-overlay eat--line-history-isearch-message-overlay
-                      (save-excursion
-                        (goto-char (eat-term-end eat-terminal))
-                        (forward-line 0)
-                        (point))
-                      (eat-term-end eat-terminal))
-      (setq eat--line-history-isearch-message-overlay
-            (make-overlay (save-excursion
-                            (goto-char (eat-term-end eat-terminal))
-                            (forward-line 0)
-                            (point))
-                          (eat-term-end eat-terminal)))
-      (overlay-put eat--line-history-isearch-message-overlay
-                   'evaporate t))
-    (overlay-put eat--line-history-isearch-message-overlay
-                 'display (isearch-message-prefix
-                           ellipsis isearch-nonincremental))
-    (if (and eat--line-input-ring-index (not ellipsis))
-        ;; Display the current history index.
-        (message "History item: %d" (1+ eat--line-input-ring-index))
-      ;; Or clear a previous isearch message.
-      (message ""))))
-
 (defun eat--line-history-isearch-wrap ()
   "Wrap the input history search when search fails.
 
@@ -6563,9 +6512,7 @@ END if it's safe to do so."
           eat--line-input-ring-index
           eat--line-stored-incomplete-input
           eat--line-matching-input-from-input-string
-          eat--line-history-isearch-message-overlay
           isearch-search-fun-function
-          isearch-message-function
           isearch-wrap-function
           isearch-push-state-function
           eat--pending-input-chunks