Skip to content

feat(ui): WebUI modernization PR4 — completion keyboard nav, attachments, sidebar#112

Closed
jkyberneees wants to merge 1 commit into
feat/webui-modernization-3from
feat/webui-modernization-4
Closed

feat(ui): WebUI modernization PR4 — completion keyboard nav, attachments, sidebar#112
jkyberneees wants to merge 1 commit into
feat/webui-modernization-3from
feat/webui-modernization-4

Conversation

@jkyberneees

Copy link
Copy Markdown
Contributor

feat(ui): WebUI modernization PR4 — completion keyboard nav, attachments, sidebar

Fourth PR of the WebUI modernization roadmap (Phase 2c + 2d). Stacked on
#111 (feat/webui-modernization-3).

Input & @-completion (2c):

  • ArrowUp/ArrowDown move the selection (with wrap-around), Enter/Tab
    accept, Esc dismisses. Previously mouse-only with Tab-to-accept, and
    Enter would send the prompt even with the popup open.
  • role="listbox"/role="option" + aria-selected kept in sync for keyboard,
    mouse, and hover selection.
  • Attachments: per-file error chips (oversized/unreadable/over the 10 MB
    total cap) that dismiss on click or after 6s, replacing toast-only
    errors; total-size meter ("1.2 MB / 10 MB", amber when above 8 MB)
    rendered next to the chips.

Sessions sidebar (2d):

  • Session items restructured: the whole body is a real
    (keyboard-focusable, Enter opens) with separate real rename/delete
    buttons. Row actions now reveal on hover, focus-within, and always on
    touch devices (hover: none) - they were hover-only and unreachable by
    keyboard/touch.
  • Rename is an inline edit in the task label (Enter commits, Esc cancels,
    blur commits) - window.prompt() is gone.
  • Incremental list updates: loadSessions runs after every turn and used
    to re-render the whole list (stealing scroll position and hover state);
    it now skips the re-render when the session signature is unchanged and
    only syncs the active marker.
  • Skeleton rows while the list loads on cold start.

Verified: node --check, go vet, full cmd/odek test suite.

…nts, sidebar

Fourth PR of the WebUI modernization roadmap (Phase 2c + 2d). Stacked on
#111 (feat/webui-modernization-3).

Input & @-completion (2c):
- ArrowUp/ArrowDown move the selection (with wrap-around), Enter/Tab
  accept, Esc dismisses. Previously mouse-only with Tab-to-accept, and
  Enter would send the prompt even with the popup open.
- role="listbox"/role="option" + aria-selected kept in sync for keyboard,
  mouse, and hover selection.
- Attachments: per-file error chips (oversized/unreadable/over the 10 MB
  total cap) that dismiss on click or after 6s, replacing toast-only
  errors; total-size meter ("1.2 MB / 10 MB", amber when above 8 MB)
  rendered next to the chips.

Sessions sidebar (2d):
- Session items restructured: the whole body is a real <button>
  (keyboard-focusable, Enter opens) with separate real rename/delete
  buttons. Row actions now reveal on hover, focus-within, and always on
  touch devices (hover: none) - they were hover-only and unreachable by
  keyboard/touch.
- Rename is an inline edit in the task label (Enter commits, Esc cancels,
  blur commits) - window.prompt() is gone.
- Incremental list updates: loadSessions runs after every turn and used
  to re-render the whole list (stealing scroll position and hover state);
  it now skips the re-render when the session signature is unchanged and
  only syncs the active marker.
- Skeleton rows while the list loads on cold start.

Verified: node --check, go vet, full cmd/odek test suite.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 26, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
odek 7cee1d5 Commit Preview URL

Branch Preview URL
Jul 26 2026, 12:46 PM

@jkyberneees

Copy link
Copy Markdown
Contributor Author

Superseded: this stacked chain was merged directly into main (merge commit 9ae5e46), together with #109. All changes from this PR are on main.

@jkyberneees
jkyberneees deleted the feat/webui-modernization-4 branch July 26, 2026 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant