You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mc...@apache.org on 2011/04/07 00:19:49 UTC

svn commit: r1089648 - in /myfaces/trinidad/trunk: trinidad-examples/trinidad-demo/src/main/webapp/ trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/ trinidad-impl/src/main/resources/META-INF/adf/images/ trinidad-imp...

Author: mcooper
Date: Wed Apr  6 22:19:48 2011
New Revision: 1089648

URL: http://svn.apache.org/viewvc?rev=1089648&view=rev
Log:
TRINIDAD-2082 hidden labels don't always render in screen reader mode

Thanks to Dave Robinson for the patch.

Added:
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.ico   (with props)
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.png   (with props)
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/touchicon.png   (with props)
Modified:
    myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/src/main/webapp/index.jspx
    myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/HiddenLabelUtils.java
    myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/agent/webkit312.xml
    myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectManyCheckbox-minimalSaf-golden.xml
    myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-minimalSaf-golden.xml
    myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-simple-minimalSaf-golden.xml

Modified: myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/src/main/webapp/index.jspx
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/src/main/webapp/index.jspx?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/src/main/webapp/index.jspx (original)
+++ myfaces/trinidad/trunk/trinidad-examples/trinidad-demo/src/main/webapp/index.jspx Wed Apr  6 22:19:48 2011
@@ -24,6 +24,14 @@
   <jsp:directive.page contentType="text/html;charset=utf-8"/>
   <f:view>
     <tr:document title="Apache Trinidad Demo Index" stateSaving="client">
+       <f:facet name="metaContainer">
+         <tr:group id="metaContainer">
+           <tr:outputText id="metaLink1" escape="false"
+                          value='&lt;link rel="icon" type="image/png" href="#{facesContext.externalContext.requestContextPath}/adf/images/favicon.png">'/>
+           <tr:outputText id="metaLink2" escape="false"
+                          value='&lt;link rel="apple-touch-icon" href="#{facesContext.externalContext.requestContextPath}/adf/images/touchicon.png">'/>
+         </tr:group>
+       </f:facet>
        <tr:form>
        
         <tr:panelPage>

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/HiddenLabelUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/HiddenLabelUtils.java?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/HiddenLabelUtils.java (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/core/xhtml/HiddenLabelUtils.java Wed Apr  6 22:19:48 2011
@@ -39,6 +39,12 @@ public class HiddenLabelUtils
     if (XhtmlRenderer.isInaccessibleMode(arc))
       return false;
 
+    // Though the method is named "supports" hidden labels, it's really being called and used in
+    // the sense of "do we want to render" hidden labels, and if this method returns false no label
+    // is written at all. We always want labels in screen reader mode, so return true.
+    if (XhtmlRenderer.isScreenReaderMode(arc))
+      return true;
+
     // For this switch - and for getting the major version - tunnel
     // to CoreRenderingContext
     TrinidadAgent agent = ((CoreRenderingContext) arc).getTrinidadAgent();
@@ -55,23 +61,19 @@ public class HiddenLabelUtils
           if (agent.getCapability(TrinidadAgent.CAP_IS_JDEV_VE) != null)
             return false;
 
-          // IE 5 and 6 do.
+          // IE 5+ supports hidden labels
           return true;
         }
 
-        // IE on the Mac doesn't support the label hack
+        // IE on the Mac (which got as far as IE5 before Mac IE was dropped) doesn't support hidden labels
         return false;
 
-      // Mozilla does support the label hack
+      // Mozilla, Safari, and Chrome supports hidden labels
       case GECKO:
-        return true;
-
-      // Safari does support the label hack
       case SAFARI:
         return true;
 
-      // Assume everyone else doesn't.
-      case NETSCAPE:
+      // Assume everyone else doesn't (important for the many mobile agents)
       default:
         return false;
     }

Added: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.ico
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.ico?rev=1089648&view=auto
==============================================================================
Binary file - no diff available.

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.ico
------------------------------------------------------------------------------
    svn:executable = *

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.ico
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.png
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.png?rev=1089648&view=auto
==============================================================================
Binary file - no diff available.

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/favicon.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/touchicon.png
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/touchicon.png?rev=1089648&view=auto
==============================================================================
Binary file - no diff available.

