Cache object bindings

This commit is contained in:
2022-06-13 20:01:21 +02:00
parent 94bbd26205
commit 2d76e595a9
2 changed files with 19 additions and 15 deletions
+2 -3
View File
@@ -137,16 +137,15 @@ The indicator is displayed only on graphical terminals."
(error "Not in a PipeWire buffer"))
(pw-lib-refresh)
(let ((inhibit-read-only t)
(bindings (pw-lib-bindings))
(default-ids (mapcar #'cdr (pw-lib-default-nodes)))
(current-line (count-lines (point-min) (min (1+ (point)) (point-max)))))
(erase-buffer)
(insert (pw-ui--label "Devices") "\n")
(dolist (device (pw-lib-objects "Device"))
(pw-ui--insert-line (pw-ui--object-label device default-ids) device)
(dolist (node (pw-lib-children (pw-lib-object-id device) bindings "Node"))
(dolist (node (pw-lib-children (pw-lib-object-id device) "Node"))
(pw-ui--insert-line (concat " " (pw-ui--object-label node default-ids)) node)
(dolist (port (pw-lib-children (pw-lib-object-id node) bindings "Port"))
(dolist (port (pw-lib-children (pw-lib-object-id node) "Port"))
(pw-ui--insert-line (concat " " (pw-ui--object-label port default-ids)) port))))
(insert (pw-ui--label "Clients") "\n")
(dolist (client (pw-lib-objects "Client"))