Skip to content

fix(hud): keep all AirPods listening modes visible in the notch HUD - #652

Open
mehmetefeaytas wants to merge 1 commit into
Ebullioscopic:devfrom
mehmetefeaytas:fix/airpods-listening-mode-hud
Open

fix(hud): keep all AirPods listening modes visible in the notch HUD#652
mehmetefeaytas wants to merge 1 commit into
Ebullioscopic:devfrom
mehmetefeaytas:fix/airpods-listening-mode-hud

Conversation

@mehmetefeaytas

@mehmetefeaytas mehmetefeaytas commented Jul 23, 2026

Copy link
Copy Markdown

Problem

When the AirPods listening mode changes, only Transparency (and Off) showed in the notch HUD; Noise Cancellation, Adaptive Audio, and Conversation Awareness stayed hidden behind the notch.

Root cause

In InlineHUD.swift, the trailing mode label used a trailing-aligned Text only for .transparency/.off, and a MarqueeText for the longer modes. MarqueeText is .leading-aligned internally, so those labels hugged the notch edge and were clipped behind it — while the trailing-aligned Text modes stayed visible.

Fix

Render every listening mode with a single trailing-aligned, scaling Text (minimumScaleFactor(0.6), truncationMode(.tail)). All modes now stay visible; long names shrink/truncate instead of scrolling.

Tested on macOS 26.5.2.

Summary by CodeRabbit

  • Bug Fixes
    • Improved Bluetooth listening-mode labels in the Dynamic Island display.
    • Long labels now fit more reliably through adaptive sizing and truncation.
    • Removed scrolling text behavior that could cause labels to clip near the notch.

The listening-mode label used a trailing-aligned Text only for Transparency/Off
and a MarqueeText for the longer modes (Noise Cancellation / Adaptive Audio /
Conversation Awareness). MarqueeText is `.leading`-aligned internally, so those
labels hugged the notch edge and were clipped behind it — only Transparency/Off
stayed visible. Render every mode with a single trailing-aligned, scaling Text
so all listening modes remain on screen.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 1bbad013-94df-4b57-a46a-2706c04c4cc4

📥 Commits

Reviewing files that changed from the base of the PR and between 503606c and 61527e3.

📒 Files selected for processing (1)
  • DynamicIsland/components/Live activities/InlineHUD.swift

📝 Walkthrough

Walkthrough

InlineHUD now displays every Bluetooth listening mode with trailing-aligned text constrained by available width, applying scaling and tail truncation instead of using marquee behavior for longer labels.

Changes

Listening Mode Layout

Layer / File(s) Summary
Constrained listening-mode label rendering
DynamicIsland/components/Live activities/InlineHUD.swift
All Bluetooth listening modes use a trailing-aligned Text label constrained by trailingWidth and listeningModeTextWidth, with scaling and tail truncation replacing the previous marquee branch.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • Ebullioscopic/Atoll#546: Updates the same InlineHUD Bluetooth listening-mode text and width-reservation behavior.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main HUD label visibility fix for AirPods listening modes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Warning

Review ran into problems

🔥 Problems

Git: Failed to clone repository. Please run the @coderabbitai full review command to re-trigger a full review. If the issue persists, set path_filters to include or exclude specific files.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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