From 2913dc59fa526e3a57efd1b07b13bbb988e922f9 Mon Sep 17 00:00:00 2001 From: Jumar Macato <16554748+jmacato@users.noreply.github.com> Date: Thu, 11 Jun 2026 00:05:22 +0800 Subject: [PATCH] Map macOS ListItem peer to AXRow instead of AXGroup (#21537) Report AXRow with the AXTableRow subrole so list items are distinguishable from generic panels. --- native/Avalonia.Native/src/OSX/automation.mm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/native/Avalonia.Native/src/OSX/automation.mm b/native/Avalonia.Native/src/OSX/automation.mm index 6fd2cb6218..0f2ae3768c 100644 --- a/native/Avalonia.Native/src/OSX/automation.mm +++ b/native/Avalonia.Native/src/OSX/automation.mm @@ -96,7 +96,7 @@ case AutomationEdit: return NSAccessibilityTextFieldRole; case AutomationHyperlink: return NSAccessibilityLinkRole; case AutomationImage: return NSAccessibilityImageRole; - case AutomationListItem: return NSAccessibilityGroupRole; + case AutomationListItem: return NSAccessibilityRowRole; case AutomationList: return NSAccessibilityListRole; case AutomationMenu: return NSAccessibilityMenuBarRole; case AutomationMenuBar: return NSAccessibilityMenuBarRole; @@ -141,6 +141,7 @@ auto controlType = _peer->GetAutomationControlType(); switch (controlType) { case AutomationList: return @"AXContentList"; + case AutomationListItem: return NSAccessibilityTableRowSubrole; } auto landmarkType = _peer->GetLandmarkType();