improve css deactivate fallback

This commit is contained in:
Adam Bradley
2015-09-14 21:43:55 -05:00
parent 2fe6135800
commit 41f2942fe7
5 changed files with 9 additions and 9 deletions

View File

@ -257,7 +257,7 @@ export class Activator {
deactivate() {
const self = this;
if (self.app.isTransitioning() && self.deactivateAttempt < 10) {
if (self.app.isTransitioning() && self.deactivateAttempt < 30) {
// the app is actively transitioning, don't bother deactivating
// anything this makes it easier on the GPU so it doesn't
// have to redraw any buttons during a transition

View File

@ -40,7 +40,7 @@ export class IonicApp {
*/
constructor() {
this.overlays = [];
this._transTime = 0;
this._transDone = 0;
// Our component registry map
this.components = {};
@ -82,8 +82,8 @@ export class IonicApp {
* slides up, etc. After the transition completes it is set back to `false`.
* @param {bool} isTransitioning
*/
setTransitioning(isTransitioning) {
this._transTime = (isTransitioning ? Date.now() : 0);
setTransitioning(isTransitioning, msTilDone=800) {
this._transDone = (isTransitioning ? Date.now() + msTilDone : 0);
}
/**
@ -91,7 +91,7 @@ export class IonicApp {
* @return {bool}
*/
isTransitioning() {
return (this._transTime + 800 > Date.now());
return (this._transDone > Date.now());
}
/**

View File

@ -162,7 +162,7 @@ export class OverlayRef {
animation.after.removeClass('show-overlay');
ClickBlock(true, animation.duration() + 200);
this.app.setTransitioning(true);
this.app.setTransitioning(true, animation.duration() + 200);
animation.play().then(() => {
instance.viewDidLeave && instance.viewDidLeave();

View File

@ -235,7 +235,7 @@ export class TextInput extends Ion {
// manually scroll the text input to the top
// do not allow any clicks while it's scrolling
ClickBlock(true, SCROLL_INTO_VIEW_DURATION + 100);
this.app.setTransitioning(true);
this.app.setTransitioning(true, SCROLL_INTO_VIEW_DURATION + 100);
// temporarily move the focus to the focus holder so the browser
// doesn't freak out while it's trying to get the input in place

View File

@ -279,7 +279,7 @@ export class ViewController extends Ion {
// block any clicks during the transition and provide a
// fallback to remove the clickblock if something goes wrong
ClickBlock(true, duration + 200);
this.app.setTransitioning(true);
this.app.setTransitioning(true, duration + 200);
}
// start the transition
@ -398,7 +398,7 @@ export class ViewController extends Ion {
swipeBackProgress(progress) {
if (this.sbTransition) {
ClickBlock(true, 4000);
this.app.setTransitioning(true);
this.app.setTransitioning(true, 4000);
this.sbTransition.progress( Math.min(1, Math.max(0, progress)) );
}
}