mirror of https://codeberg.org/cage/tinmop/
- [TUI] added new command: 'thread-delete-subtree';
- removed legacy function.
This commit is contained in:
parent
917af9b007
commit
1d4d813dbc
|
@ -337,6 +337,8 @@
|
|||
|
||||
(define-key "N d" #'delete-notifications *thread-keymap*)
|
||||
|
||||
(define-key "T d" #'thread-delete-subtree *thread-keymap*)
|
||||
|
||||
(define-key "P" #'poll-vote *thread-keymap*)
|
||||
|
||||
(define-key "p" #'show-parent-post *thread-keymap*)
|
||||
|
|
|
@ -241,12 +241,6 @@ example:
|
|||
"/"
|
||||
(db-current-file-name))))
|
||||
|
||||
(defun db-path* ()
|
||||
(uiop:unix-namestring (concatenate 'string
|
||||
(res:home-datadir)
|
||||
"/"
|
||||
"db.sqlite3")))
|
||||
|
||||
(defun db-file-exists-p ()
|
||||
(fs:file-exists-p (db-path)))
|
||||
|
||||
|
|
|
@ -2972,6 +2972,7 @@
|
|||
:thread-open-selected-message
|
||||
:thread-mark-delete-selected-message
|
||||
:thread-mark-prevent-delete-selected-message
|
||||
:thread-delete-subtree
|
||||
:subscribe-to-hash
|
||||
:unsubscribe-to-hash
|
||||
:message-extract-links
|
||||
|
|
|
@ -365,6 +365,21 @@ Metadata includes:
|
|||
(thread-window:mark-selected-message-prevent-delete *thread-window*
|
||||
:move-down-selected-message t))
|
||||
|
||||
(defun thread-delete-subtree ()
|
||||
"Mark the selected message and all its children for deletion and do the
|
||||
same to each child of the latter"
|
||||
(with-enqueued-process ()
|
||||
(when-let* ((selected-row (line-oriented-window:selected-row-fields *thread-window*))
|
||||
(selected-message-id (db:row-message-status-id selected-row))
|
||||
(timeline (thread-window:timeline-type *thread-window*))
|
||||
(folder (thread-window:timeline-folder *thread-window*))
|
||||
(messages-tree (db:message-root->tree timeline folder selected-message-id))
|
||||
(children-to-delete (mtree:collect-nodes-data messages-tree))
|
||||
(ids-to-delete (mapcar #'db:row-message-status-id children-to-delete)))
|
||||
(loop for id-to-delete in ids-to-delete do
|
||||
(db:mark-status-deleted timeline folder id-to-delete))
|
||||
(line-oriented-window:resync-rows-db *thread-window* :redraw t))))
|
||||
|
||||
(defun subscribe-to-hash ()
|
||||
"Subscribe to hashtag"
|
||||
(flet ((on-input-complete (tags)
|
||||
|
|
Loading…
Reference in New Issue