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

Android: only send accessibility-focus-cleared when the node had accessibility focus

Đang mở
#845 0 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
52/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ệ
android, rust
Lĩnh vực
accessibility

Hướng nghiên cứu

Start in Adapter::perform_action, where ACTION_CLEAR_ACCESSIBILITY_FOCUS is handled. Check the node’s accessibility-focus state before sending the cleared event or invalidating the host. Done when repeating the action on a node without focus produces neither effect, while clearing focus from a focused node still works; the issue does not name a test file.

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

Mô tả

Problem

A repeated ACTION_CLEAR_ACCESSIBILITY_FOCUS for a node that no longer holds accessibility focus still sends TYPE_VIEW_ACCESSIBILITY_FOCUS_CLEARED and invalidates the host. Screen readers can send this action more than once while moving focus, which produces a spurious cleared event for a node that was not focused.

Proposed fix

Only emit the event (and invalidate the host) when the node did hold accessibility focus, as a real View does. It is a small change in Adapter::perform_action.

Testing

Tested on a physical realme RMX5032 running Android 16 (API 36) with Google TalkBack 17.1.0 and with BackTalk, in an app using this adapter; swiping through controls behaves normally.

AI disclosure

I used an AI assistant (Claude) to help investigate and write this change. I reviewed the diff and ran the checks and the device testing myself.

I saw that AccessKit no longer accepts external pull requests (#832), so I'm opening an issue instead. If the plan looks reasonable, I'd be glad to send the PR as a member; I have the change ready and can share it however you prefer.

Ngôn ngữ chính
Rust
Star
1.5k
Fork
127
Merge trung bình
2 ngày 10 giờ
Pull request đã merge (30 ngày)
14

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

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 AccessKit/accesskit

Tất cả issue của AccessKit/accesskit

Issue tương tự

Thêm issue về Rust

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.