commit 21fcd22
delthas
·
2023-08-24 14:38:36 +0000 UTC
parent 35166df
Show the number of members in buffers
M
app.go
+3,
-3
1@@ -507,8 +507,8 @@ func (app *App) handleMouseEvent(ev *tcell.EventMouse) {
2 app.win.ClickBuffer(y + app.win.ChannelOffset())
3 } else if app.win.ChannelWidth() == 0 && y == h-1 {
4 app.win.ClickBuffer(app.win.HorizontalBufferOffset(x))
5- } else if x > w-app.win.MemberWidth() {
6- app.win.ClickMember(y + app.win.MemberOffset())
7+ } else if x > w-app.win.MemberWidth() && y >= 2 {
8+ app.win.ClickMember(y - 2 + app.win.MemberOffset())
9 }
10 }
11 if ev.Buttons() == 0 {
12@@ -521,7 +521,7 @@ func (app *App) handleMouseEvent(ev *tcell.EventMouse) {
13 app.win.GoToBufferNo(i)
14 }
15 } else if x > w-app.win.MemberWidth() {
16- if i := y + app.win.MemberOffset(); i == app.win.ClickedMember() {
17+ if i := y - 2 + app.win.MemberOffset(); i >= 0 && i == app.win.ClickedMember() {
18 netID, target := app.win.CurrentBuffer()
19 s := app.sessions[netID]
20 if s != nil && target != "" {
M
ui/ui.go
+21,
-1
1@@ -1,12 +1,12 @@
2 package ui
3
4 import (
5+ "fmt"
6 "strings"
7 "sync/atomic"
8 "time"
9
10 "git.sr.ht/~taiite/senpai/irc"
11-
12 "github.com/gdamore/tcell/v2"
13 )
14
15@@ -560,6 +560,26 @@ func (ui *UI) drawVerticalMemberList(screen tcell.Screen, x0, y0, width, height
16 width--
17 clearArea(screen, x0, y0, width, height)
18
19+ if len(members) > 0 {
20+ var memberString string
21+ if len(members) > 1 {
22+ memberString = fmt.Sprintf("%d members", len(members))
23+ } else {
24+ memberString = fmt.Sprintf("%d member", len(members))
25+ }
26+ memberString = truncate(memberString, width-1, "\u2026")
27+ xMembers := x0 + 1
28+ printString(screen, &xMembers, y0, Styled(memberString, tcell.StyleDefault.Foreground(ui.config.Colors.Status)))
29+ }
30+ y0++
31+ height--
32+ for x := x0; x < x0+width; x++ {
33+ st := tcell.StyleDefault.Foreground(tcell.ColorGray)
34+ screen.SetContent(x, y0, 0x2500, nil, st)
35+ }
36+ y0++
37+ height--
38+
39 padding := 1
40 for _, m := range members {
41 if m.Disconnected {