Merge pull request #2663 from cmgustavo/feat/slide

Modals animation (slide up/down)
This commit is contained in:
Matias Alejo Garcia 2015-05-08 14:26:14 -03:00
commit 9f620d127e
19 changed files with 532 additions and 470 deletions

View file

@ -6,7 +6,6 @@ var modules = [
'mm.foundation',
'monospaced.qrcode',
'gettext',
'ngAnimate',
'ngLodash',
'uiSwitch',
'bwcModule',

View file

@ -652,19 +652,28 @@ angular.module('copayApp.controllers').controller('indexController', function($r
$rootScope.$on('Animation/Disable', function(event) {
$timeout(function() {
self.swipeLeft = false;
self.swipeRight = false;
}, 370);
self.slideLeft = false;
self.slideRight = false;
self.slideUp = false;
self.slideDown = false;
}, 400);
});
$rootScope.$on('Animation/SwipeLeft', function(event) {
self.swipeLeft = true;
$rootScope.$on('Animation/SlideLeft', function(event) {
self.slideLeft = true;
});
$rootScope.$on('Animation/SwipeRight', function(event) {
self.swipeRight = true;
$rootScope.$on('Animation/SlideRight', function(event) {
self.slideRight = true;
});
$rootScope.$on('Animation/SlideUp', function(event) {
self.slideUp = true;
});
$rootScope.$on('Animation/SlideDown', function(event) {
self.slideDown = true;
});
$rootScope.$on('NewIncomingTx', function() {
self.updateBalance();

View file

@ -91,23 +91,28 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
$scope.openCopayersModal = function(copayers, copayerId) {
var fc = profileService.focusedClient;
var ModalInstanceCtrl = function($scope, $modalInstance) {
$scope.copayers = copayers;
$scope.copayerId = copayerId;
$scope.color = fc.backgroundColor;
$scope.cancel = function() {
$scope.cancel = function() {
$modalInstance.dismiss('cancel');
};
};
$modal.open({
animation: false,
var modalInstance = $modal.open({
templateUrl: 'views/modals/copayers.html',
windowClass: 'full',
windowClass: 'full animated slideInUp',
controller: ModalInstanceCtrl,
});
modalInstance.result.finally(function() {
var m = angular.element(document.getElementsByClassName('reveal-modal'));
m.addClass('slideOutDown');
});
};
$scope.openTxModal = function(tx, copayers) {
this.openTxpModal = function(tx, copayers) {
var fc = profileService.focusedClient;
var ModalInstanceCtrl = function($scope, $modalInstance) {
$scope.error = null;
@ -277,12 +282,16 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
};
var modalInstance = $modal.open({
animation: false,
templateUrl: 'views/modals/txp-details.html',
windowClass: 'full',
windowClass: 'full animated slideInUp',
controller: ModalInstanceCtrl,
});
modalInstance.result.finally(function() {
var m = angular.element(document.getElementsByClassName('reveal-modal'));
m.addClass('slideOutDown');
});
modalInstance.result.then(function(txp) {
$scope.$emit('Local/TxProposalAction');
if (txp) {
@ -675,11 +684,16 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
$modalInstance.dismiss('cancel');
};
};
$modal.open({
var modalInstance = $modal.open({
templateUrl: 'views/modals/paypro.html',
windowClass: 'full',
windowClass: 'full animated slideInUp',
controller: ModalInstanceCtrl,
});
modalInstance.result.finally(function() {
var m = angular.element(document.getElementsByClassName('reveal-modal'));
m.addClass('slideOutDown');
});
};
this.setFromPayPro = function(uri) {
@ -829,12 +843,16 @@ angular.module('copayApp.controllers').controller('walletHomeController', functi
};
};
$modal.open({
animation: false,
var modalInstance = $modal.open({
templateUrl: 'views/modals/tx-details.html',
windowClass: 'full',
windowClass: 'full animated slideInUp',
controller: ModalInstanceCtrl,
});
modalInstance.result.finally(function() {
var m = angular.element(document.getElementsByClassName('reveal-modal'));
m.addClass('slideOutDown');
});
};
this.hasAction = function(actions, action) {

View file

@ -16,11 +16,9 @@ if (window && window.navigator) {
//Setting up route
angular
.module('copayApp')
.config(function(historicLogProvider, $provide, $logProvider, $stateProvider, $urlRouterProvider, $animateProvider) {
.config(function(historicLogProvider, $provide, $logProvider, $stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/');
$animateProvider.classNameFilter(/^(?:(?!ng-animate-disabled).)*$/);
$logProvider.debugEnabled(true);
$provide.decorator('$log', ['$delegate',
function($delegate) {
@ -506,7 +504,7 @@ angular
receive: 0,
send: 0,
history: 0,
preferences: 0,
preferences: 11,
preferencesColor: 12,
backup: 12,
preferencesAdvanced: 12,
@ -517,7 +515,7 @@ angular
preferencesBwsUrl: 12,
about: 12,
logs: 13,
add: 0,
add: 11,
create: 12,
join: 12,
import: 12,
@ -530,10 +528,21 @@ angular
});
$rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams) {
if (pageWeight[fromState.name] > pageWeight[toState.name]) {
$rootScope.$emit('Animation/SwipeRight');
if (pageWeight[fromState.name] == 11) {
$rootScope.$emit('Animation/SlideDown');
}
else {
$rootScope.$emit('Animation/SlideRight');
}
} else if (pageWeight[fromState.name] < pageWeight[toState.name]) {
$rootScope.$emit('Animation/SwipeLeft');
if (pageWeight[toState.name] < 12) {
$rootScope.$emit('Animation/SlideUp');
}
else {
$rootScope.$emit('Animation/SlideLeft');
}
}
if (!profileService.profile && toState.needProfile) {

View file

@ -35,11 +35,16 @@ angular.module('copayApp.services').factory('txStatus', function($modal, lodash,
};
if (cb) $timeout(cb, 100);
};
$modal.open({
var modalInstance = $modal.open({
templateUrl: 'views/modals/tx-status.html',
windowClass: 'full popup-tx-status',
windowClass: 'full popup-tx-status closeModalAnimation',
controller: ModalInstanceCtrl,
});
modalInstance.result.finally(function() {
var m = angular.element(document.getElementsByClassName('reveal-modal'));
m.addClass('animated fadeOutUp');
});
};
return root;