diff options
| author | Paul Bütow <1224732+snonux@users.noreply.github.com> | 2025-06-24 00:45:03 +0300 |
|---|---|---|
| committer | Paul Bütow <1224732+snonux@users.noreply.github.com> | 2025-06-24 00:45:03 +0300 |
| commit | 421f60beeb7b813359cdd3d6c197314fa8847870 (patch) | |
| tree | 92ec8cae0fcbefd80b67e9cbab84d74ac11ce0e1 /internal/ui | |
| parent | 42376ab241712e14a540a5e9b94739a34136e7ac (diff) | |
allow navigation during blinking
Diffstat (limited to 'internal/ui')
| -rw-r--r-- | internal/ui/table.go | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/internal/ui/table.go b/internal/ui/table.go index febb8ff..0ba0144 100644 --- a/internal/ui/table.go +++ b/internal/ui/table.go @@ -305,10 +305,18 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { } return m, nil case tea.KeyMsg: - // Ignore all key presses while a task is blinking to avoid - // accidentally modifying another task. + // Only allow navigation while a task row is blinking. This + // prevents accidental modifications to other tasks but still + // lets the user move around the table. if m.blinkID != 0 { - return m, nil + prevRow := m.tbl.Cursor() + prevCol := m.tbl.ColumnCursor() + var cmd tea.Cmd + m.tbl, cmd = m.tbl.Update(msg) + if prevRow != m.tbl.Cursor() || prevCol != m.tbl.ColumnCursor() { + m.updateSelectionHighlight(prevRow, m.tbl.Cursor(), prevCol, m.tbl.ColumnCursor()) + } + return m, cmd } if m.annotating { switch msg.Type { |
