Browse Source

Fix Android crash populating accessibility node for peers that conditionally hide a provider (#21726)

Co-authored-by: Steven Kirk <grokys@users.noreply.github.com>
pull/21735/head
Mike Goatly 3 months ago
committed by GitHub
parent
commit
121d354af8
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 14
      src/Android/Avalonia.Android/AvaloniaAccessHelper.cs

14
src/Android/Avalonia.Android/AvaloniaAccessHelper.cs

@ -111,19 +111,19 @@ namespace Avalonia.Android
}
};
if (peer is IExpandCollapseProvider)
if (peer.GetProvider<IExpandCollapseProvider>() is not null)
nodeInfoProviders.Add(new ExpandCollapseNodeInfoProvider(this, peer, peerViewId));
if (peer is IInvokeProvider)
if (peer.GetProvider<IInvokeProvider>() is not null)
nodeInfoProviders.Add(new InvokeNodeInfoProvider(this, peer, peerViewId));
if (peer is IRangeValueProvider)
if (peer.GetProvider<IRangeValueProvider>() is not null)
nodeInfoProviders.Add(new RangeValueNodeInfoProvider(this, peer, peerViewId));
if (peer is IScrollProvider)
if (peer.GetProvider<IScrollProvider>() is not null)
nodeInfoProviders.Add(new ScrollNodeInfoProvider(this, peer, peerViewId));
if (peer is ISelectionItemProvider)
if (peer.GetProvider<ISelectionItemProvider>() is not null)
nodeInfoProviders.Add(new SelectionItemNodeInfoProvider(this, peer, peerViewId));
if (peer is IToggleProvider)
if (peer.GetProvider<IToggleProvider>() is not null)
nodeInfoProviders.Add(new ToggleNodeInfoProvider(this, peer, peerViewId));
if (peer is IValueProvider)
if (peer.GetProvider<IValueProvider>() is not null)
nodeInfoProviders.Add(new ValueNodeInfoProvider(this, peer, peerViewId));
}

Loading…
Cancel
Save