Fix resizing when alternative display is enabled

* eat.el (eat--t-term): Fix error while resizing when
alternative display is enabled.
This commit is contained in:
Akib Azmain Turja 2023-04-05 20:39:05 +06:00
parent 5792c1b2e0
commit 5c373094cc
No known key found for this signature in database
GPG key ID: 5535FCF54D88616B

23
eat.el
View file

@ -3369,16 +3369,19 @@ is the selection data encoded in base64."
(< height old-height))
;; Go to the beginning of display.
(goto-char (eat--t-disp-begin disp))
(dotimes (l height)
(eat--t-col-motion width)
(delete-region (point) (car (eat--t-eol)))
(if (< (1+ l) height)
(forward-char)
(delete-region (point) (point-max))
(let ((y (eat--t-cur-y cursor))
(x (eat--t-cur-x cursor)))
(eat--t-goto 1 1)
(eat--t-goto y x)))))
(let ((l 0))
(while (and (< l height) (not (eobp)))
(eat--t-col-motion width)
(delete-region (point) (car (eat--t-eol)))
(unless (eobp)
(if (< (1+ l) height)
(forward-char)
(delete-region (point) (point-max))
(let ((y (eat--t-cur-y cursor))
(x (eat--t-cur-x cursor)))
(eat--t-goto 1 1)
(eat--t-goto y x))))
(cl-incf l))))
;; REVIEW: This works, but it is very simple. Most
;; terminals have more sophisticated mechanisms to do this.
;; It would be nice thing have them here.