on main help sign in
feat: show progress bar on rio terminal (#2624)
commite8f5e2025d2401ffe06123c42226f3b7a20abe3a authorAndrey Nering <andreynering@users.noreply.github.com> dateThu 16 Apr 2026, 17:29 (6 months ago) parent4b3dff3
2 files changed+4−2
internal/cmd/root.go+2−1 internal/ui/model/ui.go+2−1
internal/cmd/root.go+2−1
@@ -39,6 +39,7 @@ import (
3939 uv "github.com/charmbracelet/ultraviolet"
4040 "github.com/charmbracelet/x/ansi"
4141 "github.com/charmbracelet/x/exp/charmtone"
42+ xstrings "github.com/charmbracelet/x/exp/strings"
4243 "github.com/charmbracelet/x/term"
4344 "github.com/spf13/cobra"
4445)
@@ -200,7 +201,7 @@ func supportsProgressBar() bool {
200201 termProg := os.Getenv("TERM_PROGRAM")
201202 _, isWindowsTerminal := os.LookupEnv("WT_SESSION")
202203
203− return isWindowsTerminal || strings.Contains(strings.ToLower(termProg), "ghostty")
204+ return isWindowsTerminal || xstrings.ContainsAnyOf(strings.ToLower(termProg), "ghostty", "rio")
204205}
205206
206207// useClientServer returns true when the client/server architecture is
internal/ui/model/ui.go+2−1
@@ -55,6 +55,7 @@ import (
5555 "github.com/charmbracelet/ultraviolet/layout"
5656 "github.com/charmbracelet/ultraviolet/screen"
5757 "github.com/charmbracelet/x/editor"
58+ xstrings "github.com/charmbracelet/x/exp/strings"
5859)
5960
6061// 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) {
650651 termVersion := strings.ToLower(msg.Name)
651652 // Only enable progress bar for the following terminals.
652653 if !m.sendProgressBar {
653− m.sendProgressBar = strings.Contains(termVersion, "ghostty")
654+ m.sendProgressBar = xstrings.ContainsAnyOf(termVersion, "ghostty", "rio")
654655 }
655656 return m, nil
656657 case tea.WindowSizeMsg: