emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/debbugs e1c8723 030/311: * debbugs-gnu.el (debbugs-owne


From: Stefan Monnier
Subject: [elpa] externals/debbugs e1c8723 030/311: * debbugs-gnu.el (debbugs-owner): New face.
Date: Sun, 29 Nov 2020 18:41:34 -0500 (EST)

branch: externals/debbugs
commit e1c87234569fd06497f2b39f4c2de7f50cdc38e9
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>

    * debbugs-gnu.el (debbugs-owner): New face.
    (debbugs-show-reports): Mark subject if the user is the bug's
    owner.  Add mouse-face.
    (debbugs-mode-map): Add [mouse-1] and [mouse-2].
    (debbugs-send-control-message): Add "owner" and "noowner" messages.
---
 ChangeLog      |  5 +++++
 debbugs-gnu.el | 22 ++++++++++++++++++++--
 2 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 545bc4f..f179171 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -6,6 +6,11 @@
        (debbugs-show-reports): Remove suppress-done from arguments. It
        must be read from the widget anyway. Tune inserting of bottom line
        widgets.
+       (debbugs-owner): New face.
+       (debbugs-show-reports): Mark subject if the user is the bug's
+       owner.  Add mouse-face.
+       (debbugs-mode-map): Add [mouse-1] and [mouse-2].
+       (debbugs-send-control-message): Add "owner" and "noowner" messages.
 
 2011-07-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
diff --git a/debbugs-gnu.el b/debbugs-gnu.el
index 0635bb3..a2dcb89 100644
--- a/debbugs-gnu.el
+++ b/debbugs-gnu.el
@@ -47,6 +47,9 @@
 (defface debbugs-done '((t (:foreground "DarkGrey")))
   "Face for closed bug reports.")
 
+(defface debbugs-owner '((t (:foreground "red")))
+  "Face for new reports owned by me.")
+
 (defvar debbugs-widget-map
   (let ((map (make-sparse-keymap)))
     (define-key map "\r" 'widget-button-press)
@@ -151,6 +154,10 @@
        (let ((address (mail-header-parse-address
                        (decode-coding-string (cdr (assq 'originator status))
                                              'utf-8)))
+             (owner (if (cdr (assq 'owner status))
+                        (car (mail-header-parse-address
+                              (decode-coding-string (cdr (assq 'owner status))
+                                                    'utf-8)))))
              (subject (decode-coding-string (cdr (assq 'subject status))
                                             'utf-8))
              merged)
@@ -183,7 +190,11 @@
                   (if (> (length address) 23)
                       (propertize (substring address 0 23) 'help-echo address)
                     address)
-                  (propertize subject 'help-echo subject)))
+                  (if (and (stringp owner)
+                           (string-equal owner user-mail-address))
+                      (propertize subject
+                                  'face 'debbugs-owner 'help-echo subject)
+                    (propertize subject 'help-echo subject))))
          (forward-line -1)
          (put-text-property (point) (1+ (point))
                             'debbugs-status status)
@@ -202,6 +213,8 @@
             'debbugs-handled)
            (t
             'debbugs-stale)))
+         (put-text-property
+          (point-at-bol) (point-at-eol) 'mouse-face widget-mouse-face)
          (forward-line 1))))
 
     (when widgets
@@ -215,6 +228,8 @@
 (defvar debbugs-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map "\r" 'debbugs-select-report)
+    (define-key map [mouse-1] 'debbugs-select-report)
+    (define-key map [mouse-2] 'debbugs-select-report)
     (define-key map "q" 'kill-buffer)
     (define-key map "s" 'debbugs-toggle-sort)
     (define-key map "d" 'debbugs-display-status)
@@ -356,6 +371,7 @@ fixed, and then closed."
            "done"
            "unarchive" "reopen" "close"
            "merge" "forcemerge"
+           "owner" "noowner"
            "patch" "wontfix" "moreinfo" "unreproducible" "fixed" "notabug")
          nil t)))
   (let* ((id debbugs-bug-number)       ; Set on group entry.
@@ -383,11 +399,13 @@ fixed, and then closed."
              (format "Subject: control message for bug #%d\n" id)
              "\n"
              (cond
-              ((member message '("unarchive" "reopen"))
+              ((member message '("unarchive" "reopen" "noowner"))
                (format "%s %d\n" message id))
               ((member message '("merge" "forcemerge"))
                (format "%s %d %s\n" message id
                        (read-string "Merge with bug #: ")))
+              ((equal message "owner")
+               (format "owner %d !\n" id))
               ((equal message "close")
                (format "close %d %s\n" id version))
               ((equal message "done")



reply via email to

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