Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .jules/palette.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

## 2024-05-18 - Chat Navigation Accessibility
**Learning:** Icon-only navigation buttons in the chat area relied solely on `title` attributes, which can be inconsistent for screen reader users and often lead to raw icon ligature text (e.g., "vertical align top") being announced if the inner icon span isn't explicitly hidden from the accessibility tree.
**Action:** Consistently apply `aria-label`s to the parent button element and `aria-hidden="true"` to inner icon spans (like `material-symbols-outlined`) across all similar floating action button groups.
16 changes: 8 additions & 8 deletions webui/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -104,17 +104,17 @@

<!-- Chat Navigation Buttons (floating over chat area) -->
<div id="chat-nav-buttons" aria-label="Chat navigation" x-cloak>
<button class="btn-icon-action" title="Scroll to top" @click="$store.chatNavigation.scrollToTop()">
<span class="material-symbols-outlined">vertical_align_top</span>
<button class="btn-icon-action" aria-label="Scroll to top" title="Scroll to top" @click="$store.chatNavigation.scrollToTop()">
<span class="material-symbols-outlined" aria-hidden="true">vertical_align_top</span>
</button>
<button class="btn-icon-action" title="Previous user message" @click="$store.chatNavigation.scrollToPrevUserMessage()">
<span class="material-symbols-outlined">keyboard_arrow_up</span>
<button class="btn-icon-action" aria-label="Previous user message" title="Previous user message" @click="$store.chatNavigation.scrollToPrevUserMessage()">
<span class="material-symbols-outlined" aria-hidden="true">keyboard_arrow_up</span>
</button>
<button class="btn-icon-action" title="Next user message" @click="$store.chatNavigation.scrollToNextUserMessage()">
<span class="material-symbols-outlined">keyboard_arrow_down</span>
<button class="btn-icon-action" aria-label="Next user message" title="Next user message" @click="$store.chatNavigation.scrollToNextUserMessage()">
<span class="material-symbols-outlined" aria-hidden="true">keyboard_arrow_down</span>
</button>
<button class="btn-icon-action" title="Scroll to bottom" @click="$store.chatNavigation.scrollToBottom()">
<span class="material-symbols-outlined">vertical_align_bottom</span>
<button class="btn-icon-action" aria-label="Scroll to bottom" title="Scroll to bottom" @click="$store.chatNavigation.scrollToBottom()">
<span class="material-symbols-outlined" aria-hidden="true">vertical_align_bottom</span>
</button>
</div>
</div>
Expand Down