diff options
| author | Morgan Willcock | 2024-10-05 18:33:51 +0100 |
|---|---|---|
| committer | Eli Zaretskii | 2024-10-19 10:33:35 +0300 |
| commit | bcc4e64fa7aab9f44e3a7bcdf651a32ec52866c2 (patch) | |
| tree | 00b048925678d9f4b7d8b18e5edd9f367ff8d160 /lib-src | |
| parent | 9dcc32f10cbae9497d6b33fcc739b75c1d5e411c (diff) | |
| download | emacs-bcc4e64fa7aab9f44e3a7bcdf651a32ec52866c2.tar.gz emacs-bcc4e64fa7aab9f44e3a7bcdf651a32ec52866c2.zip | |
Rewrite Speedbar expansion for all descendants (bug#73533)
Rewrite 'speedbar-expand-line-descendants' to avoid getting into
an infinite loop by reaching max-lisp-eval-depth. The new
method avoids querying and displaying information for every
movement, instead using a single message to indicate that
expansion is in progress, and so is significantly faster. The
narrowing per item introduced by the fix for bug#35014 is
removed because it prevented expanded descendant items when the
top-level item was already expanded.
* lisp/speedbar.el (speedbar--get-line-indent-level): New
function to return the indentation level of the current line.
(speedbar-expand-line-descendants): Use simpler line motion and
no recursion. Output messages indicating when expansion is in
progress and when it is completed. Fix expansion of descendants
where the top-level item was already expanded.
Diffstat (limited to 'lib-src')
0 files changed, 0 insertions, 0 deletions