When a buffer is present in more than one perspective and I kill it with `C-x k', it's really killed rather than just removed from the current perspective.
How to reproduce:
Switch to some buffer in some perspective.
Switch to another perspective.
Add the buffer to the current perspective.
Kill the buffer with `C-x k'.
Switch back to the original perspective.
The buffer is not there.
I think the problem is in persp-kill-buffer-query-function, `not-foreign' branch:
persp--remove-buffer-2, and thus persp-kill-buffer-query-function, returns the buffer rather than nil so the buffer gets actually killed. If I change the code above to
When a buffer is present in more than one perspective and I kill it with `C-x k', it's really killed rather than just removed from the current perspective.
How to reproduce:
I think the problem is in persp-kill-buffer-query-function, `not-foreign' branch:
persp--remove-buffer-2, and thus persp-kill-buffer-query-function, returns the buffer rather than nil so the buffer gets actually killed. If I change the code above to
then killing buffers works as expected.