diff options
| author | Stéphane Marks | 2025-12-10 09:20:02 -0500 |
|---|---|---|
| committer | Eli Zaretskii | 2025-12-20 18:23:25 +0200 |
| commit | c989d096f19d875a9a96ba56bfc479af4b14f700 (patch) | |
| tree | ac68731ac35e4ba7d06a5a56c98cb0ac88b68c64 /admin/notes/java | |
| parent | cf2e676ecab42a3f2add728eca20bb23d2a73728 (diff) | |
| download | emacs-c989d096f19d875a9a96ba56bfc479af4b14f700.tar.gz emacs-c989d096f19d875a9a96ba56bfc479af4b14f700.zip | |
Add vtable buffer slot (bug#79982)
This solves for background vtable mutations, i.e., updates
initiated from buffers other than the vtable buffer, and for
buffer-adjusted string-pixel-width computations.
* lisp/emacs-lisp/vtable.el (vtable): New '-buffer' slot.
(vtable-buffer, vtable-set-buffer): New function.
(vtable-update-object, vtable-remove-object)
(vtable-insert-object): Wrap operation with the vtable buffer.
(vtable--insert): Split from old 'vtable-insert'.
(vtable-insert): Insert table and record the buffer.
(vtable--insert-line, vtable--insert-header-line): Use
'vtable-buffer' for pixel-width computation.
(vtable--limit-string, vtable--char-width): Pass buffer to
'string-pixel-width'.
(vtable-revert): New optional table argument.
(vtable--alter-column-width, vtable-revert-command)
(vtable-sort-by-current-column): Call 'vtable-revert' with the
table.
* test/lisp/emacs-lisp/vtable-tests.el
(vtable-tests--make-no-header-2-object-table): New helper
function.
(test-vstable-compute-columns): Correct typo in test name. Use
new helper function.
(test-vtable-unique-buffer)
(test-vtable-non-current-buffer-insert-object)
(test-vtable-non-current-buffer-remove-object)
(test-vtable-non-current-buffer-update-object)
(test-vtable--limit-string-with-face-remapped-buffer): New test.
Diffstat (limited to 'admin/notes/java')
0 files changed, 0 insertions, 0 deletions