From: Juri Linkov Date: Wed, 23 Nov 2022 08:50:23 +0000 (+0200) Subject: * lisp/outline.el: 'S-' on buffer buttons cycles all outlines. X-Git-Tag: emacs-29.0.90~1578 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a142841ad1ee36d409d8fe5f6d9fbd5e87879b67;p=emacs.git * lisp/outline.el: 'S-' on buffer buttons cycles all outlines. (outline--create-button-icons, outline--insert-button): Bind 'S-' to 'outline-cycle-buffer' as it's already done for buttons on the margins. Ignore 'S-'. Don't hard-code 'help-echo' since it should be customizable by the ':help-echo' keyword in 'define-icon'. --- diff --git a/lisp/outline.el b/lisp/outline.el index 2465a4963ab..86ac19aa415 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -1777,7 +1777,12 @@ With a prefix argument, show headings up to that LEVEL." (propertize (icon-string icon-name) 'mouse-face 'default 'follow-link 'mouse-face - 'keymap (define-keymap "" #'outline-cycle))) + 'keymap (define-keymap + "" #'outline-cycle + ;; Need to override the global binding + ;; `mouse-appearance-menu' with : + "S-" #'ignore + "S-" #'outline-cycle-buffer))) (list 'outline-open (if outline--use-rtl 'outline-close-rtl 'outline-close)))))) @@ -1805,10 +1810,11 @@ With a prefix argument, show headings up to that LEVEL." (overlay-put o 'mouse-face 'highlight) (overlay-put o 'keymap (define-keymap "RET" #'outline-cycle - "" #'outline-cycle)) - (overlay-put o 'help-echo (if (eq type 'close) - "Click to show" - "Click to hide"))) + "" #'outline-cycle + ;; Need to override the global binding + ;; `mouse-appearance-menu' with : + "S-" #'ignore + "S-" #'outline-cycle-buffer))) ('in-margins (overlay-put o 'before-string icon) (overlay-put o 'keymap (define-keymap "RET" #'outline-cycle)))