The ARIA spec states: "If aria-rowspan is used on an element for which the host language provides an equivalent attribute, user agents must ignore the value of aria-rowspan and instead expose the value of the host language's attribute to assistive technologies." https://rawgit.com/w3c/aria/master/aria/aria.html#aria-rowspan With this in mind, given this test case: <table> <tr> <th id="test" role="columnheader" rowspan="3" aria-rowspan="2">test cell</th> </tr> </table> Shouldn't AXRowIndexRange.length be 3? I'm getting 2.
<rdar://problem/31784254>
Created attachment 308898 [details] Patch
Comment on attachment 308898 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=308898&action=review > Source/WebCore/ChangeLog:9 > + accessible object's renderer is a RenderTableCell. This is consistent with what this would mean that you can't use aria table semantics on <table> and friends right? I understand that native semantics should win, but with the proliferation of <Table> being used to styling rather than data grid purposes, I don't know if this is the right move
(In reply to chris fleizach from comment #3) > Comment on attachment 308898 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=308898&action=review > > > Source/WebCore/ChangeLog:9 > > + accessible object's renderer is a RenderTableCell. This is consistent with what > > this would mean that you can't use aria table semantics on <table> and > friends right? I understand that native semantics should win, but with the > proliferation of <Table> being used to styling rather than data grid > purposes, I don't know if this is the right move It's just for the column span and row span. And I am open to other suggestions.
Comment on attachment 308898 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=308898&action=review >>> Source/WebCore/ChangeLog:9 >>> + accessible object's renderer is a RenderTableCell. This is consistent with what >> >> this would mean that you can't use aria table semantics on <table> and friends right? I understand that native semantics should win, but with the proliferation of <Table> being used to styling rather than data grid purposes, I don't know if this is the right move > > It's just for the column span and row span. And I am open to other suggestions. I would think that ARIA semantics would override the default values <td aria-colspan=2> => 2 <td aria-colspan=2 colspan=3> => 3 <td colspan=3> => 3 <td> => 1
(In reply to chris fleizach from comment #5) > Comment on attachment 308898 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=308898&action=review > > >>> Source/WebCore/ChangeLog:9 > >>> + accessible object's renderer is a RenderTableCell. This is consistent with what > >> > >> this would mean that you can't use aria table semantics on <table> and friends right? I understand that native semantics should win, but with the proliferation of <Table> being used to styling rather than data grid purposes, I don't know if this is the right move > > > > It's just for the column span and row span. And I am open to other suggestions. > > I would think that ARIA semantics would override the default values > > <td aria-colspan=2> => 2 The first one is, I believe, the only one in which I'm not doing what you suggest. So regarding that particular case: What you describe doesn't strike me as what the spec's normative statement is saying. So are you reading it differently? Or are you saying that what is in the spec is a bad idea, and we shouldn't implement it as described in the absence of explicit native host language attributes?
Comment on attachment 308898 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=308898&action=review >>>>> Source/WebCore/ChangeLog:9 >>>>> + accessible object's renderer is a RenderTableCell. This is consistent with what >>>> >>>> this would mean that you can't use aria table semantics on <table> and friends right? I understand that native semantics should win, but with the proliferation of <Table> being used to styling rather than data grid purposes, I don't know if this is the right move >>> >>> It's just for the column span and row span. And I am open to other suggestions. >> >> I would think that ARIA semantics would override the default values >> >> <td aria-colspan=2> => 2 >> <td aria-colspan=2 colspan=3> => 3 >> <td colspan=3> => 3 >> <td> => 1 > > The first one is, I believe, the only one in which I'm not doing what you suggest. So regarding that particular case: What you describe doesn't strike me as what the spec's normative statement is saying. So are you reading it differently? Or are you saying that what is in the spec is a bad idea, and we shouldn't implement it as described in the absence of explicit native host language attributes? I haven't studied the spec in detail, but from a similar example <div required aria-required=false>. -> required == TRUE but <div aria-required=false>. -> required == FALSE To me it seems like we would honor aria attribute the author put over implicit default values
(In reply to chris fleizach from comment #7) > I haven't studied the spec in detail, but from a similar example > > <div required aria-required=false>. -> required == TRUE > but > > <div aria-required=false>. -> required == FALSE > > To me it seems like we would honor aria attribute the author put over > implicit default values OK. I'll do a new patch which does that. Thanks for the review and thoughts on the matter!
Created attachment 308981 [details] Patch
Comment on attachment 308981 [details] Patch Clearing flags on attachment: 308981 Committed r216167: <http://trac.webkit.org/changeset/216167>
All reviewed patches have been landed. Closing bug.