]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 977137: Comment and Preview tabs need accessibility markup
authorByron Jones <bjones@mozilla.com>
Wed, 5 Mar 2014 14:45:38 +0000 (22:45 +0800)
committerByron Jones <bjones@mozilla.com>
Wed, 5 Mar 2014 14:45:38 +0000 (22:45 +0800)
r=dkl, a=justdave

js/field.js
template/en/default/bug/comment.html.tmpl

index 670c70a86c6d171499a97876a46ad00947a9c742..51fd1fe86e5cec4b1732aec6f793a5ef12bd160a 100644 (file)
@@ -994,16 +994,22 @@ function show_comment_preview(bug_id) {
     var Dom = YAHOO.util.Dom;
     var comment = document.getElementById('comment');
     var preview = document.getElementById('comment_preview');
+
     if (!comment || !preview) return;
     if (Dom.hasClass('comment_preview_tab', 'active_comment_tab')) return;
 
     preview.style.width = (comment.clientWidth - 4) + 'px';
     preview.style.height = comment.offsetHeight + 'px';
 
+    var comment_tab = document.getElementById('comment_tab');
     Dom.addClass(comment, 'bz_default_hidden');
-    Dom.removeClass('comment_tab', 'active_comment_tab');
+    Dom.removeClass(comment_tab, 'active_comment_tab');
+    comment_tab.setAttribute('aria-selected', 'false');
+
+    var preview_tab = document.getElementById('comment_preview_tab');
     Dom.removeClass(preview, 'bz_default_hidden');
-    Dom.addClass('comment_preview_tab', 'active_comment_tab');
+    Dom.addClass(preview_tab, 'active_comment_tab');
+    preview_tab.setAttribute('aria-selected', 'true');
 
     Dom.addClass('comment_preview_error', 'bz_default_hidden');
 
@@ -1054,8 +1060,13 @@ function show_comment_edit() {
     if (!comment || !preview) return;
     if (YAHOO.util.Dom.hasClass(comment, 'active_comment_tab')) return;
 
+    var preview_tab = document.getElementById('comment_preview_tab');
     YAHOO.util.Dom.addClass(preview, 'bz_default_hidden');
-    YAHOO.util.Dom.removeClass('comment_preview_tab', 'active_comment_tab');
+    YAHOO.util.Dom.removeClass(preview_tab, 'active_comment_tab');
+    preview_tab.setAttribute('aria-selected', 'false');
+
+    var comment_tab = document.getElementById('comment_tab');
     YAHOO.util.Dom.removeClass(comment, 'bz_default_hidden');
-    YAHOO.util.Dom.addClass('comment_tab', 'active_comment_tab');
+    YAHOO.util.Dom.addClass(comment_tab, 'active_comment_tab');
+    comment_tab.setAttribute('aria-selected', 'true');
 }
index e30801963474e518331d7c3c7d97bf5901314a2b..96cbb63ed1fd44512754618977cd2684994e05c8 100644 (file)
   #%]
 
 [% IF feature_enabled('jsonrpc') %]
-  <div id="comment_tabs">
+  <div id="comment_tabs" role="tablist">
     <div id="comment_tab" class="comment_tab active_comment_tab"
+          role="tab" aria-selected="true"
           onclick="show_comment_edit()">Comment</div>
     <div id="comment_preview_tab" class="comment_tab"
+          role="tab" aria-selected="false"
           onclick="show_comment_preview([% bug.id FILTER none %])">Preview</div>
   </div>
 [% END %]