feat: add AT-SPI accessible names for widgets in dde-session-shell - #80
feat: add AT-SPI accessible names for widgets in dde-session-shell#80MyLeeJiEun wants to merge 2 commits into
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: MyLeeJiEun The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Hi @MyLeeJiEun. Thanks for your PR. I'm waiting for a linuxdeepin member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Reviewer's GuideThe PR improves AT-SPI coverage in dde-session-shell by adding paired setObjectName()/setAccessibleName() calls for 24 previously unnamed widget instances across 14 C++ files, and adds a YAML registry containing expected accessibility metadata for automated or manual QA validation. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
0cf1e03 to
a804f3b
Compare
Add setObjectName() and setAccessibleName() calls for widget instances that were missing AT-SPI accessibility support. Scanned 162 C++ source files, found 78 widget instances: - 54 already had accessible names (78.3% baseline coverage) - 24 gaps identified and fixed (89.7% post-fix coverage) Modified files: - lighter-greeter/lightergreeter.cpp: UserCbx, SessionCbx, SwitchGreeter, LoginBtn, Avatar - plugins/examples/.../full_managed_login_widget.cpp: UserNameEdit, TokenEdit, DisMissButton - plugins/login-gesture/resetDialog/gesturedialog.cpp: ConfirmButton - plugins/login-gesture/src/modulewidget.cpp: StartEnrollBtn - src/session-widgets/auth_password.cpp: IconButton - src/session-widgets/auth_single.cpp: IconButton_2 - src/session-widgets/auth_widget.cpp: UserAvatar - src/session-widgets/sfa_widget.cpp: RetryButton - src/session-widgets/user_widget.cpp: Avatar_2 - src/session-widgets/userpanel.cpp: Avatar_3 - src/widgets/controlwidget.cpp: SessionBtn, ContextMenu - src/widgets/multiuserswarningview.cpp: UserList - src/widgets/passworderrortipswidget.cpp: DetailTextEdit - src/widgets/userbutton.cpp: UserAvatar_2 All names follow PascalCase convention derived from variable names. QButtonGroup (non-widget) and pointer aliases to already-named widgets were intentionally skipped.
a804f3b to
08b8a70
Compare
…DDE-198) Per the DDE-198 AT-SPI anchor rule change, migrate the test baseline from setAccessibleName to setObjectName as the locator anchor: - Remove 48 PR-added setAccessibleName() calls from source: under the new rules setAccessibleName is for screen-reader semantics only, not test anchors. setObjectName() remains as the AT-SPI locator. - Preserve all 52 PR-added setObjectName() calls (new test anchors). - Preserve master-existing setAccessibleName() calls (screen-reader semantics, not test anchors). - Regenerate tests/at/spi/expected_names.yaml with the updated merge_names script, migrating the anchor field from accessible_name to object_name (accessible_id). 74 anchored widgets, each with a verified setObjectName() call in source. Co-Authored-By: AT-SPI Completion Agent <agent@deepin.org>
39936e8 to
9773864
Compare
Summary
Add
setObjectName()andsetAccessibleName()calls for widget instances in dde-session-shell that were missing AT-SPI accessibility support.Changes
Scanned 162 C++ source files using AST analysis (libclang), found 78 widget instances:
Modified files (14 source files + 1 test artifact)
lighter-greeter/lightergreeter.cppplugins/.../full_managed_login_widget.cppplugins/login-gesture/resetDialog/gesturedialog.cppplugins/login-gesture/src/modulewidget.cppsrc/session-widgets/auth_password.cppsrc/session-widgets/auth_single.cppsrc/session-widgets/auth_widget.cppsrc/session-widgets/sfa_widget.cppsrc/session-widgets/user_widget.cppsrc/session-widgets/userpanel.cppsrc/widgets/controlwidget.cppsrc/widgets/multiuserswarningview.cppsrc/widgets/passworderrortipswidget.cppsrc/widgets/userbutton.cppSkipped (intentionally)
QButtonGroupinstances (notQWidgetsubclasses — nosetAccessibleName())m_currentSelectedBtn)Naming Convention
All names follow PascalCase convention derived from variable names (strip
m_prefix, convert to PascalCase). Duplicate names across files are suffixed with_2,_3, etc.Test Artifacts
tests/at/spi/expected_names.yaml— complete name registry for QA validationChecklist
setObjectName()/setAccessibleName()calls added — no existing code modifiedSummary by Sourcery
Improve AT-SPI discoverability by assigning consistent names to session shell widgets and tracking the expected accessibility naming registry.
New Features:
Enhancements:
Tests:
Chores: