Alex,

There aren't any consumers for the relation change events I'm aware of.
This was purely an observation from the perspective of the browser that the
relations might change and we don't have any way to update.

Some other properties that might change where it's not obvious to me what
event should fire:

IAccessible2::locale (e.g. if the author dynamically adds a lang="fr"
attribute to an element).
IAccessibleComponent::foreground
IAccessibleComponent::background
IAccessibleImage::description

Again, these are all theoretical - they're just observations of cases we
encounter in the code where we can't fire an event.

As for HIDE/SHOW as a workaround, wouldn't that have the effect of causing
the AT to query the whole subtree? That can be quite expensive, it'd be
nice to have some solution that makes it clear that only one node has
changed.

- Dominic

On Tue, Feb 24, 2015 at 8:12 AM, Alexander Surkov <
surkov.alexan...@gmail.com> wrote:

> Thanks, Pete.
>
> Hi, Dominic. Are there any consumers for relation change events? From what
> I can tell I was never requested for it by AT vendor iirc.
>
> ATK has generic property changed event and I find it nice, but MSAA has
> separate events for most of properties already [1], and I don't see a good
> way to implement it in IAccessible2 because of Windows event model.
> IAccessible2 has text changed event by newText/oldText hack but it doesn't
> really work for out process AT.
>
> We might have OBJECT_CHANGED event, but SHOW/HIDE bundle looks like
> appropriate workaround. I'm curious though to hear AT vendors on it.
>
> Thanks.
> Alex.
>
> [1]
> https://msdn.microsoft.com/en-us/library/windows/desktop/dd318066%28v=vs.85%29.aspx
>
>
> On Mon, Feb 23, 2015 at 11:51 AM, Pete Brunet <p...@a11ysoft.com> wrote:
>
>>  Alex, et al.  FYI
>>
>> On 2/23/15 10:29 AM, bugzilla-dae...@bugs.linuxfoundation.org wrote:
>>
>> https://bugs.linuxfoundation.org/show_bug.cgi?id=1263
>>
>>              Bug #: 1263
>>            Summary: Need event to fire when a relation is added/removed
>>            Product: Accessibility
>>            Version: rc
>>           Platform: All
>>         OS/Version: All
>>             Status: NEW
>>           Severity: normal
>>           Priority: P2
>>          Component: IAccessible2
>>         AssignedTo: p...@a11ysoft.com
>>         ReportedBy: dmazz...@google.com
>>     Classification: Unclassified
>>
>>
>> I work on Google Chrome's accessibility support. There doesn't seem to be a
>> good event to fire on Windows when an IAccessible2 object's relations change,
>> i.e. when IAccessible2::relations() would return a different answer than 
>> before
>> - assuming that no other property of the object happens to change.
>>
>> There might be a tiny handful of other object properties that could change 
>> that
>> don't have a specific associated event, it might be worth auditing the API to
>> see.
>>
>> The remaining cases are somewhat obscure, so I wonder if instead or in 
>> addition
>> it might make sense to have an event meaning that *any* property of an object
>> changed without specifying which one. As another use for this, if lots of
>> properties of an object change at once (name, description, role, etc.) a 
>> server
>> could fire just one event instead of multiple.
>>
>>
>>
>> --
>> *Pete Brunet*
>>
>>  a11ysoft - Accessibility Architecture and Development
>> (512) 467-4706 (work), (512) 689-4155 (cell)
>> Skype: pete.brunet
>> IM: ptbrunet (AOL, Google), ptbru...@live.com (MSN)
>> http://www.a11ysoft.com/about/
>> Ionosphere: WS4G
>>
>> _______________________________________________
>> Accessibility-ia2 mailing list
>> Accessibility-ia2@lists.linuxfoundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2
>>
>>
>
_______________________________________________
Accessibility-ia2 mailing list
Accessibility-ia2@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/accessibility-ia2

Reply via email to