Skip to content

🎨 Palette: 버튼 비동기 작업 시 aria-busy 상태 적용 - #204

Closed
seonghobae wants to merge 1 commit into
mainfrom
palette-ux-aria-busy-8822242771260566231
Closed

🎨 Palette: 버튼 비동기 작업 시 aria-busy 상태 적용#204
seonghobae wants to merge 1 commit into
mainfrom
palette-ux-aria-busy-8822242771260566231

Conversation

@seonghobae

@seonghobae seonghobae commented Jul 25, 2026

Copy link
Copy Markdown
Collaborator

Superseded by #162.

- 비동기 작업 중 화면의 버튼에 명시적인 `aria-busy="true"` 속성을 부여하고, 작업 완료 후 이를 제거합니다.
- 스크린 리더와 같은 보조 기술(Assistive Technologies)이 사용자에게 로딩 중 상태를 인지시킬 수 있도록 접근성을 개선합니다.
- `demo.js`, `viewer.js`의 비동기 호출 요소인 `loadDemoDataBtn`, `retryJobBtn`, `refreshEvidenceBtn`, `submitBtn`, `retryBtn` 등에 적용되었습니다.
@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 review requested due to automatic review settings July 25, 2026 21:06

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

This PR improves the viewer’s client-side accessibility by explicitly marking async-action buttons as busy (aria-busy="true") during in-flight operations and clearing that state when work completes, so assistive technologies can announce loading progress more reliably.

Changes:

  • Add aria-busy="true" + disabled behavior to async buttons in demo.js (load demo data, retry job, refresh KPI evidence, submit document, and history “Details”).
  • Add aria-busy handling for the viewer refresh button in viewer.js during status/bootstrap polling.
  • Document the team learning/action in .jules/palette.md for consistent future application.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
src/main/resources/static/assets/viewer/viewer.js Adds aria-busy state management to the viewer refresh button during polling/loading.
src/main/resources/static/assets/viewer/demo.js Adds aria-busy state management to multiple async-action buttons and restores state in finally.
.jules/palette.md Records the accessibility pattern as a reusable guideline for async buttons.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +214 to 216
el.retryBtn.removeAttribute("aria-busy");
el.retryBtn.disabled = false;
el.retryBtn.textContent = "Refresh";
@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