From 2f37a2760df48395cecf87d9ab4cc46c8d94842a Mon Sep 17 00:00:00 2001 From: Christian Rocha Date: Sat, 29 Jan 2022 19:21:14 -0500 Subject: [PATCH] Bump Bubble Tea to v0.19.3 and update deprecated methods * Update deprecated altscreen methods * Update deprecated mouse methods --- go.mod | 2 +- go.sum | 4 ++-- main.go | 10 ++-------- ui/config.go | 1 + ui/ui.go | 8 +++++++- 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/go.mod b/go.mod index e9747ff..b899a79 100644 --- a/go.mod +++ b/go.mod @@ -4,7 +4,7 @@ go 1.16 require ( github.com/charmbracelet/bubbles v0.9.0 - github.com/charmbracelet/bubbletea v0.19.1 + github.com/charmbracelet/bubbletea v0.19.3 github.com/charmbracelet/charm v0.9.1 github.com/charmbracelet/glamour v0.2.1-0.20210402234443-abe9cda419ba github.com/charmbracelet/lipgloss v0.4.0 diff --git a/go.sum b/go.sum index 2755959..a03947c 100644 --- a/go.sum +++ b/go.sum @@ -62,8 +62,8 @@ github.com/charmbracelet/bubbles v0.9.0/go.mod h1:NWT/c+0rYEnYChz5qCyX4Lj6fDw9gG github.com/charmbracelet/bubbletea v0.13.1/go.mod h1:tp9tr9Dadh0PLhgiwchE5zZJXm5543JYjHG9oY+5qSg= github.com/charmbracelet/bubbletea v0.14.1/go.mod h1:b5lOf5mLjMg1tRn1HVla54guZB+jvsyV0yYAQja95zE= github.com/charmbracelet/bubbletea v0.19.0/go.mod h1:VuXF2pToRxDUHcBUcPmCRUHRvFATM4Ckb/ql1rBl3KA= -github.com/charmbracelet/bubbletea v0.19.1 h1:VHuzkJbnTAkxhOfi9+Lb5PYfNM9+Oh+qhP8uDX5ReOU= -github.com/charmbracelet/bubbletea v0.19.1/go.mod h1:VuXF2pToRxDUHcBUcPmCRUHRvFATM4Ckb/ql1rBl3KA= +github.com/charmbracelet/bubbletea v0.19.3 h1:OKeO/Y13rQQqt4snX+lePB0QrnW80UdrMNolnCcmoAw= +github.com/charmbracelet/bubbletea v0.19.3/go.mod h1:VuXF2pToRxDUHcBUcPmCRUHRvFATM4Ckb/ql1rBl3KA= github.com/charmbracelet/charm v0.9.1 h1:lcBUL8OruDLuP56erZ1iD1viJ41H7TyyHeIOIZ4T0v4= github.com/charmbracelet/charm v0.9.1/go.mod h1:0EnHP/Gh/m7gah8+f0f9WL0oSS9yOu0ZMTXNdzx919k= github.com/charmbracelet/glamour v0.2.1-0.20210402234443-abe9cda419ba h1:smKYYwwVPZyMK2LCirIi2WY25tZZW0IU7GYe1ASGCe4= diff --git a/main.go b/main.go index cbd095d..5d60435 100644 --- a/main.go +++ b/main.go @@ -333,6 +333,7 @@ func runTUI(workingDirectory string, stashedOnly bool) error { cfg.ShowAllFiles = showAllFiles cfg.GlamourMaxWidth = width cfg.GlamourStyle = style + cfg.EnableMouse = mouse if stashedOnly { cfg.DocumentTypes.Add(ui.StashedDoc, ui.NewsDoc) @@ -341,14 +342,7 @@ func runTUI(workingDirectory string, stashedOnly bool) error { } // Run Bubble Tea program - p := ui.NewProgram(cfg) - p.EnterAltScreen() - defer p.ExitAltScreen() - if mouse { - p.EnableMouseCellMotion() - defer p.DisableMouseCellMotion() - } - if err := p.Start(); err != nil { + if err := ui.NewProgram(cfg).Start(); err != nil { return err } diff --git a/ui/config.go b/ui/config.go index 210386f..44b70fe 100644 --- a/ui/config.go +++ b/ui/config.go @@ -8,6 +8,7 @@ type Config struct { HomeDir string `env:"HOME"` GlamourMaxWidth uint GlamourStyle string + EnableMouse bool // Which directory should we start from? WorkingDirectory string diff --git a/ui/ui.go b/ui/ui.go index 1a270cf..c7867a3 100644 --- a/ui/ui.go +++ b/ui/ui.go @@ -51,7 +51,13 @@ func NewProgram(cfg Config) *tea.Program { debug = true } config = cfg - return tea.NewProgram(newModel(cfg)) + + opts := []tea.ProgramOption{tea.WithAltScreen()} + if cfg.EnableMouse { + opts = append(opts, tea.WithMouseCellMotion()) + } + + return tea.NewProgram(newModel(cfg), opts...) } type errMsg struct{ err error }