[Automation] Fire property-changed events when AutomationId changes at runtime by dimension-zero · Pull Request #21374 · AvaloniaUI/Avalonia (original) (raw)
…t runtime
AutomationElementIdentifiers.AutomationIdProperty was missing, so runtime changes to AutomationProperties.AutomationId never raised UIA_AutomationPropertyChangedEventId on Windows (or the equivalent on macOS). UIA clients that subscribe to property changes would silently receive stale automation IDs.
- Add AutomationIdProperty sentinel to AutomationElementIdentifiers
- Raise the event in ControlAutomationPeer.OwnerPropertyChanged when AutomationProperties.AutomationIdProperty changes
- Add AutomationIdProperty -> UiaPropertyId.AutomationId to the Win32 AutomationNode.s_propertyMap
- Add AutomationPeer_AutomationId to AvnAutomationProperty (avn.idl) and wire it in AvnAutomationPeer.s_propertyMap and automation.mm
- Add unit tests covering runtime AutomationId change notifications
MrJul pushed a commit to MrJul/Avalonia that referenced this pull request
…t runtime (AvaloniaUI#21374)
AutomationElementIdentifiers.AutomationIdProperty was missing, so runtime changes to AutomationProperties.AutomationId never raised UIA_AutomationPropertyChangedEventId on Windows (or the equivalent on macOS). UIA clients that subscribe to property changes would silently receive stale automation IDs.
- Add AutomationIdProperty sentinel to AutomationElementIdentifiers
- Raise the event in ControlAutomationPeer.OwnerPropertyChanged when AutomationProperties.AutomationIdProperty changes
- Add AutomationIdProperty -> UiaPropertyId.AutomationId to the Win32 AutomationNode.s_propertyMap
- Add AutomationPeer_AutomationId to AvnAutomationProperty (avn.idl) and wire it in AvnAutomationPeer.s_propertyMap and automation.mm
- Add unit tests covering runtime AutomationId change notifications
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
[ Show hidden characters]({{ revealButtonHref }})