Skip to content

🎨 Palette: ν–₯μƒλœ ν…Œμ΄λΈ” μ•‘μ…˜ λ²„νŠΌ μ ‘κ·Όμ„± (ARIA 라벨 μΆ”κ°€) - #207

Closed
seonghobae wants to merge 1 commit into
mainfrom
palette-ux-aria-label-2258705990650996589
Closed

🎨 Palette: ν–₯μƒλœ ν…Œμ΄λΈ” μ•‘μ…˜ λ²„νŠΌ μ ‘κ·Όμ„± (ARIA 라벨 μΆ”κ°€)#207
seonghobae wants to merge 1 commit into
mainfrom
palette-ux-aria-label-2258705990650996589

Conversation

@seonghobae

@seonghobae seonghobae commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator

Superseded by #162.

- Added an optional `ariaLabel` parameter to the `createLink` and `createActionButton` functions in `demo.js`.
- Implemented dynamically generated `aria-label` attributes for repetitive table buttons (Details, Status JSON, Open viewer) that include the relevant document's filename, greatly enhancing screen reader accessibility.
- Implemented logic to temporarily update the `aria-label` of the 'Details' button to "Loading..." when its visual state is asynchronously loading, ensuring state changes are properly conveyed, and restoring it afterward.
- Appended a UX journal entry documenting this asynchronous `aria-label` loading state pattern.
Copilot AI review requested due to automatic review settings July 25, 2026 22:43
@google-labs-jules

Copy link
Copy Markdown

πŸ‘‹ Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a πŸ‘€ emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

데λͺ¨ λ·°μ–΄μ˜ μž‘μ—… νžˆμŠ€ν† λ¦¬ ν…Œμ΄λΈ”μ—μ„œ λ°˜λ³΅λ˜λŠ” μ•‘μ…˜ λ²„νŠΌ/링크λ₯Ό μŠ€ν¬λ¦°λ¦¬λ”κ°€ ꡬ뢄할 수 μžˆλ„λ‘ μ»¨ν…μŠ€νŠΈ(파일λͺ…)λ₯Ό ν¬ν•¨ν•œ 동적 aria-label을 μΆ”κ°€ν•˜κ³ , 비동기 λ‘œλ”© μƒνƒœ λ™μ•ˆ aria-label도 ν•¨κ»˜ κ°±μ‹ /λ³΅μ›ν•˜λ„λ‘ κ°œμ„ ν•œ PRμž…λ‹ˆλ‹€.

Changes:

  • ν…Œμ΄λΈ” μ•‘μ…˜ λ²„νŠΌ/링크에 μ»¨ν…μŠ€νŠΈλ³„ aria-label(파일λͺ… 포함) μΆ”κ°€
  • β€œDetails” 비동기 λ™μž‘μ—μ„œ λ‘œλ”© μƒνƒœ μ§„μž…/ν•΄μ œ μ‹œ aria-label도 μž„μ‹œ μ—…λ°μ΄νŠΈ ν›„ 원볡
  • λ³€κ²½ 사항을 CHANGELOG 및 Jules νŒ”λ ˆνŠΈ λ¬Έμ„œμ— 기둝

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
src/main/resources/static/assets/viewer/demo.js ν…Œμ΄λΈ” μ•‘μ…˜μ— 파일λͺ… 기반 aria-label을 λΆ€μ—¬ν•˜κ³ , λ‘œλ”© μƒνƒœμ—μ„œ aria-label을 μž„μ‹œ λ³€κ²½ ν›„ 볡원
CHANGELOG.md μ ‘κ·Όμ„± κ°œμ„  사항을 Unreleased λ³€κ²½ 내역에 μΆ”κ°€
.jules/palette.md 반볡 μ•‘μ…˜ λ²„νŠΌμ˜ μ»¨ν…μŠ€νŠΈλ³„ ARIA 라벨 및 λ‘œλ”© μƒνƒœ μ‹œ 라벨 κ°±μ‹ /볡원에 λŒ€ν•œ ν•™μŠ΅/μ•‘μ…˜ 기둝 μΆ”κ°€

πŸ’‘ Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CHANGELOG.md
Comment on lines +51 to +54

### Fixed
- ν™”λ©΄ νŒλ…κΈ°λ₯Ό μ‚¬μš©ν•˜λŠ” μ‚¬μš©μžλ₯Ό μœ„ν•΄ 반볡적인 ν…Œμ΄λΈ” μ•‘μ…˜ λ²„νŠΌ("μ„ΈλΆ€ 정보", "μƒνƒœ JSON", "λ·°μ–΄ μ—΄κΈ°")에 파일λͺ…이 ν¬ν•¨λœ 동적인 `aria-label` 속성을 μ œκ³΅ν•˜μ—¬ 접근성을 κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€.
- "μ„ΈλΆ€ 정보" λ²„νŠΌκ³Ό 같은 비동기 μ•‘μ…˜ λ²„νŠΌμ΄ "λ‘œλ”© 쀑..." μƒνƒœλ‘œ 변경될 λ•Œ `aria-label`도 μž„μ‹œλ‘œ μ—…λ°μ΄νŠΈν•˜μ—¬ 슀크린 리더 μ‚¬μš©μžκ°€ λ‘œλ”© μƒνƒœλ₯Ό 인식할 수 μžˆλ„λ‘ ν•˜κ³ , μž‘μ—… μ™„λ£Œ ν›„ μ›λž˜ 라벨둜 μ˜¬λ°”λ₯΄κ²Œ λ³΅μ›λ˜λ„λ‘ μˆ˜μ •ν–ˆμŠ΅λ‹ˆλ‹€.
Comment thread .jules/palette.md
**Learning:** Adding explicit loading and disabled states to table action buttons that invoke asynchronous processes helps prevent redundant API calls and visually assures the user that their request is being handled.
**Action:** Consistently apply `disabled` state and `Loading...` text changes to inline table action buttons linked to async workflows, and carefully preserve underlying DOM structures with `Array.from(btn.childNodes)` during the loading cycle to avoid rendering regressions.

## 2024-07-25 - Context-Specific ARIA Labels and Asynchronous Loading States
@seonghobae seonghobae closed this Aug 4, 2026
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.

2 participants