Rasmus <ras...@gmx.us> writes:

> Great.  The bad commit seems to be:
>
>     commit 898cfbcac0560d1d742d939a62c5a8253fe9b66f
>     Author: Nicolas Goaziou <m...@nicolasgoaziou.fr>
>     Date:   Mon Aug 10 13:34:07 2015 +0200
>
>         Implement faster `show-children' function
>
>         * lisp/org.el (org-show-children): New function.
>         (org-cycle-internal-local):
>         (org-set-visibility-according-to-property):
>         (org-content):
>         (org-move-subtree-down):
>         (orgstruct-setup):
>         (org-show-set-visibility):
>         * contrib/lisp/org-toc.el (org-toc-cycle-subtree):
>         (org-toc-restore-config):
>         * lisp/org-agenda.el (org-agenda-show-1):
>         * lisp/org-feed.el (org-feed-update): Use new function.
>
>         * etc/ORG-NEWS: Document new function.
>
>         Suggested-by: Samuel Wales <samolog...@gmail.com>
>         <http://permalink.gmane.org/gmane.emacs.orgmode/99616>
>
> I guess I will have to dissect it more to figure out what broke.

`org-cycle-internal-local' calls `org-show-children', which is the Org
specific implementation of `show-children'.

I don't think orgstruct details should leak into `org-show-children', so
I suggest to plug orgstruct stuff, i.e., make sure `show-children' is
called instead of `org-show-children', elsewhere. 

One possibility is to use a hook in `org-cycle', not sure which one
though. `orgstruct-mode' could also assume its kludge status and use
something like `add-function'.

WDYT?

Regards,

Reply via email to