emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master a142841ad1: * lisp/outline.el: 'S-<down-mouse-1>' on buffer butto


From: Juri Linkov
Subject: master a142841ad1: * lisp/outline.el: 'S-<down-mouse-1>' on buffer buttons cycles all outlines.
Date: Wed, 23 Nov 2022 03:50:43 -0500 (EST)

branch: master
commit a142841ad1ee36d409d8fe5f6d9fbd5e87879b67
Author: Juri Linkov <juri@linkov.net>
Commit: Juri Linkov <juri@linkov.net>

    * lisp/outline.el: 'S-<down-mouse-1>' on buffer buttons cycles all outlines.
    
    (outline--create-button-icons, outline--insert-button): Bind 'S-<mouse-1>' 
to
    'outline-cycle-buffer' as it's already done for buttons on the margins.
    Ignore 'S-<down-mouse-1>'.  Don't hard-code 'help-echo' since it should be
    customizable by the ':help-echo' keyword in 'define-icon'.
---
 lisp/outline.el | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

diff --git a/lisp/outline.el b/lisp/outline.el
index 2465a4963a..86ac19aa41 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 "<mouse-2>" #'outline-cycle)))
+                    'keymap (define-keymap
+                              "<mouse-2>" #'outline-cycle
+                              ;; Need to override the global binding
+                              ;; `mouse-appearance-menu' with <down->:
+                              "S-<down-mouse-1>" #'ignore
+                              "S-<mouse-1>" #'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
-                                    "<mouse-2>" #'outline-cycle))
-           (overlay-put o 'help-echo (if (eq type 'close)
-                                         "Click to show"
-                                       "Click to hide")))
+                                    "<mouse-2>" #'outline-cycle
+                                    ;; Need to override the global binding
+                                    ;; `mouse-appearance-menu' with <down->:
+                                    "S-<down-mouse-1>" #'ignore
+                                    "S-<mouse-1>" #'outline-cycle-buffer)))
           ('in-margins
            (overlay-put o 'before-string icon)
            (overlay-put o 'keymap (define-keymap "RET" #'outline-cycle)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]