Fixes task left in odd setting when cancelling editing with ESC / Escape Key; add click outside to close modal #8308 #8321 (#8382)

* Remove backdrop property from open modal call to allow click-outside to close, call cancelTaskEdit function on dismissal of edit modal via ESC or click-outside

* Remove commented out code, change catch function to normal (non-arrow)

* Modify task services test mock openModal function, to handle new use of subsequent promise resolution functionality

* Tidy old edit controls away
This commit is contained in:
Declan Ramsay
2017-01-11 08:04:34 +13:00
committed by Keith Holliday
parent 2b80931202
commit ef4aeb29ab
3 changed files with 14 additions and 13 deletions

View File

@@ -17,7 +17,14 @@ describe('Tasks Service', function() {
tasks = Tasks;
});
rootScope.openModal = function () {};
rootScope.openModal = function() {
return {
result: {
then: function() {},
catch: function() {},
},
};
};
});
it('calls get user tasks endpoint', function() {

View File

@@ -271,7 +271,10 @@ angular.module('habitrpg')
}
modalScope.cancelTaskEdit = cancelTaskEdit;
$rootScope.openModal('task-edit', {scope: modalScope, backdrop: 'static'});
$rootScope.openModal('task-edit', {scope: modalScope })
.result.catch(function() {
cancelTaskEdit(task);
});
}
function cancelTaskEdit(task) {

View File

@@ -33,18 +33,9 @@
span.glyphicon.glyphicon-tags(tooltip='{{Shared.appliedTags(user.tags, task.tags)}}', ng-hide='Shared.noTags(task.tags)')
// edit
a(ng-hide='task._editing || (checkGroupAccess && !checkGroupAccess(obj))', ng-click='editTask(task, user, Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main))', tooltip=env.t('edit'))
a(ng-hide='checkGroupAccess && !checkGroupAccess(obj)', ng-click='editTask(task, user, Shared.taskClasses(task, user.filters, user.preferences.dayStart, user.lastCron, list.showCompleted, main))', tooltip=env.t('edit'))
|  
span.glyphicon.glyphicon-pencil(ng-hide='task._editing')
|  
a(ng-hide='!task._editing', ng-click='cancelTaskEdit(task)', tooltip=env.t('cancel'))
span.glyphicon.glyphicon-remove(ng-hide='!task._editing')
|  
// save
a(ng-hide='!task._editing', ng-click='saveTask(task)', tooltip=env.t('save'))
span.glyphicon.glyphicon-ok(ng-hide='!task._editing')
span.glyphicon.glyphicon-pencil
|  
//challenges