From bf84fc09b216bd4669d9a0ed9bba30209f0cb7a8 Mon Sep 17 00:00:00 2001 From: Digital Date: Sat, 30 Jun 2018 22:26:40 +0200 Subject: Add option to disable typing notifications (#63) --- ui/command-processor.go | 2 +- ui/commands.go | 17 ++++++++++------- ui/view-main.go | 10 ++++++---- 3 files changed, 17 insertions(+), 12 deletions(-) (limited to 'ui') diff --git a/ui/command-processor.go b/ui/command-processor.go index 0f38c57..eb24f19 100644 --- a/ui/command-processor.go +++ b/ui/command-processor.go @@ -88,7 +88,7 @@ func NewCommandProcessor(parent *MainView) *CommandProcessor { "clearcache": cmdClearCache, "leave": cmdLeave, "join": cmdJoin, - "uitoggle": cmdUIToggle, + "toggle": cmdToggle, "logout": cmdLogout, "sendevent": cmdSendEvent, "setstate": cmdSetState, diff --git a/ui/commands.go b/ui/commands.go index bbe082d..60ab1f1 100644 --- a/ui/commands.go +++ b/ui/commands.go @@ -18,10 +18,10 @@ package ui import ( "encoding/json" - "maunium.net/go/gomuks/debug" - "strings" "fmt" "github.com/lucasb-eyer/go-colorful" + "maunium.net/go/gomuks/debug" + "strings" "unicode" ) @@ -74,7 +74,7 @@ func cmdRainbow(cmd *Command) { html.WriteRune(char) continue } - color := rainbow.GetInterpolatedColorFor(float64(i)/float64(len(text))).Hex() + color := rainbow.GetInterpolatedColorFor(float64(i) / float64(len(text))).Hex() fmt.Fprintf(&html, "%c", color, char) } tempMessage := cmd.Room.NewTempMessage("m.text", html.String()) @@ -182,9 +182,9 @@ func cmdSetState(cmd *Command) { } } -func cmdUIToggle(cmd *Command) { +func cmdToggle(cmd *Command) { if len(cmd.Args) == 0 { - cmd.Reply("Usage: /uitoggle ") + cmd.Reply("Usage: /toggle ") return } switch cmd.Args[0] { @@ -196,11 +196,14 @@ func cmdUIToggle(cmd *Command) { cmd.Config.Preferences.BareMessageView = !cmd.Config.Preferences.BareMessageView case "images": cmd.Config.Preferences.DisableImages = !cmd.Config.Preferences.DisableImages + case "typingnotif": + cmd.Config.Preferences.DisableTypingNotifs = !cmd.Config.Preferences.DisableTypingNotifs default: - cmd.Reply("Usage: /uitoggle ") + cmd.Reply("Usage: /toggle ") return } - cmd.UI.Render() + // is there a reason this is called twice? + // cmd.UI.Render() cmd.UI.Render() go cmd.Matrix.SendPreferencesToMatrix() } diff --git a/ui/view-main.go b/ui/view-main.go index fe2db76..40a6dcd 100644 --- a/ui/view-main.go +++ b/ui/view-main.go @@ -102,10 +102,12 @@ func (view *MainView) MarkRead(roomView *RoomView) { } func (view *MainView) InputChanged(roomView *RoomView, text string) { - if len(text) == 0 { - go view.matrix.SendTyping(roomView.Room.ID, false) - } else if text[0] != '/' { - go view.matrix.SendTyping(roomView.Room.ID, true) + if !roomView.config.Preferences.DisableTypingNotifs { + if len(text) == 0 { + go view.matrix.SendTyping(roomView.Room.ID, false) + } else if text[0] != '/' { + go view.matrix.SendTyping(roomView.Room.ID, true) + } } } -- cgit v1.2.3