You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2013/06/20 17:07:49 UTC

git commit: Fix 'inputchange' event handling in IE

Updated Branches:
  refs/heads/master fd2fc8b6e -> 2f0cd3324


Fix 'inputchange' event handling in IE


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/2f0cd332
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/2f0cd332
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/2f0cd332

Branch: refs/heads/master
Commit: 2f0cd33240c649073c706a1c39c82f5dced86d7d
Parents: fd2fc8b
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Jun 20 17:07:11 2013 +0200
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Jun 20 17:07:11 2013 +0200

----------------------------------------------------------------------
 .../wicket/ajax/res/js/wicket-ajax-jquery.js     | 19 ++++++++++---------
 wicket-core/src/test/js/event.js                 |  7 ++++---
 2 files changed, 14 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/2f0cd332/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js
index 89f756f..5fb8a18 100644
--- a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js
+++ b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js
@@ -2575,20 +2575,20 @@
 					jQuery.event.special.inputchange.keyDownPressed = true;
 				});
 
-				jQuery(this).on("cut paste", function (event) {
+				jQuery(this).on("cut paste", function (evt) {
 
 					var self = this;
 
 					if (false === jQuery.event.special.inputchange.keyDownPressed) {
 						window.setTimeout(function() {
-							jQuery.event.special.inputchange.handler.apply(self, arguments);
+							jQuery.event.special.inputchange.handler.call(self, evt);
 						}, 10);
 					}
 				});
 
-				jQuery(this).on("keyup", function (event) {
+				jQuery(this).on("keyup", function (evt) {
 					jQuery.event.special.inputchange.keyDownPressed = false; // reset
-					jQuery.event.special.inputchange.handler.apply(this, arguments);
+					jQuery.event.special.inputchange.handler.call(this, evt);
 				});
 
 			} else {
@@ -2601,10 +2601,11 @@
 			jQuery(this).off("input keyup cut paste", jQuery.event.special.inputchange.handler);
 		},
 
-		handler: function( event ) {
+		handler: function( evt ) {
 			var WE = Wicket.Event;
 			var k = jQuery.event.special.inputchange.keys;
-			var kc = WE.keyCode(WE.fix(event));
+
+			var kc = WE.keyCode(WE.fix(evt));
 			switch (kc) {
 				case k.ENTER:
 				case k.UP:
@@ -2618,11 +2619,11 @@
 				case k.CTRL:
 				case k.HOME:
 				case k.END:
-					return WE.stop(event);
+					return WE.stop(evt);
 				default:
-					event.type = "inputchange";
+					evt.type = "inputchange";
 					var args = Array.prototype.slice.call( arguments, 0 );
-					return jQuery(this).trigger(event.type, args);
+					return jQuery(this).trigger(evt.type, args);
 			}
 		}
 	};

http://git-wip-us.apache.org/repos/asf/wicket/blob/2f0cd332/wicket-core/src/test/js/event.js
----------------------------------------------------------------------
diff --git a/wicket-core/src/test/js/event.js b/wicket-core/src/test/js/event.js
index b19c557..84b9a74 100644
--- a/wicket-core/src/test/js/event.js
+++ b/wicket-core/src/test/js/event.js
@@ -237,8 +237,9 @@ jQuery(document).ready(function() {
 	module("Custom events");
 
 	test('inputchange', function() {
+		stop();
 		if (Wicket.Browser.isIE()) {
-			expect(4);
+			expect(3);
 		} else {
 			expect(1);
 		}
@@ -249,13 +250,13 @@ jQuery(document).ready(function() {
 		});
 
 		if (Wicket.Browser.isIE()) {
-			$input.trigger("keydown");
+			$input.trigger("paste");
 			$input.trigger("keyup");
 			$input.trigger("cut");
-			$input.trigger("paste");
 		} else {
 			$input.trigger("input");
 		}
+		start();
 
 	});
 });