From 00dbb3e2da9a9e088b12386ba1429f9f72cc5b65 Mon Sep 17 00:00:00 2001 From: Max Lynch Date: Sat, 1 Mar 2014 19:09:27 -0600 Subject: [PATCH] Added requestAnimationFrame --- js/views/toggleView.js | 45 ++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/js/views/toggleView.js b/js/views/toggleView.js index f68b2f0b69..b1b74ac6a9 100644 --- a/js/views/toggleView.js +++ b/js/views/toggleView.js @@ -63,33 +63,36 @@ }, drag: function(e) { + var self = this; if(!this._dragInfo) { return; } - // Stop any parent dragging - e.gesture.srcEvent.preventDefault(); + ionic.requestAnimationFrame(function(amount) { + // Stop any parent dragging + e.gesture.srcEvent.preventDefault(); - var slidePageLeft = this.track.offsetLeft + (this.handle.offsetWidth / 2); - var slidePageRight = this.track.offsetLeft + this.track.offsetWidth - (this.handle.offsetWidth / 2); - var dx = e.gesture.deltaX; + var slidePageLeft = self.track.offsetLeft + (self.handle.offsetWidth / 2); + var slidePageRight = self.track.offsetLeft + self.track.offsetWidth - (self.handle.offsetWidth / 2); + var dx = e.gesture.deltaX; - var px = e.gesture.touches[0].pageX - this._dragInfo.left; - var mx = this._dragInfo.width - this.triggerThreshold; + var px = e.gesture.touches[0].pageX - self._dragInfo.left; + var mx = self._dragInfo.width - self.triggerThreshold; - // The initial state was on, so "tend towards" on - if(this._dragInfo.initialState) { - if(px < this.triggerThreshold) { - this.setOpenPercent(0); - } else if(px > this._dragInfo.triggerX) { - this.setOpenPercent(100); + // The initial state was on, so "tend towards" on + if(self._dragInfo.initialState) { + if(px < self.triggerThreshold) { + self.setOpenPercent(0); + } else if(px > self._dragInfo.triggerX) { + self.setOpenPercent(100); + } + } else { + // The initial state was off, so "tend towards" off + if(px < self._dragInfo.triggerX) { + self.setOpenPercent(0); + } else if(px > mx) { + self.setOpenPercent(100); + } } - } else { - // The initial state was off, so "tend towards" off - if(px < this._dragInfo.triggerX) { - this.setOpenPercent(0); - } else if(px > mx) { - this.setOpenPercent(100); - } - } + }); }, hold: function(e) {