Преглед изворни кода

fix(ui): draw only selected channel's messages if notifications are disabled (#258)

Co-authored-by: ayn2op <ayn2op@gmail.com>
ayntgl пре 3 година
родитељ
комит
c6d0525884
1 измењених фајлова са 14 додато и 12 уклоњено
  1. 14 12
      ui/application.go

+ 14 - 12
ui/application.go

@@ -191,20 +191,22 @@ func (c *Application) onGuildDelete(g *gateway.GuildDeleteEvent) {
 }
 
 func (c *Application) onMessageCreate(m *gateway.MessageCreateEvent) {
-	if (c.view.ChannelsView.selected == nil || c.view.ChannelsView.selected.ID != m.ChannelID) && c.config.Notifications {
-		g, err := c.state.Cabinet.Guild(m.GuildID)
-		if err != nil {
-			log.Println(err)
-			return
-		}
+	if c.view.ChannelsView.selected == nil {
+		if c.config.Notifications {
+			g, err := c.state.Cabinet.Guild(m.GuildID)
+			if err != nil {
+				log.Println(err)
+				return
+			}
 
-		c, err := c.state.Cabinet.Channel(m.ChannelID)
-		if err != nil {
-			log.Println(err)
-			return
-		}
+			c, err := c.state.Cabinet.Channel(m.ChannelID)
+			if err != nil {
+				log.Println(err)
+				return
+			}
 
-		go beeep.Notify(fmt.Sprintf("%s %s", g.Name, c.Name), m.Content, "")
+			go beeep.Notify(fmt.Sprintf("%s %s", g.Name, c.Name), m.Content, "")
+		}
 	} else {
 		_, err := c.view.MessagesView.Write(buildMessage(c, m.Message))
 		if err != nil {