ui: surface imported-source indicators and read-only actions #449

Closed
opened 2026-05-13 18:43:22 +00:00 by barrettruth · 0 comments
Owner

Parent: #123
Depends on: #444, #445, #448

Problem

Imported Google rows appear everywhere normal tasks appear, but they are read-only and may carry source attributes such as [private], [free], or provider/source names. The UI needs a generic pattern that explains the source without overloading dense surfaces.

Decisions

  • Use generic provider/source indicators rather than custom one-off UI per provider.
  • Task detail can show fuller source and attribute information.
  • Dense surfaces such as calendar blocks, queue rows, kanban cards, and search results should use compact markers/icons/short labels, with exact treatment decided by visual iteration.
  • Attempted edits should show warning/yellow read-only feedback using existing warning palette/tokens rather than introducing a new color.
  • Google Calendar imported tasks expose open in Google Calendar wherever task details/actions are available.
  • Transparent/free events should render more quietly in calendar surfaces while remaining present everywhere.
  • Hidden-detail private events should show private event and a [private] attribute.

Acceptance criteria

  • Shared source-indicator rendering can represent provider label, source kind, read-only state, and compact attributes.
  • Imported Google Tasks and Google Calendar rows use the same basic indicator/read-only warning pattern.
  • Task detail exposes enough source information and includes open in Google Calendar for Calendar imports with an htmlLink.
  • Calendar, queue, kanban, and search surfaces have compact indicators that do not break dense layout.
  • Read-only attempts from visible UI paths show a warning/status message.
  • Transparent/free events are visually distinct enough in Calendar view without being hidden.
  • Visual treatment is manually smoke-tested in dense desktop/mobile and light/dark states.

Non-goals

  • Do not block the sync engine on perfect icon choices; iterate manually during this issue.
  • Do not add attachment/attendee/reminder UI here.
Parent: #123 Depends on: #444, #445, #448 ## Problem Imported Google rows appear everywhere normal tasks appear, but they are read-only and may carry source attributes such as `[private]`, `[free]`, or provider/source names. The UI needs a generic pattern that explains the source without overloading dense surfaces. ## Decisions - Use generic provider/source indicators rather than custom one-off UI per provider. - Task detail can show fuller source and attribute information. - Dense surfaces such as calendar blocks, queue rows, kanban cards, and search results should use compact markers/icons/short labels, with exact treatment decided by visual iteration. - Attempted edits should show warning/yellow read-only feedback using existing warning palette/tokens rather than introducing a new color. - Google Calendar imported tasks expose `open in Google Calendar` wherever task details/actions are available. - Transparent/free events should render more quietly in calendar surfaces while remaining present everywhere. - Hidden-detail private events should show `private event` and a `[private]` attribute. ## Acceptance criteria - Shared source-indicator rendering can represent provider label, source kind, read-only state, and compact attributes. - Imported Google Tasks and Google Calendar rows use the same basic indicator/read-only warning pattern. - Task detail exposes enough source information and includes `open in Google Calendar` for Calendar imports with an `htmlLink`. - Calendar, queue, kanban, and search surfaces have compact indicators that do not break dense layout. - Read-only attempts from visible UI paths show a warning/status message. - Transparent/free events are visually distinct enough in Calendar view without being hidden. - Visual treatment is manually smoke-tested in dense desktop/mobile and light/dark states. ## Non-goals - Do not block the sync engine on perfect icon choices; iterate manually during this issue. - Do not add attachment/attendee/reminder UI here.
barrettruth added this to the v0.1.0 milestone 2026-05-13 18:43:22 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/delta#449
No description provided.