Skip to content

Poor visibility of selected task for colorblind users #10726

@zakmandhro

Description

@zakmandhro

Problem

The current TUI task selection interface relies heavily on color to indicate which tasks are selected or active. This creates accessibility issues for colorblind users who may have difficulty distinguishing between selected and unselected tasks.

Additionally, many popular VS Code themes make the selected task difference almost invisible, creating usability issues even for users without color vision deficiency.

Impact

Users with color vision deficiency (affecting ~8% of men and ~0.5% of women) may:

  • Have trouble identifying which tasks are currently selected
  • Experience reduced usability of the interactive task selection interface
  • Need to rely on workarounds or disable the TUI entirely

Users with certain terminal themes (especially popular VS Code themes) also experience poor visibility of task selection states.

Proposed Solutions

Option 1: Default improvement (recommended)
Use color inversion (reverse video) for selected tasks instead of relying solely on color changes. This provides high contrast that works for all users regardless of color vision or theme choice.

Option 2: Configurable option
Add a --colorblind flag or configuration setting that enables enhanced visibility modes for users who need them.

Implementation Notes

  • Color inversion maintains visual appeal while being universally accessible
  • This follows established accessibility patterns used in many terminal applications
  • The change would be backward compatible and shouldn't affect existing workflows
  • Works well across different terminal themes and color schemes

Additional Context

This improvement would benefit not just colorblind users, but also users with:

  • Low contrast displays
  • Terminal themes with poor color differentiation
  • Visual impairments requiring high contrast
  • Popular VS Code themes that reduce color contrast

Would the maintainers prefer the default improvement approach or a configurable option?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions