You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2010/03/12 23:27:34 UTC

svn commit: r922440 - in /tapestry/tapestry5/trunk/tapestry-core/src: main/java/org/apache/tapestry5/internal/services/ main/resources/org/apache/tapestry5/ test/java/org/apache/tapestry5/internal/services/

Author: hlship
Date: Fri Mar 12 22:27:33 2010
New Revision: 922440

URL: http://svn.apache.org/viewvc?rev=922440&view=rev
Log:
TAP5-994: Field autofocus should be done via Tapestry.init instead of using $ function

Modified:
    tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderSupportImpl.java
    tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/tapestry.js
    tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/RenderSupportImplTest.java

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderSupportImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderSupportImpl.java?rev=922440&r1=922439&r2=922440&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderSupportImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/RenderSupportImpl.java Fri Mar 12 22:27:33 2010
@@ -168,9 +168,7 @@ public class RenderSupportImpl implement
     public void commit()
     {
         if (focusFieldId != null)
-        {
-            addScript("$('%s').activate();", focusFieldId);
-        }
+            javascriptSupport.addInitializerCall("activate", focusFieldId);
     }
 
     public void addStylesheetLink(Asset stylesheet, String media)

Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/tapestry.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/tapestry.js?rev=922440&r1=922439&r2=922440&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/tapestry.js (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/resources/org/apache/tapestry5/tapestry.js Fri Mar 12 22:27:33 2010
@@ -519,7 +519,7 @@ Element.addMethods( {
 	 * makes it as far as a (visible) FORM element.
 	 * 
 	 * Note that this only applies to the CSS definition of visible; it doesn't
-	 * check that the element is scolled into view.
+	 * check that the element is scrolled into view.
 	 * 
 	 * @param element
 	 *            to search up from
@@ -749,6 +749,11 @@ Element.addMethods( [ 'INPUT', 'SELECT',
 /** Container of functions that may be invoked by the Tapestry.init() function. */
 Tapestry.Initializer = {
 
+	/** Make the given field the active field (focus on the field). */
+	activate : function(id) {
+		$(id).activate();
+	},
+
 	ajaxFormLoop : function(spec) {
 		var rowInjector = $(spec.rowInjector);
 
@@ -867,7 +872,6 @@ Tapestry.Initializer = {
 			zoneObject.updateFromURL(newUrl);
 		});
 	},
-
 	/**
 	 * Keys in the masterSpec are ids of field control elements. Value is a list
 	 * of validation specs. Each validation spec is a 2 or 3 element array.

Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/RenderSupportImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/RenderSupportImplTest.java?rev=922440&r1=922439&r2=922440&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/RenderSupportImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry5/internal/services/RenderSupportImplTest.java Fri Mar 12 22:27:33 2010
@@ -22,12 +22,9 @@ import org.apache.tapestry5.ioc.services
 import org.apache.tapestry5.json.JSONArray;
 import org.apache.tapestry5.json.JSONObject;
 import org.apache.tapestry5.services.AssetSource;
-import org.apache.tapestry5.services.ClientInfrastructure;
 import org.apache.tapestry5.services.javascript.JavascriptSupport;
 import org.testng.annotations.Test;
 
-import java.util.Arrays;
-
 public class RenderSupportImplTest extends InternalBaseTestCase
 {
     private static final String ASSET_URL = "/assets/foo/bar.pdf";
@@ -168,7 +165,7 @@ public class RenderSupportImplTest exten
     {
         JavascriptSupport js = mockJavascriptSupport();
 
-        js.addScript("$('%s').activate();", "foo");
+        js.addInitializerCall("activate", "foo");
 
         replay();
 
@@ -186,7 +183,7 @@ public class RenderSupportImplTest exten
     {
         JavascriptSupport js = mockJavascriptSupport();
 
-        js.addScript("$('%s').activate();", "foo");
+        js.addInitializerCall("activate", "foo");
 
         replay();
 
@@ -205,7 +202,7 @@ public class RenderSupportImplTest exten
     {
         JavascriptSupport js = mockJavascriptSupport();
 
-        js.addScript("$('%s').activate();", "bar");
+        js.addInitializerCall("activate", "bar");
 
         replay();