@@ -374,29 +374,28 @@ $.Widget.prototype = {
374
374
} ,
375
375
376
376
_trigger : function ( type , event , data ) {
377
- var callback = this . options [ type ] ,
378
- args ;
377
+ var args , prop , orig ,
378
+ callback = this . options [ type ] ;
379
379
380
+ data = data || { } ;
380
381
event = $ . Event ( event ) ;
381
382
event . type = ( type === this . widgetEventPrefix ?
382
383
type :
383
384
this . widgetEventPrefix + type ) . toLowerCase ( ) ;
384
- data = data || { } ;
385
+ // the original event may come from any element
386
+ // so we need to reset the target on the new event
387
+ event . target = this . element [ 0 ] ;
385
388
386
389
// copy original event properties over to the new event
387
- // this would happen if we could call $. event.fix instead of $.Event
388
- // but we don't have a way to force an event to be fixed multiple times
389
- if ( event . originalEvent ) {
390
- for ( var i = $ . event . props . length , prop ; i ; ) {
391
- prop = $ . event . props [ -- i ] ;
392
- event [ prop ] = event . originalEvent [ prop ] ;
390
+ orig = event . originalEvent ;
391
+ if ( orig ) {
392
+ for ( prop in orig ) {
393
+ if ( ! ( prop in event ) ) {
394
+ event [ prop ] = orig [ prop ] ;
395
+ }
393
396
}
394
397
}
395
398
396
- // the original event may come from any element
397
- // so we need to reset the target on the new event
398
- event . target = this . element [ 0 ] ;
399
-
400
399
this . element . trigger ( event , data ) ;
401
400
402
401
args = $ . isArray ( data ) ?
0 commit comments