You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by aw...@apache.org on 2007/06/20 05:01:17 UTC

svn commit: r548903 - /myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java

Author: awiner
Date: Tue Jun 19 20:01:16 2007
New Revision: 548903

URL: http://svn.apache.org/viewvc?view=rev&rev=548903
Log:
TRINIDAD-69: h:commandButton with Image does not post x y coordinates with Trinidad as default renderer
- We were cancelling the default submit behavior, and going through the submitForm() code
- Now, we just use the default submit behavior.  This means that client-side validation is off for
  "image" h:commandButton, at least for now

Modified:
    myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java

Modified: myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java?view=diff&rev=548903&r1=548902&r2=548903
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/renderkit/htmlBasic/HtmlCommandButtonRenderer.java Tue Jun 19 20:01:16 2007
@@ -71,7 +71,8 @@
     String id = component.getClientId(context);
     writer.writeAttribute("id", id, "id");
     writer.writeAttribute("name", id, null);
-    if (imageSrc != null) 
+    boolean isImage = (imageSrc != null);
+    if (isImage) 
     {
       imageSrc = context.getExternalContext().encodeResourceURL(imageSrc);
       writer.writeAttribute("type", "image", "type");
@@ -84,11 +85,23 @@
     }
     
     RenderingContext arc = RenderingContext.getCurrentInstance();
-    String script = AutoSubmitUtils.getFullPageSubmitScript(
+    String script;
+    // If it's an image, we can't really go through the full-page submit
+    // code - we need to preserve the x/y coordinates.  However,
+    // we do need the "source" parameter to be set
+    if (isImage)
+    {
+      script =  "this.form.source.value='" + id + "';";
+    }
+    else
+    {
+      script = AutoSubmitUtils.getFullPageSubmitScript(
               arc, id, false,
               null/*no event*/,
               null,
               false/* return false*/);
+    }
+
     String onclick = CoreRenderer.toString(attrs.get("onclick"));
     script = XhtmlUtils.getChainedJS(onclick, script, true);