@@ -43,6 +43,7 @@ class AppDelegate: NSObject, NSApplicationDelegate {
43
43
icon? . isTemplate = true
44
44
icon? . size = size
45
45
statusButton. image = icon
46
+ statusButton. imagePosition = NSControl . ImagePosition. imageLeft
46
47
47
48
statusBarItem. menu = menu
48
49
@@ -81,6 +82,7 @@ extension AppDelegate {
81
82
func refreshMenu( ) {
82
83
NSLog ( " Refreshing menu " )
83
84
self . menu. removeAllItems ( )
85
+ self . statusBarItem. button? . title = " "
84
86
85
87
if ( githubUsername == " " || githubToken == " " ) {
86
88
addMenuFooterItems ( )
@@ -121,33 +123,47 @@ extension AppDelegate {
121
123
122
124
group. notify ( queue: . main) {
123
125
126
+ let isOneSelected = ( self . showAssigned. intValue + self . showCreated. intValue + self . showRequested. intValue) == 1
127
+
124
128
125
129
if let assignedPulls = assignedPulls, let createdPulls = createdPulls, let reviewRequestedPulls = reviewRequestedPulls {
126
-
130
+
127
131
if self . showAssigned && !assignedPulls. isEmpty {
128
- self . menu. addItem ( NSMenuItem ( title: " Assigned " , action: nil , keyEquivalent: " " ) )
132
+ self . menu. addItem ( NSMenuItem ( title: " Assigned ( \( assignedPulls . count ) ) " , action: nil , keyEquivalent: " " ) )
129
133
for pull in assignedPulls {
130
134
self . menu. addItem ( self . createMenuItem ( pull: pull) )
131
135
}
132
136
self . menu. addItem ( . separator( ) )
137
+ if isOneSelected {
138
+ self . statusBarItem. button? . title = String ( assignedPulls. count)
139
+ }
133
140
}
134
141
135
142
if self . showCreated && !createdPulls. isEmpty {
136
- self . menu. addItem ( NSMenuItem ( title: " Created " , action: nil , keyEquivalent: " " ) )
143
+ self . menu. addItem ( NSMenuItem ( title: " Created ( \( createdPulls . count ) ) " , action: nil , keyEquivalent: " " ) )
137
144
for pull in createdPulls {
138
145
self . menu. addItem ( self . createMenuItem ( pull: pull) )
139
146
}
140
147
self . menu. addItem ( . separator( ) )
148
+ if isOneSelected {
149
+ self . statusBarItem. button? . title = String ( createdPulls. count)
150
+ }
151
+
141
152
}
142
153
143
154
if self . showRequested && !reviewRequestedPulls. isEmpty {
144
- self . menu. addItem ( NSMenuItem ( title: " Review Requested " , action: nil , keyEquivalent: " " ) )
155
+ self . menu. addItem ( NSMenuItem ( title: " Review Requested ( \( reviewRequestedPulls . count ) ) " , action: nil , keyEquivalent: " " ) )
145
156
for pull in reviewRequestedPulls {
146
157
self . menu. addItem ( self . createMenuItem ( pull: pull) )
147
158
}
148
159
self . menu. addItem ( . separator( ) )
160
+ if isOneSelected {
161
+ self . statusBarItem. button? . title = String ( reviewRequestedPulls. count)
162
+ }
163
+
149
164
}
150
165
166
+
151
167
self . addMenuFooterItems ( )
152
168
}
153
169
}
0 commit comments