|
Bugzilla – Full Text Bug Listing |
| Summary: | No UIA event fired when AccessibleName/AccessibleDescription changed. | ||
|---|---|---|---|
| Product: | [Mono] UI Automation | Reporter: | Rui Guo <rguo> |
| Component: | Winforms - UIA | Assignee: | E-mail List <mono-a11y-bugs> |
| Status: | NEW --- | QA Contact: | E-mail List <mono-a11y-qa> |
| Severity: | Normal | ||
| Priority: | P5 - None | ||
| Version: | Unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | Other | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
We know if the AccessibleName property of a component is specified, then the control's UIA Name Property is that value, and similarly, the UIA HelpTextProperty can be the control's AccessibleDescription property. However currently the modification to AccessibleName/AccessibleDescription will not cause a UIA event fired. [Repo & Unit Test] Add following code to any provider test file: [Test] public void AccesiblePropertiesTest () { Control combobox = ...//Some code to retrieve the control instance, such as "GetComboBox ();" if you use this test in ComboBoxProviderTest.cs bridge.ResetEventLists (); combobox.AccessibleName = "A fancy new name"; Assert.AreEqual(1, bridge.GetAutomationPropertyEventCount (AutomationElementIdentifiers.NameProperty.Id), "Expect a name changed event"); combobox.AccessibleDescription = "New discription"; Assert.AreEqual(1, bridge.GetAutomationPropertyEventCount (AutomationElementIdentifiers.HelpTextProperty.Id), "Expect a HelpText changed event"); } [Current & expected result] I expect the unit test passes, however currently there is no event fired. [Root cause & Suggested solution] Currently The is not event fired when Control.Accessible[Name/Description] changed. We need to firstly modify the SWF codebase and fire events for these two properties, and then listen these events in UIA codebase and then fire UIA property changed events. Besides the Control class, other Components which have Accessible[Name/Description] properties includes ToolStripItem and PrintPreiviewDialog. (It makes no sense to me that why among those CommonDialogs, just PrintPreiviewDialog has such properties...)