From 99cac8539338ea23c9ab7dc4959ae7361cb59e6d Mon Sep 17 00:00:00 2001 From: Lorien Hu Date: Thu, 16 Jul 2015 17:34:52 -0400 Subject: [PATCH] Bug 1171995 - Part 4: Handle proxies in mozAccessible accessibilityAttributeNames r=tbsaunde --- accessible/mac/mozAccessible.mm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/accessible/mac/mozAccessible.mm b/accessible/mac/mozAccessible.mm index d4cfe4b1dd8..b61f1a26bcd 100644 --- a/accessible/mac/mozAccessible.mm +++ b/accessible/mac/mozAccessible.mm @@ -274,7 +274,8 @@ ConvertToNSArray(nsTArray& aArray) // if we're expired, we don't support any attributes. AccessibleWrap* accWrap = [self getGeckoAccessible]; - if (!accWrap) + ProxyAccessible* proxy = [self getProxyAccessible]; + if (!accWrap && !proxy) return [NSArray array]; static NSArray* generalAttributes = nil; @@ -333,11 +334,11 @@ ConvertToNSArray(nsTArray& aArray) NSArray* objectAttributes = generalAttributes; - if (accWrap->IsTable()) + if ((accWrap && accWrap->IsTable()) || (proxy && proxy->IsTable())) objectAttributes = tableAttrs; - else if (accWrap->IsTableRow()) + else if ((accWrap && accWrap->IsTableRow()) || (proxy && proxy->IsTableRow())) objectAttributes = tableRowAttrs; - else if (accWrap->IsTableCell()) + else if ((accWrap && accWrap->IsTableCell()) || (proxy && proxy->IsTableCell())) objectAttributes = tableCellAttrs; NSArray* additionalAttributes = [self additionalAccessibilityAttributeNames];