Propchange: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/adf/images/touchicon.png
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Modified: myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/agent/webkit312.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/agent/webkit312.xml?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/agent/webkit312.xml (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/main/resources/META-INF/agent/webkit312.xml Wed Apr  6 22:19:48 2011
@@ -21,4 +21,5 @@
 <capabilityData xmlns="http://myfaces.apache.org/trinidad/agent/capabilities">
   <capability name="accessKeys" value="true"/>
   <capability name="partialRendering" value="true"/>
+  <capability name="-adfinternal-fieldset" value="true"/>  
 </capabilityData>

Modified: myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectManyCheckbox-minimalSaf-golden.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectManyCheckbox-minimalSaf-golden.xml?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectManyCheckbox-minimalSaf-golden.xml (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectManyCheckbox-minimalSaf-golden.xml Wed Apr  6 22:19:48 2011
@@ -2059,53 +2059,63 @@
                  title="test-shortDesc"
                 >
               
-              <input
-                   id="mainId:_0"
-                   name="mainId"
-                   type="checkbox"
-                   value="0"
+              <fieldset
+                   style="border:none;margin:0px;padding:0px;"
                   >
                 
-              </input>
-              <label
-                   for="mainId:_0"
-                  >
-                item2
-              </label>
-              <br
-                  >
-                
-              </br>
-              <input
-                   id="mainId:_1"
-                   name="mainId"
-                   type="checkbox"
-                   value="1"
-                  >
-                
-              </input>
-              <label
-                   for="mainId:_1"
-                  >
-                item4
-              </label>
-              <br
-                  >
-                
-              </br>
-              <input
-                   id="mainId:_2"
-                   name="mainId"
-                   type="checkbox"
-                   value="2"
-                  >
-                
-              </input>
-              <label
-                   for="mainId:_2"
-                  >
-                item8
-              </label>
+                <legend
+                     class="p_OraHiddenLabel"
+                    >
+                  test-shortDesc
+                </legend>
+                <input
+                     id="mainId:_0"
+                     name="mainId"
+                     type="checkbox"
+                     value="0"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_0"
+                    >
+                  item2
+                </label>
+                <br
+                    >
+                  
+                </br>
+                <input
+                     id="mainId:_1"
+                     name="mainId"
+                     type="checkbox"
+                     value="1"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_1"
+                    >
+                  item4
+                </label>
+                <br
+                    >
+                  
+                </br>
+                <input
+                     id="mainId:_2"
+                     name="mainId"
+                     type="checkbox"
+                     value="2"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_2"
+                    >
+                  item8
+                </label>
+              </fieldset>
             </span>
           </td>
         </tr>

Modified: myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-minimalSaf-golden.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-minimalSaf-golden.xml?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-minimalSaf-golden.xml (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-minimalSaf-golden.xml Wed Apr  6 22:19:48 2011
@@ -2120,53 +2120,63 @@
                  title="test-shortDesc"
                 >
               
-              <input
-                   id="mainId:_0"
-                   name="mainId"
-                   type="radio"
-                   value="0"
+              <fieldset
+                   style="border:none;margin:0px;padding:0px;"
                   >
                 
-              </input>
-              <label
-                   for="mainId:_0"
-                  >
-                item2
-              </label>
-              <br
-                  >
-                
-              </br>
-              <input
-                   id="mainId:_1"
-                   name="mainId"
-                   type="radio"
-                   value="1"
-                  >
-                
-              </input>
-              <label
-                   for="mainId:_1"
-                  >
-                item4
-              </label>
-              <br
-                  >
-                
-              </br>
-              <input
-                   id="mainId:_2"
-                   name="mainId"
-                   type="radio"
-                   value="2"
-                  >
-                
-              </input>
-              <label
-                   for="mainId:_2"
-                  >
-                item8
-              </label>
+                <legend
+                     class="p_OraHiddenLabel"
+                    >
+                  test-shortDesc
+                </legend>
+                <input
+                     id="mainId:_0"
+                     name="mainId"
+                     type="radio"
+                     value="0"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_0"
+                    >
+                  item2
+                </label>
+                <br
+                    >
+                  
+                </br>
+                <input
+                     id="mainId:_1"
+                     name="mainId"
+                     type="radio"
+                     value="1"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_1"
+                    >
+                  item4
+                </label>
+                <br
+                    >
+                  
+                </br>
+                <input
+                     id="mainId:_2"
+                     name="mainId"
+                     type="radio"
+                     value="2"
+                    >
+                  
+                </input>
+                <label
+                     for="mainId:_2"
+                    >
+                  item8
+                </label>
+              </fieldset>
             </span>
           </td>
         </tr>

Modified: myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-simple-minimalSaf-golden.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-simple-minimalSaf-golden.xml?rev=1089648&r1=1089647&r2=1089648&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-simple-minimalSaf-golden.xml (original)
+++ myfaces/trinidad/trunk/trinidad-impl/src/test/resources/org/apache/myfaces/trinidadinternal/renderkit/golden/selectOneRadio-simple-minimalSaf-golden.xml Wed Apr  6 22:19:48 2011
@@ -871,53 +871,63 @@
              title="test-shortDesc"
             >
           
-          <input
-               id="mainId:_0"
-               name="mainId"
-               type="radio"
-               value="0"
+          <fieldset
+               style="border:none;margin:0px;padding:0px;"
               >
             
-          </input>
-          <label
-               for="mainId:_0"
-              >
-            item2
-          </label>
-          <br
-              >
-            
-          </br>
-          <input
-               id="mainId:_1"
-               name="mainId"
-               type="radio"
-               value="1"
-              >
-            
-          </input>
-          <label
-               for="mainId:_1"
-              >
-            item4
-          </label>
-          <br
-              >
-            
-          </br>
-          <input
-               id="mainId:_2"
-               name="mainId"
-               type="radio"
-               value="2"
-              >
-            
-          </input>
-          <label
-               for="mainId:_2"
-              >
-            item8
-          </label>
+            <legend
+                 class="p_OraHiddenLabel"
+                >
+              test-shortDesc
+            </legend>
+            <input
+                 id="mainId:_0"
+                 name="mainId"
+                 type="radio"
+                 value="0"
+                >
+              
+            </input>
+            <label
+                 for="mainId:_0"
+                >
+              item2
+            </label>
+            <br
+                >
+              
+            </br>
+            <input
+                 id="mainId:_1"
+                 name="mainId"
+                 type="radio"
+                 value="1"
+                >
+              
+            </input>
+            <label
+                 for="mainId:_1"
+                >
+              item4
+            </label>
+            <br
+                >
+              
+            </br>
+            <input
+                 id="mainId:_2"
+                 name="mainId"
+                 type="radio"
+                 value="2"
+                >
+              
+            </input>
+            <label
+                 for="mainId:_2"
+                >
+              item8
+            </label>
+          </fieldset>
         </span>
       </span>
 <!--AttributeTest[styleClass,null]-->