<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>180866</bug_id>
          
          <creation_ts>2017-12-15 08:59:01 -0800</creation_ts>
          <short_desc>AX: macOS VoiceOver doesn&apos;t announce when details element is expanded when using role group</short_desc>
          <delta_ts>2018-05-29 23:31:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>Safari 11</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.11</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anika Henke">anika.henke</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>n_wang</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1382165</commentid>
    <comment_count>0</comment_count>
    <who name="Anika Henke">anika.henke</who>
    <bug_when>2017-12-15 08:59:01 -0800</bug_when>
    <thetext>When you expand a details element which has the ARIA role &quot;group&quot; or access one which is already expanded, it wrongly announces that it is collapsed in VoiceOver on OS X 11.

Steps to reproduce:
1. Activate VoiceOver on OS X
2. Open http://jsbin.com/cequcu in Safari
3. Navigate to the first details element (&quot;Open this&quot;)
4. Hit the space bar to open the element

Result:
VoiceOver says &quot;Open this, collapsed, summary&quot;.

Expected:
VoiceOver should say &quot;Open this, expanded, summary&quot; like it does in the second example (which doesn&apos;t include the group role).

Although the group role is the default implicit role of the details element [http://w3c.github.io/html/interactive-elements.html#elementdef-details] and it is recommended not to use it in such a case [http://w3c.github.io/html/dom.html#do-not-set], it should also not make the element behave any differently.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1382166</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-12-15 09:00:39 -0800</bug_when>
    <thetext>&lt;rdar://problem/36074338&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428314</commentid>
    <comment_count>2</comment_count>
      <attachid>341546</attachid>
    <who name="Nan Wang">n_wang</who>
    <bug_when>2018-05-29 18:34:46 -0700</bug_when>
    <thetext>Created attachment 341546
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428317</commentid>
    <comment_count>3</comment_count>
      <attachid>341546</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2018-05-29 19:00:29 -0700</bug_when>
    <thetext>Comment on attachment 341546
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=341546&amp;action=review

&gt; Source/WebCore/accessibility/AccessibilityObject.cpp:-2800
&gt; -            return object.roleValue() == AccessibilityRole::Details;

What if someone made a details element into a landmark. Would we still expose expanded status?

Also is the attribute name exposed in this case?

We might want to list out the allowed roles a details can have and still have an expanded status</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428325</commentid>
    <comment_count>4</comment_count>
    <who name="Nan Wang">n_wang</who>
    <bug_when>2018-05-29 19:59:02 -0700</bug_when>
    <thetext>(In reply to chris fleizach from comment #3)
&gt; Comment on attachment 341546 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=341546&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityObject.cpp:-2800
&gt; &gt; -            return object.roleValue() == AccessibilityRole::Details;
&gt; 
&gt; What if someone made a details element into a landmark. Would we still
&gt; expose expanded status?

Yes I think so.

&gt; 
&gt; Also is the attribute name exposed in this case?
&gt; 
&gt; We might want to list out the allowed roles a details can have and still
&gt; have an expanded status

I don&apos;t see a list of allowed roles in any spec for details element. Do you have any suggestions? 

Or I can only allow details element with group role for this particular case</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428341</commentid>
    <comment_count>5</comment_count>
      <attachid>341546</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-29 21:01:20 -0700</bug_when>
    <thetext>Comment on attachment 341546
patch

Clearing flags on attachment: 341546

Committed r232285: &lt;https://trac.webkit.org/changeset/232285&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428342</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-05-29 21:01:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428355</commentid>
    <comment_count>7</comment_count>
      <attachid>341546</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2018-05-29 21:44:47 -0700</bug_when>
    <thetext>Comment on attachment 341546
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=341546&amp;action=review

&gt; Source/WebCore/accessibility/AccessibilityObject.cpp:2800
&gt; +            return object.node() &amp;&amp; is&lt;HTMLDetailsElement&gt;(object.node());

No need to do a null check if using is&lt;&gt;, which returns false for null. So it would be better to just write:

    return is&lt;HTMLDetailsElement&gt;(object.node());</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428365</commentid>
    <comment_count>8</comment_count>
    <who name="Nan Wang">n_wang</who>
    <bug_when>2018-05-29 23:31:11 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #7)
&gt; Comment on attachment 341546 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=341546&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/accessibility/AccessibilityObject.cpp:2800
&gt; &gt; +            return object.node() &amp;&amp; is&lt;HTMLDetailsElement&gt;(object.node());
&gt; 
&gt; No need to do a null check if using is&lt;&gt;, which returns false for null. So
&gt; it would be better to just write:
&gt; 
&gt;     return is&lt;HTMLDetailsElement&gt;(object.node());

Ok updated
https://trac.webkit.org/changeset/232287/</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>341546</attachid>
            <date>2018-05-29 18:34:46 -0700</date>
            <delta_ts>2018-05-29 21:01:20 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>4337</size>
            <attacher name="Nan Wang">n_wang</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIzMjI4MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE4LTA1LTI5ICBOYW4gV2Fu
ZyAgPG5fd2FuZ0BhcHBsZS5jb20+CisKKyAgICAgICAgQVg6IG1hY09TIFZvaWNlT3ZlciBkb2Vz
bid0IGFubm91bmNlIHdoZW4gZGV0YWlscyBlbGVtZW50IGlzIGV4cGFuZGVkIHdoZW4gdXNpbmcg
cm9sZSBncm91cAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTgwODY2CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNjA3NDMzOD4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZSBzaG91bGQgdXNlIGlzPEhU
TUxEZXRhaWxzRWxlbWVudD4gdG8gY2hlY2sgZm9yIHRoZSBkZXRhaWxzIHBhcmVudCBpbnN0ZWFk
CisgICAgICAgIG9mIHVzaW5nIHRoZSByb2xlLgorCisgICAgICAgIEFkZGVkIHRlc3QgY2FzZXMg
dG8gdGhlIGV4aXN0aW5nIHRlc3QuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2li
aWxpdHlPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eU9iamVjdDo6
aXNFeHBhbmRlZCBjb25zdCk6CisKIDIwMTgtMDUtMjkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5A
YXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIGNvbnNpc3RlbmN5IGNoZWNrIGJldHdlZW4gVVJM
IGFuZCBDRlVSTApJbmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmls
aXR5T2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5
L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCShyZXZpc2lvbiAyMzIyNTkpCisrKyBTb3VyY2UvV2Vi
Q29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0yNzk3LDcgKzI3OTcsNyBAQCBib29sIEFjY2Vzc2liaWxpdHlPYmplY3Q6OmlzRXhwYW5k
ZWQoKSBjCiAgICAgLy8gU3VtbWFyeSBlbGVtZW50IHNob3VsZCB1c2UgaXRzIGRldGFpbHMgcGFy
ZW50J3MgZXhwYW5kZWQgc3RhdHVzLgogICAgIGlmIChpc1N1bW1hcnkoKSkgewogICAgICAgICBp
ZiAoY29uc3QgQWNjZXNzaWJpbGl0eU9iamVjdCogcGFyZW50ID0gQWNjZXNzaWJpbGl0eU9iamVj
dDo6bWF0Y2hlZFBhcmVudCgqdGhpcywgZmFsc2UsIFtdIChjb25zdCBBY2Nlc3NpYmlsaXR5T2Jq
ZWN0JiBvYmplY3QpIHsKLSAgICAgICAgICAgIHJldHVybiBvYmplY3Qucm9sZVZhbHVlKCkgPT0g
QWNjZXNzaWJpbGl0eVJvbGU6OkRldGFpbHM7CisgICAgICAgICAgICByZXR1cm4gb2JqZWN0Lm5v
ZGUoKSAmJiBpczxIVE1MRGV0YWlsc0VsZW1lbnQ+KG9iamVjdC5ub2RlKCkpOwogICAgICAgICB9
KSkKICAgICAgICAgICAgIHJldHVybiBwYXJlbnQtPmlzRXhwYW5kZWQoKTsKICAgICB9CkluZGV4
OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCShyZXZpc2lvbiAyMzIyNTkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wNS0yOSAgTmFuIFdhbmcgIDxuX3dhbmdAYXBw
bGUuY29tPgorCisgICAgICAgIEFYOiBtYWNPUyBWb2ljZU92ZXIgZG9lc24ndCBhbm5vdW5jZSB3
aGVuIGRldGFpbHMgZWxlbWVudCBpcyBleHBhbmRlZCB3aGVuIHVzaW5nIHJvbGUgZ3JvdXAKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDg2NgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vMzYwNzQzMzg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L21hYy9kZXRhaWxzLXN1bW1h
cnktZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGFjY2Vzc2liaWxpdHkvbWFjL2RldGFpbHMtc3Vt
bWFyeS5odG1sOgorCiAyMDE4LTA1LTI5ICBOYW4gV2FuZyAgPG5fd2FuZ0BhcHBsZS5jb20+CiAK
ICAgICAgICAgQVg6IHNldFZhbHVlIG9uIGNvbnRlbnRlZGl0YWJsZSBzaG91bGQgcHJlc2VydmUg
d2hpdGVzcGFjZQpJbmRleDogTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvZGV0YWlscy1z
dW1tYXJ5LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L21hYy9kZXRhaWxzLXN1bW1hcnktZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAyMzIyNTkpCisr
KyBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9kZXRhaWxzLXN1bW1hcnktZXhwZWN0ZWQu
dHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsOSBAQCBTb21lIG9wZW4gaW5mbwogRGV0YWls
cyBhYm91dCB0aGUgb3BlbiB0b3BpYy4KIAogU29tZSBvcGVuIGluZm8KK1NvbWUgb3BlbiBpbmZv
CitEZXRhaWxzIGFib3V0IHRoZSBvcGVuIHRvcGljLgorCiBUaGlzIHRlc3RzIHNvbWUgYmFzaWMg
YXR0cmlidXRlcyBhYm91dCB0aGUgZGV0YWlscyBlbGVtZW50LgogCiBPbiBzdWNjZXNzLCB5b3Ug
d2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBD
T01QTEVURSIuCkBAIC0yNCw2ICsyNyw4IEBAIFBBU1MgZGV0YWlsczEuaXNFeHBhbmRlZCBpcyB0
cnVlCiBQQVNTIHN1bW1hcnkxLmlzRXhwYW5kZWQgaXMgdHJ1ZQogUEFTUyBkZXRhaWxzMi5zdWJy
b2xlIGlzICdBWFN1YnJvbGU6IEFYRGV0YWlscycKIFBBU1MgZGV0YWlsczIuaXNFeHBhbmRlZCBp
cyBmYWxzZQorUEFTUyBkZXRhaWxzMy5zdWJyb2xlIGlzICdBWFN1YnJvbGU6IEFYQXBwbGljYXRp
b25Hcm91cCcKK1BBU1MgZGV0YWlsczMuaXNFeHBhbmRlZCBpcyB0cnVlCiBSZWNlaXZlZCBBWEV4
cGFuZGVkQ2hhbmdlZCBub3RpZmljYXRpb24gCiBSZWNlaXZlZCBBWEV4cGFuZGVkQ2hhbmdlZCBu
b3RpZmljYXRpb24gCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCkluZGV4OiBMYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9kZXRhaWxzLXN1bW1hcnkuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L21hYy9kZXRhaWxzLXN1bW1hcnkuaHRtbAko
cmV2aXNpb24gMjMyMjU5KQorKysgTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS9tYWMvZGV0YWls
cy1zdW1tYXJ5Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTE1LDYgKzE1LDExIEBACiAgIDxwPkRl
dGFpbHMgYWJvdXQgdGhlIG9wZW4gdG9waWMuPC9wPgogPC9kZXRhaWxzPgogCis8ZGV0YWlscyBv
cGVuIGlkPSJkZXRhaWxzMyIgcm9sZT0iZ3JvdXAiPgorICA8c3VtbWFyeT5Tb21lIG9wZW4gaW5m
bzwvc3VtbWFyeT4KKyAgPHA+RGV0YWlscyBhYm91dCB0aGUgb3BlbiB0b3BpYy48L3A+Cis8L2Rl
dGFpbHM+CisKIDxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgogPGRpdiBpZD0iY29uc29sZSI+PC9k
aXY+CiAKQEAgLTc5LDYgKzg0LDExIEBACiAgICAgICAgIHZhciBkZXRhaWxzMiA9IGFjY2Vzc2li
aWxpdHlDb250cm9sbGVyLmFjY2Vzc2libGVFbGVtZW50QnlJZCgiZGV0YWlsczIiKTsKICAgICAg
ICAgc2hvdWxkQmUoImRldGFpbHMyLnN1YnJvbGUiLCAiJ0FYU3Vicm9sZTogQVhEZXRhaWxzJyIp
OwogICAgICAgICBzaG91bGRCZUZhbHNlKCJkZXRhaWxzMi5pc0V4cGFuZGVkIik7CisKKyAgICAg
ICAgLy8gRXhwYW5kZWQgc3RhdHVzIHNob3VsZCBiZSBjb3JyZWN0IHdoZW4gZGV0YWlsIGhhcyBn
cm91cCByb2xlCisgICAgICAgIHZhciBkZXRhaWxzMyA9IGFjY2Vzc2liaWxpdHlDb250cm9sbGVy
LmFjY2Vzc2libGVFbGVtZW50QnlJZCgiZGV0YWlsczMiKTsKKyAgICAgICAgc2hvdWxkQmUoImRl
dGFpbHMzLnN1YnJvbGUiLCAiJ0FYU3Vicm9sZTogQVhBcHBsaWNhdGlvbkdyb3VwJyIpOworICAg
ICAgICBzaG91bGRCZVRydWUoImRldGFpbHMzLmlzRXhwYW5kZWQiKTsKICAgICB9CiAKIDwvc2Ny
aXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>