viewport_patch.go

 1package viewport
 2
 3import (
 4	"github.com/charmbracelet/bubbles/viewport"
 5	tea "github.com/charmbracelet/bubbletea"
 6)
 7
 8// ViewportBubble represents a viewport component.
 9type ViewportBubble struct {
10	Viewport *viewport.Model
11}
12
13// SetSize implements common.Component.
14func (v *ViewportBubble) SetSize(width, height int) {
15	v.Viewport.Width = width
16	v.Viewport.Height = height
17}
18
19// Init implements tea.Model.
20func (v *ViewportBubble) Init() tea.Cmd {
21	return nil
22}
23
24// Update implements tea.Model.
25func (v *ViewportBubble) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
26	vp, cmd := v.Viewport.Update(msg)
27	v.Viewport = &vp
28	return v, cmd
29}
30
31// View implements tea.Model.
32func (v *ViewportBubble) View() string {
33	return v.Viewport.View()
34}