Skip to content

NXT-20313: WizardPanels: Exclude subtitle from aria-label when noSubtitle is true - #437

Open
hong6316 wants to merge 2 commits into
developfrom
feature/NXT-20313
Open

hong6316 wants to merge 2 commits into
developfrom
feature/NXT-20313

Conversation

@hong6316

@hong6316 hong6316 commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

Checklist

  • I have read and understand the contribution guide
  • A CHANGELOG entry is included
  • At least one test case is included for this feature or bug fix
  • I have run automated testing and it is passed
  • Documentation was added or is not needed
  • This is an API breaking change

Issue Resolved / Feature Added

Fixes an issue where WizardPanels' panel-level aria-label (title + subtitle) interrupts child item TTS during rapid navigation on webOS devices with Audio Guidance enabled.

Resolution

When noSubtitle prop is set to true, the subtitle is now excluded from the computed aria-label in addition to hiding it from the UI.

Problem Detail:
When navigating quickly through items in a WizardPanels (e.g., Wi-Fi network list), the webOS Audio Guidance system prepends the panel's aria-label to every focused child element's TTS text. With {clear: true} on each focus event, the long panel subtitle is spoken repeatedly, cutting off the actual item content (e.g., SSID names) before it can be heard.

TTS Log Example:

tts speak {clear:true, text:"Wi-Fi Connection Connect to the internet... iptime5G_Official not connected"}
tts speak {clear:true, text:"Wi-Fi Connection Connect to the internet... NETGEAR45 not connected"}
(23 calls, each interrupted before SSID is spoken)

Code Change:

  • Modified computed['aria-label'] in WizardPanels.js to check noSubtitle prop
  • When noSubtitle is true, subtitle is excluded from aria-label
  • Added .trim() to handle empty subtitle case

Additional Considerations

Links

NXT-20313

Comments

Enact-DCO-1.0-Signed-off-by: Taeyoung.hong (taeyoung.hong@lge.com)

…s true

When noSubtitle is set to true, the subtitle should be excluded from
the computed aria-label to prevent long panel announcements from
interrupting child item TTS during rapid navigation.

This fixes an issue where webOS Audio Guidance would prepend the panel's
aria-label (title + subtitle) to every focused child element's TTS text,
causing the actual item content (e.g., Wi-Fi SSID names) to be cut off
during rapid 4-way navigation.

Related: WEBOSEVENT-1887

Co-Authored-By: Claude Code <noreply@anthropic.com>
@hong6316 hong6316 changed the title fix(WizardPanels): exclude subtitle from aria-label when noSubtitle is true NXT-20313: WizardPanels: Exclude subtitle from aria-label when noSubtitle is true Sep 15, 2026
- Updated existing test to expect trimmed aria-label
- Added test for noSubtitle=true excluding subtitle from aria-label
- Added test for noSubtitle=false including subtitle in aria-label

Related: WEBOSEVENT-1887

Co-Authored-By: Claude Code <noreply@anthropic.com>
@codecov

codecov Bot commented Sep 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 83.24%. Comparing base (aa7201f) to head (b10aa8a).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #437   +/-   ##
========================================
  Coverage    83.24%   83.24%           
========================================
  Files          155      155           
  Lines         7824     7825    +1     
  Branches      2413     2414    +1     
========================================
+ Hits          6513     6514    +1     
  Misses        1019     1019           
  Partials       292      292           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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