@@ -14,6 +14,7 @@ var SWIPE_VELOCITY_THRESHOLD = 100;
1414export class GesturesObserver implements definition . GesturesObserver {
1515 private _callback : ( args : definition . GestureEventData ) => void ;
1616 private _target : view . View ;
17+ private _context : any ;
1718
1819 private _onTouchListener : android . view . View . OnTouchListener ;
1920 public _simpleGestureDetector : android . view . GestureDetector ;
@@ -32,17 +33,18 @@ export class GesturesObserver implements definition.GesturesObserver {
3233 return this . _callback ;
3334 }
3435
35- public observe ( target : view . View , type : definition . GestureTypes ) {
36+ public observe ( target : view . View , type : definition . GestureTypes , thisArg ?: any ) {
3637 if ( target ) {
3738 this . _target = target ;
38- this . _onTargetLoaded = args => {
39+ this . _context = thisArg ;
40+ this . _onTargetLoaded = args => {
3941 trace . write ( this . _target + ".target loaded. android:" + this . _target . android , "gestures" ) ;
40- this . _attach ( target , type ) ;
42+ this . _attach ( target , type ) ;
4143 } ;
42- this . _onTargetUnloaded = args => {
44+ this . _onTargetUnloaded = args => {
4345 trace . write ( this . _target + ".target unloaded. android:" + this . _target . android , "gestures" ) ;
4446 this . _dettach ( ) ;
45- } ;
47+ } ;
4648
4749 target . on ( view . View . loadedEvent , this . _onTargetLoaded ) ;
4850 target . on ( view . View . unloadedEvent , this . _onTargetUnloaded ) ;
@@ -140,7 +142,7 @@ export class GesturesObserver implements definition.GesturesObserver {
140142
141143 var observer = that . get ( ) ;
142144 if ( observer && observer . callback ) {
143- observer . callback ( args ) ;
145+ observer . callback . apply ( observer . _context , args ) ;
144146 }
145147
146148 }
@@ -184,7 +186,7 @@ function _getPanArgs(deltaX: number, deltaY: number, view: view.View,
184186
185187function _executeCallback ( observer : GesturesObserver , args : definition . GestureEventData ) {
186188 if ( observer && observer . callback ) {
187- observer . callback ( args ) ;
189+ observer . callback . apply ( ( < any > observer ) . _context , args ) ;
188190 }
189191}
190192
0 commit comments