Skip to content

feat(sidebar): tooltip for the active-session indicator dot#782

Open
navarrotech wants to merge 1 commit into
siteboon:mainfrom
navarrotech:fix/active-session-indicator-tooltip
Open

feat(sidebar): tooltip for the active-session indicator dot#782
navarrotech wants to merge 1 commit into
siteboon:mainfrom
navarrotech:fix/active-session-indicator-tooltip

Conversation

@navarrotech
Copy link
Copy Markdown

@navarrotech navarrotech commented May 24, 2026

Summary

The pulsing green dot to the left of a sidebar session row signals that the session had activity in the last 10 minutes (isActive: diffInMinutes < 10 in src/components/sidebar/utils/utils.ts), but its meaning was undocumented. Users hovering it learn nothing.

This PR adds a translated tooltip and an aria-label so the same information reaches keyboard / screen-reader users.

Implementation notes

  • Uses the existing shared Tooltip component from src/shared/view/ui/Tooltip.tsx. It is portal-positioned, so it is not clipped by the sidebar's scroll container.
  • position="right" keeps the tooltip out of the row, since the dot sits flush against the left edge.
  • The dot now has role="status" and aria-label, so screen readers announce it even though the visual cue is the colour + animation.
  • Translation key tooltips.activeSessionIndicator added to all eight locale files: en, de, it, ja, ko, ru, tr, zh-CN.

Test plan

  • Open a session that was active in the last 10 minutes (pulsing green dot visible). Hover the dot. Tooltip appears explaining the indicator.
  • Switch language via the language selector. Hover again. Tooltip text is translated.
  • Sessions older than 10 minutes do not render the dot (and therefore no tooltip), as before.
  • No regression: pencil / save / cancel / trash row buttons still work as expected on hover.

Summary by CodeRabbit

  • New Features

    • Active session indicator now displays a tooltip showing recent activity status (last 10 minutes).
  • Localization

    • Tooltip translations added in English, German, Italian, Japanese, Korean, Russian, Turkish, and Simplified Chinese.

Review Change Stack

The pulsing green dot next to a session row signals that the session
had activity in the last 10 minutes, but the meaning was undocumented.
Hovering it now shows a translated tooltip, and an aria-label exposes
the same text to screen readers.

Uses the existing shared Tooltip component (portal-positioned, so it
is not clipped by the sidebar overflow). Translation key added to all
eight sidebar locale files (en, de, it, ja, ko, ru, tr, zh-CN).
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 24, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 7421183f-72f5-41f4-bfcf-c98b7c7482ee

📥 Commits

Reviewing files that changed from the base of the PR and between 10f721c and 71f0b15.

📒 Files selected for processing (9)
  • src/components/sidebar/view/subcomponents/SidebarSessionItem.tsx
  • src/i18n/locales/de/sidebar.json
  • src/i18n/locales/en/sidebar.json
  • src/i18n/locales/it/sidebar.json
  • src/i18n/locales/ja/sidebar.json
  • src/i18n/locales/ko/sidebar.json
  • src/i18n/locales/ru/sidebar.json
  • src/i18n/locales/tr/sidebar.json
  • src/i18n/locales/zh-CN/sidebar.json

📝 Walkthrough

Walkthrough

The PR wraps the active session indicator dot in the sidebar with a Tooltip component, adding i18n-backed tooltip text describing a recently active session (last 10 minutes) and an accessibility label. The change includes the component update and translations across eight supported language locales.

Changes

Active Session Indicator Tooltip Enhancement

Layer / File(s) Summary
Active session indicator tooltip implementation
src/components/sidebar/view/subcomponents/SidebarSessionItem.tsx
SidebarSessionItem imports Tooltip and wraps the pulsing dot indicator with a Tooltip component, adding role="status" and an i18n-backed aria-label sourced from tooltips.activeSessionIndicator.
Tooltip translations for all supported locales
src/i18n/locales/en/sidebar.json, src/i18n/locales/de/sidebar.json, src/i18n/locales/it/sidebar.json, src/i18n/locales/ja/sidebar.json, src/i18n/locales/ko/sidebar.json, src/i18n/locales/ru/sidebar.json, src/i18n/locales/tr/sidebar.json, src/i18n/locales/zh-CN/sidebar.json
All eight locale files add a new tooltips.activeSessionIndicator key describing a recently active session (last 10 minutes) in their respective languages.

Suggested reviewers

  • blackmammoth

🐰 A tooltip blooms bright,
Eight tongues whisper "active here,"
Sessions shine light!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat(sidebar): tooltip for the active-session indicator dot' directly and clearly summarizes the main change: adding a tooltip to the active-session indicator in the sidebar component.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@navarrotech
Copy link
Copy Markdown
Author

Testing:
{FFB66687-9962-4EB9-9B67-FDB3A375868D}

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