From 1bb6404d5ac4bee659f07293e17ea5f003905d4e Mon Sep 17 00:00:00 2001 From: Juanfran Date: Wed, 10 Dec 2014 15:39:45 +0100 Subject: [PATCH] [backport] fix cancel edition in wysiwyg & subjects --- app/coffee/modules/common/components.coffee | 7 ++++--- app/coffee/modules/wiki/main.coffee | 6 ++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/coffee/modules/common/components.coffee b/app/coffee/modules/common/components.coffee index a0591462..b439c2b0 100644 --- a/app/coffee/modules/common/components.coffee +++ b/app/coffee/modules/common/components.coffee @@ -544,7 +544,8 @@ EditableSubjectDirective = ($rootscope, $repo, $confirm, $loading, $qqueue) -> subject = $scope.item.subject save(subject) else if event.keyCode == 27 - $model.$modelValue.revert() + $scope.$apply () => $model.$modelValue.revert() + $el.find('div.edit-subject').hide() $el.find('div.view-subject').show() @@ -649,9 +650,9 @@ EditableDescriptionDirective = ($rootscope, $repo, $confirm, $compile, $loading, description = $scope.item.description save(description) - $el.on "keyup", "textarea", (event) -> + $el.on "keydown", "textarea", (event) -> if event.keyCode == 27 - $scope.item.revert() + $scope.$apply () => $scope.item.revert() $el.find('.edit-description').hide() $el.find('.view-description').show() diff --git a/app/coffee/modules/wiki/main.coffee b/app/coffee/modules/wiki/main.coffee index 5073d95c..2e26befc 100644 --- a/app/coffee/modules/wiki/main.coffee +++ b/app/coffee/modules/wiki/main.coffee @@ -251,8 +251,10 @@ EditableWikiContentDirective = ($window, $document, $repo, $confirm, $loading, $ $el.find(".edit-wiki-content").remove() cancelEdition = -> + return if !$scope.wiki.html + if $scope.wiki.id - $scope.wiki.revert() + $scope.$apply () => $scope.wiki.revert() switchToReadMode() else ctx = {project: $scope.projectSlug} @@ -303,7 +305,7 @@ EditableWikiContentDirective = ($window, $document, $repo, $confirm, $loading, $ $el.on "click", ".cancel", -> cancelEdition() - $el.on "keyup", "textarea", (event) -> + $el.on "keydown", "textarea", (event) -> if event.keyCode == 27 cancelEdition()