Clean up CCC tooltip, truncation, and icon-only content
## Problem/motivation Follow-up to: #3586258+s Parent: #3586298+s **3. Tooltip, Truncation, And Icon-Only Content** **Priority:** High to Medium **Why group these together:** These UI patterns all expose important information through `data-ai-tooltip`, truncation, or visual icons. They should be reviewed as one accessibility pass. Includes: - Replace links in `#markup`. - Add new-tab accessible warnings and `rel`. - Fix CSS-only external-link indicator assumptions. ## Solution ### 3.1 Make tooltip-dependent content available without hover **Files:** - `templates/ai-context-pill-list.html.twig` - `src/AiContextItemListBuilder.php` - `src/Form/AiContextAgentsForm.php` - `src/Entity/AiContextItem.php` **Problem:** Several labels, overflow values, purposes, and descriptions rely on `data-ai-tooltip` or truncation. The site attaches `ai/ai_global`, which adds behavior for `data-ai-tooltip`, so this is not a total absence of accessibility support. However, the static markup is still fragile and should not rely solely on hover/JavaScript for meaningful content. **Recommended fix:** - Add visually hidden full text where visible text is truncated. - Add `aria-label` or `aria-describedby` where appropriate. - Ensure overflow pills such as `+N` expose the full hidden list. - Verify behavior with keyboard navigation and screen readers. ### 3.2 Add accessible names for meaningful icon-only indicators **Files:** - `src/AiContextItemListBuilder.php` - related CSS/icon templates **Problem:** Some type/subcontext indicators are visual icons or empty spans with tooltip text. If the icon conveys meaning, that meaning should be available to assistive technology without requiring hover. **Recommended fix:** - If the icon is decorative, mark it `aria-hidden="true"` and provide nearby text. - If the icon conveys state/type, add visually hidden text or an accessible label. - Keep SVGs `focusable="false"` unless they are interactive. --- ## AI usage - [x] AI assisted issue
issue