Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

[Bug]: iOS Live Activity compact status text wraps onto two lines when another Live Activity shares the Dynamic Island

Đang mở Phù hợp với người mới
#15,682 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
84/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
ios, typescript
Lĩnh vực
mobile

Hướng nghiên cứu

Bắt đầu trong apps/mobile/src/widgets/AgentActivity.tsx tại compactTrailing Text và so sánh các modifier của nó với các text của banner, watch card và row. Tái hiện bằng cách để AgentActivity chia sẻ Dynamic Island với một Live Activity khác, sau đó xác minh rằng các trạng thái đang hoạt động, đã hoàn tất, phê duyệt, nhập liệu và các trạng thái compact khác vẫn nằm trên một dòng và thu nhỏ hoặc sử dụng dạng ngắn hơn phù hợp.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug via-triage
Before submitting
  • I searched existing issues and did not find a duplicate.
  • I included enough detail to reproduce or investigate the problem.
Area

apps/mobile

Steps to reproduce
  1. Enable Live Activities in the T3 Code iOS app and start an agent turn so the AgentActivity Live Activity appears.
  2. Start a Live Activity from any other app (e.g. a podcast/now-playing, timer, or sports activity) so the Dynamic Island shows two activities side by side.
  3. Look at the T3 pill while the agent is running ("1 active"), then again after it finishes ("Done").
Expected behavior

The compact trailing status stays on one line, e.g. T3 1 active / T3 Done. If space is tight, it should shrink or fall back to a shorter form, not break across lines.

Actual behavior

The compact trailing label wraps onto a second line:

  • 1 active shows as 1 above act…
  • Done breaks in the middle of the word, as Don above e

The T3 pill still has plenty of empty horizontal space, so the label is wrapping inside a narrow trailing slot, not because the pill is full.

Likely cause

apps/mobile/src/widgets/AgentActivity.tsx (main @ 4ee6bfd5), compactTrailing:

compactTrailing: (
  <Text modifiers={[font({ weight: "semibold", size: 11 }), foregroundStyle(tint)]}>
    {attentionRow
      ? attentionRow.phase === "waiting_for_approval"
        ? "Approval"
        : "Input"
      : activeLabel}
  </Text>
),

This is the only status Text in the file without lineLimit(1); the banner, watch card, and row texts all have it. When iOS gives the trailing region a narrow proposed width (as it does when the island is shared), SwiftUI wraps the text instead of truncating it.

Suggested fix
  • Add lineLimit(1) to the compactTrailing text, plus minimumScaleFactor(...) or fixedSize() so it shrinks or takes its natural width instead of truncating or wrapping.
  • Optionally use a terser compact label: the count only (1) while running, and the existing phase glyph (checkmark / cross) for Done/Failed, matching what minimal already does. Approval / Input / Out of date can hit the same problem.
Impact

Cosmetic issue

Version or commit

T3 Code iOS 2.0.0; code reference main @ 4ee6bfd5

Environment

iPhone 18 Pro Max, iOS 27.2. Reproduced whenever a second app's Live Activity shares the Dynamic Island.

Screenshots

Running — 1 active wraps to 1 / act… (the other app's activity is blurred):

1 active wraps

Finished — Done breaks as Don / e:

Done wraps

Ngôn ngữ chính
TypeScript
Star
24.8k
Fork
6.4k
Merge trung bình
10 giờ 8 phút
Pull request đã merge (30 ngày)
323

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của pingdotgg/t3code

Tất cả issue của pingdotgg/t3code

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.