branch: elpa/fj
commit 35cca8d11e57cb75d0aec77e07a3c14f770ee6e4
Author: marty hiatt <[email protected]>
Commit: marty hiatt <[email protected]>
link action/TL owner button: own repos if fj-user. FIX #233.
---
fj.el | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/fj.el b/fj.el
index eb1cffcc6b..496b2d881f 100644
--- a/fj.el
+++ b/fj.el
@@ -3689,12 +3689,12 @@ Returns annotation for CAND, a candidate."
(define-button-type 'fj-search-owner-button
'follow-link t
- 'action 'fj-list-user-repos
+ 'action 'fj-list-own-or-user-repos
'help-echo "RET: View this user.")
(define-button-type 'fj-issues-owner-button
'follow-link t
- 'action 'fj-list-user-repos
+ 'action 'fj-list-own-or-user-repos
'help-echo "RET: View this user.")
(define-button-type 'fj-repo-stargazers-button
@@ -3860,6 +3860,18 @@ unset any default values."
(fj--repo-owner))))
(fj-user-repos owner)))))
+(defun fj-list-own-or-user-repos (pos)
+ "Button action function for owners in tabulated lists.
+POS is current position.
+If owner is `fj-user', call `fj-list-own-repos'.
+Else call `fj-user-repos'.
+We do this because the latter has no sort argument, while the former
+does, and sorting user repos is useful."
+ (let ((user (button-label (button-at pos))))
+ (if (string= fj-user user)
+ (fj-list-own-repos)
+ (fj-list-user-repos))))
+
;; search or user repo TL
(defun fj-star-repo (&optional unstar)
"Star or UNSTAR current repo from tabulated user repos listing."
@@ -4824,7 +4836,9 @@ Used for hitting RET on a given link."
(fj-issue-ref-follow item))
;; ((eq type 'pull)
;; (fj-item-view repo owner item nil :pull))
- ('handle (fj-user-repos item))
+ ('handle (if (string= fj-user item)
+ (fj-list-own-repos)
+ (fj-user-repos item)))
('team (fj-browse-team item))
('repo-tag (fj-repo-tag-follow item))
((or 'commit 'commit-ref)