v0.10.5: multi-line expanding input box with software blinking cursor
view-input word-wraps input at prompt-w, expanding the grey panel upward as needed. Uses software cursor (█) in :input-fg blinking at 2Hz via get-internal-real-time. view-chat max-lines adapts to variable panel height via input-panel-top. Removed terminal cursor (position-cursor, cursor-show, cursor-style). Dialog minibuffer top now computed from input-panel-top.
This commit is contained in:
@@ -1029,7 +1029,8 @@ Returns T on success, nil on failure. Does NOT wait or retry."
|
||||
(cnt (length filtered))
|
||||
(filter (cl-tty.select:select-filter sel))
|
||||
(mh (min 15 (+ 1 cnt)))
|
||||
(top (max 0 (- h 7 mh)))
|
||||
(panel-top (passepartout.channel-tui:input-panel-top chat-w h))
|
||||
(top (max 0 (- panel-top mh)))
|
||||
(bg-p (theme-color :bg-panel))
|
||||
(sep-c (theme-color :separator)))
|
||||
;; Fill minibuffer area with panel bg
|
||||
@@ -1066,9 +1067,7 @@ Returns T on success, nil on failure. Does NOT wait or retry."
|
||||
(format nil "> ~a" (or filter ""))
|
||||
(theme-color :input-prompt) bg-p))
|
||||
(cl-tty.backend:end-sync be))
|
||||
(sleep 0.1)
|
||||
;; Show cursor at input position every frame
|
||||
(passepartout.channel-tui:position-cursor be w h)))
|
||||
(sleep 0.1)))
|
||||
(progn (disconnect-daemon)))))
|
||||
#+END_SRC
|
||||
|
||||
|
||||
Reference in New Issue
Block a user