@@ -483,6 +483,23 @@ Must be a positive integer."
483483 (propertize (funcall keybinding-for #'eca-chat-tool-call-accept-all )
484484 'font-lock-face 'eca-chat-tool-call-keybinding-face )
485485 (propertize " \n " 'font-lock-face 'eca-chat-tool-call-spacing-face )
486+ (eca-buttonize
487+ eca-chat-mode-map
488+ (propertize " Accept and remember"
489+ 'eca-tool-call-pending-approval-accept-and-remember t
490+ 'line-prefix spacing-line-prefix
491+ 'font-lock-face 'eca-chat-tool-call-accept-and-remember-face )
492+ (lambda ()
493+ (eca-api-notify session
494+ :method " chat/toolCallApprove"
495+ :params (list :chatId eca-chat--id
496+ :save " session"
497+ :toolCallId id))))
498+ (propertize " for this session "
499+ 'font-lock-face 'eca-chat-tool-call-approval-content-face )
500+ (propertize (funcall keybinding-for #'eca-chat-tool-call-accept-all-and-remember )
501+ 'font-lock-face 'eca-chat-tool-call-keybinding-face )
502+ (propertize " \n " 'font-lock-face 'eca-chat-tool-call-spacing-face )
486503 (eca-buttonize
487504 eca-chat-mode-map
488505 (propertize " Reject"
@@ -1071,15 +1088,16 @@ If FORCE? decide to OPEN? or not."
10711088
10721089(defun eca-chat--refresh-progress (session )
10731090 " Refresh the progress TEXT for SESSION."
1074- (eca-chat--with-current-buffer (eca-chat--get-buffer session)
1075- (save-excursion
1076- (-some-> (eca-chat--prompt-progress-field-ov)
1077- (overlay-start )
1078- (goto-char ))
1079- (delete-region (point ) (line-end-position ))
1080- (insert (propertize eca-chat--progress-text
1081- 'font-lock-face 'eca-chat-system-messages-face )
1082- eca-chat--spinner-string))))
1091+ (when-let ((buffer (eca-chat--get-buffer session)))
1092+ (eca-chat--with-current-buffer buffer
1093+ (save-excursion
1094+ (-some-> (eca-chat--prompt-progress-field-ov)
1095+ (overlay-start )
1096+ (goto-char ))
1097+ (delete-region (point ) (line-end-position ))
1098+ (insert (propertize eca-chat--progress-text
1099+ 'font-lock-face 'eca-chat-system-messages-face )
1100+ eca-chat--spinner-string)))))
10831101
10841102(defun eca-chat--refresh-context ()
10851103 " Refresh chat context."
0 commit comments