diff --git a/internal/cmd/root.go b/internal/cmd/root.go index 2d474a5f99b58dc6ffe018f04d7aa69b9fe2d65e..fca3dc9369d2306674a30fae43fe2e662024a0da 100644 --- a/internal/cmd/root.go +++ b/internal/cmd/root.go @@ -39,6 +39,7 @@ import ( uv "github.com/charmbracelet/ultraviolet" "github.com/charmbracelet/x/ansi" "github.com/charmbracelet/x/exp/charmtone" + xstrings "github.com/charmbracelet/x/exp/strings" "github.com/charmbracelet/x/term" "github.com/spf13/cobra" ) @@ -200,7 +201,7 @@ func supportsProgressBar() bool { termProg := os.Getenv("TERM_PROGRAM") _, isWindowsTerminal := os.LookupEnv("WT_SESSION") - return isWindowsTerminal || strings.Contains(strings.ToLower(termProg), "ghostty") + return isWindowsTerminal || xstrings.ContainsAnyOf(strings.ToLower(termProg), "ghostty", "rio") } // useClientServer returns true when the client/server architecture is diff --git a/internal/ui/model/ui.go b/internal/ui/model/ui.go index e5724987898a755f06a2b2b4643cce9ff94a3d83..5d5cb3d769e46249ab09d4df85689ca143a062ea 100644 --- a/internal/ui/model/ui.go +++ b/internal/ui/model/ui.go @@ -55,6 +55,7 @@ import ( "github.com/charmbracelet/ultraviolet/layout" "github.com/charmbracelet/ultraviolet/screen" "github.com/charmbracelet/x/editor" + xstrings "github.com/charmbracelet/x/exp/strings" ) // MouseScrollThreshold defines how many lines to scroll the chat when a mouse @@ -650,7 +651,7 @@ func (m *UI) Update(msg tea.Msg) (tea.Model, tea.Cmd) { termVersion := strings.ToLower(msg.Name) // Only enable progress bar for the following terminals. if !m.sendProgressBar { - m.sendProgressBar = strings.Contains(termVersion, "ghostty") + m.sendProgressBar = xstrings.ContainsAnyOf(termVersion, "ghostty", "rio") } return m, nil case tea.WindowSizeMsg: