You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Sven Meier (JIRA)" <ji...@apache.org> on 2016/07/22 10:55:20 UTC

[jira] [Updated] (WICKET-6214) ModalWindow broken on IE

     [ https://issues.apache.org/jira/browse/WICKET-6214?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sven Meier updated WICKET-6214:
-------------------------------
    Description: 
Since WICKET-6108 wicket-event-jquery.js no longer fixes passed in events:

{code}
	fix: function (evt) {
-		var evnt = evt || window.event;
-		return jQuery.event.fix(evnt);
+		return evt || jQuery.event.fix(window.event);
 	},
{code}

But modal.js directly invokes {{Wicket.Event#stop()}}:

{code}
 	onmousedown=\"Wicket.Event.stop(event);\"
{code}

Thus the event is not 'fixed', but {{#stopPropagation()}} is called on it:

{code}
	stop: function (evt, immediate) {
		evt = Wicket.Event.fix(evt);
		if (immediate) {
			evt.stopImmediatePropagation();
		} else {
			evt.stopPropagation();
		}
		return evt;
	},
{code}


  was:
Since WICKET-6108 wicket-event-jquery.js no longer fixes passed in events:

{code}
	fix: function (evt) {
-		var evnt = evt || window.event;
-		return jQuery.event.fix(evnt);
+		return evt || jQuery.event.fix(window.event);
 	},
{code}

But modal.js directly invokes {{Wicket.Event#stop()}}:

{code}
 	onmousedown=\"Wicket.Event.stop(event);\"
{code}

Thus the event is not 'fixed', but #stopPropagation() is called on it from #stop:

{code}
	stop: function (evt, immediate) {
		evt = Wicket.Event.fix(evt);
		if (immediate) {
			evt.stopImmediatePropagation();
		} else {
			evt.stopPropagation();
		}
		return evt;
	},
{code}



> ModalWindow broken on IE
> ------------------------
>
>                 Key: WICKET-6214
>                 URL: https://issues.apache.org/jira/browse/WICKET-6214
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.23.0, 6.24.0
>            Reporter: Sven Meier
>            Assignee: Martin Grigorov
>            Priority: Minor
>
> Since WICKET-6108 wicket-event-jquery.js no longer fixes passed in events:
> {code}
> 	fix: function (evt) {
> -		var evnt = evt || window.event;
> -		return jQuery.event.fix(evnt);
> +		return evt || jQuery.event.fix(window.event);
>  	},
> {code}
> But modal.js directly invokes {{Wicket.Event#stop()}}:
> {code}
>  	onmousedown=\"Wicket.Event.stop(event);\"
> {code}
> Thus the event is not 'fixed', but {{#stopPropagation()}} is called on it:
> {code}
> 	stop: function (evt, immediate) {
> 		evt = Wicket.Event.fix(evt);
> 		if (immediate) {
> 			evt.stopImmediatePropagation();
> 		} else {
> 			evt.stopPropagation();
> 		}
> 		return evt;
> 	},
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)