If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

a11y: binding exception dialog needs some accessibility changes

RESOLVED FIXED

Status

Core Graveyard
XForms
--
enhancement
RESOLVED FIXED
12 years ago
a year ago

People

(Reporter: aaronr, Assigned: surkov)

Tracking

({fixed1.8.0.8, fixed1.8.1.1})

Trunk
x86
All
fixed1.8.0.8, fixed1.8.1.1
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Reporter)

Description

12 years ago
The binding exception dialog does allow for keyboard navigation to the XUL label that opens the javascript window, but if you tab to it and press enter, nothing happens.

I also think (and AaronL please tell me if I am wrong) that this label needs some visual indicator that this xul label is something that can be clicked on (or tabbed to and hit enter on it).  Like underlining it, or making it into a button?  To a color blind user, for example, I doubt that they could easily tell that this is different from the other text in the dialog.
(Reporter)

Comment 1

12 years ago
Created attachment 203175 [details]
testcase that causes binding exception dialog

Comment 2

12 years ago
(In reply to comment #0)
> I also think (and AaronL please tell me if I am wrong) that this label needs
> some visual indicator that this xul label is something that can be clicked on
> (or tabbed to and hit enter on it).  Like underlining it, or making it into a
> button?  To a color blind user, for example, I doubt that they could easily
> tell that this is different from the other text in the dialog.

It uses the class "text-link", shouldn't that be enough?
(Assignee)

Comment 3

12 years ago
Bug 309246 is still open. I think it's better to move discussions there.

Comment 4

12 years ago
Bug 309246 fixes the keyboard navigation issue, only the visual indication for SeaMonkey is left. It may just me a SeaMonkey specific class?
(Assignee)

Comment 5

12 years ago
(In reply to comment #4)
> Bug 309246 fixes the keyboard navigation issue, only the visual indication for
> SeaMonkey is left. It may just me a SeaMonkey specific class?
> 

Allan, I belive we shouldn't include something special to xforms package for seamonkey supporting. Seamonkey will be supported when bug 310403 will be fixed. I think it's no xforms problem.

Comment 6

12 years ago
(In reply to comment #5)
> Allan, I belive we shouldn't include something special to xforms package for
> seamonkey supporting. Seamonkey will be supported when bug 310403 will be
> fixed. I think it's no xforms problem.

Fine by me. Made this depend on bug 310403.
Depends on: 310403
(Reporter)

Comment 7

12 years ago
(In reply to comment #5)
> (In reply to comment #4)
> > Bug 309246 fixes the keyboard navigation issue, only the visual indication for
> > SeaMonkey is left. It may just me a SeaMonkey specific class?
> > 
> 
> Allan, I belive we shouldn't include something special to xforms package for
> seamonkey supporting. Seamonkey will be supported when bug 310403 will be
> fixed. I think it's no xforms problem.
> 

I think that it is still a problem for accessibility.  I was saying that on Seamonkey that even a person with 20/20 vision couldn't tell where the link was to open the JS console because the text was the same color as all the other text.  On Firefox, someone with poor vision or color blindness would be in the same boat as the Seamonkey user.  But if AaronL says we can let it go, then I'm also fine with it.

Comment 8

12 years ago
label class="text-link" should underline it. Isn't that happening?

If it's activatable I think it should be a button or a link -- a link if it goes to another page, a button for an action.
(Assignee)

Comment 9

12 years ago
The neil's nits (as allan saids it would be nice if they will be fixed):

Nit: } doesn't line up with function

>+      <label class="descr2 text-link" onclick="toJSConsole()">
While I'm nitpicking, it's neater to write "toJSConsole();"

What is issue of the bug? Only the visual indication for
SeaMonkey or something more? If problem only for seamonkey then I'm able to file a patch for bug 310403. But there is problem who can review the patch?

Updated

12 years ago
Severity: normal → enhancement

Updated

12 years ago
Assignee: aaronr → xforms
(Assignee)

Updated

11 years ago
Blocks: 337249
(Assignee)

Comment 10

11 years ago
Created attachment 228971 [details] [diff] [review]
nei's nits

(In reply to comment #9)
> The neil's nits (as allan saids it would be nice if they will be fixed):
> 
> Nit: } doesn't line up with function
> 
> >+      <label class="descr2 text-link" onclick="toJSConsole()">
> While I'm nitpicking, it's neater to write "toJSConsole();"
> 

Fix of nei's nits.

Now label has visual indication on seamonkey after bug 310403 fix.
Assignee: xforms → surkov.alexander
Status: NEW → ASSIGNED
Attachment #228971 - Flags: review?(aaronr)
(Assignee)

Updated

11 years ago
Attachment #228971 - Flags: review?(doronr)
(Reporter)

Comment 11

11 years ago
Comment on attachment 228971 [details] [diff] [review]
nei's nits

>Index: extensions/xforms/resources/content/bindingex.xul
>===================================================================
>RCS file: /cvsroot/mozilla/extensions/xforms/resources/content/bindingex.xul,v
>retrieving revision 1.4
>diff -u -8 -p -r1.4 bindingex.xul
>--- extensions/xforms/resources/content/bindingex.xul	30 Mar 2006 07:57:07 -0000	1.4
>+++ extensions/xforms/resources/content/bindingex.xul	12 Jul 2006 17:27:21 -0000
>@@ -41,37 +41,38 @@
> <dialog id="XFormsBindingDialog"
>         minwidth="40em"
>         title="&xforms.bindingdialog.title;"
>         buttons="accept"
>         xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>         onload="document.documentElement.getButton('accept').focus();">
> 
>   <script type="application/x-javascript">
>-    function toJSConsole() {
>+    function openJSConsole() {
>       var js = Components.classes["@mozilla.org/appshell/window-mediator;1"]
>                          .getService(Components.interfaces.nsIWindowMediator)
>                          .getMostRecentWindow('global:console');
>-      if (js)
>+      if (js) {
>         js.focus();
>-      else
>+      } else {
>         Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
>                   .getService(Components.interfaces.nsIWindowWatcher)
>                   .openWindow(null, "chrome://global/content/console.xul",
>                               "", "all,dialog=no", null);
>       }
>+    }
>   </script>
> 
>   <hbox flex="1">
>     <hbox align="start">
>       <image class="alert-icon spaced"/>
>     </hbox>
> 
>     <vbox>
>       <description class="header descr1">
>         &xforms.bindingdialog.description1;
>       </description>
>-      <label class="descr2 text-link" onclick="toJSConsole()">
>+      <label class="descr2 text-link" onclick="openJSConsole()">
>         &xforms.bindingdialog.description2;
>       </label>
>     </vbox>
>   </hbox>
> </dialog>
Attachment #228971 - Flags: review?(aaronr) → review+
Comment on attachment 228971 [details] [diff] [review]
nei's nits

>Index: extensions/xforms/resources/content/bindingex.xul
>===================================================================
>RCS file: /cvsroot/mozilla/extensions/xforms/resources/content/bindingex.xul,v
>retrieving revision 1.4
>diff -u -8 -p -r1.4 bindingex.xul
>--- extensions/xforms/resources/content/bindingex.xul	30 Mar 2006 07:57:07 -0000	1.4
>+++ extensions/xforms/resources/content/bindingex.xul	12 Jul 2006 17:27:21 -0000
>@@ -41,37 +41,38 @@
> <dialog id="XFormsBindingDialog"
>         minwidth="40em"
>         title="&xforms.bindingdialog.title;"
>         buttons="accept"
>         xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>         onload="document.documentElement.getButton('accept').focus();">
> 
>   <script type="application/x-javascript">
>-    function toJSConsole() {
>+    function openJSConsole() {
>       var js = Components.classes["@mozilla.org/appshell/window-mediator;1"]
>                          .getService(Components.interfaces.nsIWindowMediator)
>                          .getMostRecentWindow('global:console');
>-      if (js)
>+      if (js) {
>         js.focus();
>-      else
>+      } else {
>         Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
>                   .getService(Components.interfaces.nsIWindowWatcher)
>                   .openWindow(null, "chrome://global/content/console.xul",
>                               "", "all,dialog=no", null);
>       }
>+    }
>   </script>
> 
>   <hbox flex="1">
>     <hbox align="start">
>       <image class="alert-icon spaced"/>
>     </hbox>
> 
>     <vbox>
>       <description class="header descr1">
>         &xforms.bindingdialog.description1;
>       </description>
>-      <label class="descr2 text-link" onclick="toJSConsole()">
>+      <label class="descr2 text-link" onclick="openJSConsole()">
>         &xforms.bindingdialog.description2;
>       </label>
>     </vbox>
>   </hbox>
> </dialog>
Attachment #228971 - Flags: review?(doronr) → review+
(Reporter)

Comment 13

11 years ago
checked into trunk for surkov
Status: ASSIGNED → RESOLVED
Last Resolved: 11 years ago
Resolution: --- → FIXED
Whiteboard: xf-to-branch
(Reporter)

Comment 14

11 years ago
checked into 1.8.0 branch on 2006/09/21
Keywords: fixed1.8.0.8
(Reporter)

Comment 15

11 years ago
checked into 1.8 branch on 2006/11/21
Keywords: fixed1.8.1.1
Whiteboard: xf-to-branch
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.