poll

package
v0.0.0-...-ef14c93 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2026 License: MIT Imports: 13 Imported by: 0

Documentation

Overview

Package poll demonstrates pkg/poll driving auto-refresh of a list, with keyed items so the user's cursor survives every refresh even as the underlying set churns.

The synthetic data is a "task runner" — a fixed set of jobs whose status, age, and ordering change on every tick (some flip from running to succeeded, occasionally a new job appears or finishes off the list). Each job carries a stable Key, so SetKeyedItems lets the list snap back to the previously-selected job by ID after the swap.

Keys: p pauses/resumes the ticker, r refreshes immediately, +/- adjust the cadence, /↑↓ all behave normally on the list. The pane title reflects "refreshed Xs ago" or "paused" so the user can see the ticker's state without leaving the screen.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(t theme.Theme) screen.Screen

New returns the poll demo screen.

Types

type Screen

type Screen struct {
	// contains filtered or unexported fields
}

func (*Screen) Help

func (s *Screen) Help() []key.Binding

func (*Screen) Init

func (s *Screen) Init() tea.Cmd

func (*Screen) IsCapturingKeys

func (s *Screen) IsCapturingKeys() bool

func (*Screen) Layout

func (s *Screen) Layout() layout.Node

func (*Screen) OnEnter

func (s *Screen) OnEnter(any) tea.Cmd

func (*Screen) SetTheme

func (s *Screen) SetTheme(t theme.Theme)

func (*Screen) Title

func (s *Screen) Title() string

func (*Screen) Update

func (s *Screen) Update(msg tea.Msg) (screen.Screen, tea.Cmd)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL