Fix Ask popup bug (#231)

This commit is contained in:
RainLoop Team 2014-07-10 18:44:45 +04:00
parent aa7e198f3c
commit c155a6c200
10 changed files with 251 additions and 183 deletions

View file

@ -359,6 +359,8 @@ function PopupsComposeViewModel()
this.bDisabeCloseOnEsc = true;
this.sDefaultKeyScope = Enums.KeyState.Compose;
this.tryToClosePopup = _.debounce(_.bind(this.tryToClosePopup, this), 200);
Knoin.constructorEnd(this);
}
@ -912,12 +914,15 @@ PopupsComposeViewModel.prototype.editorResize = function ()
PopupsComposeViewModel.prototype.tryToClosePopup = function ()
{
var self = this;
kn.showScreenPopup(PopupsAskViewModel, [Utils.i18n('POPUPS_ASK/DESC_WANT_CLOSE_THIS_WINDOW'), function () {
if (self.modalVisibility())
{
Utils.delegateRun(self, 'closeCommand');
}
}]);
if (!kn.isPopupVisible(PopupsAskViewModel))
{
kn.showScreenPopup(PopupsAskViewModel, [Utils.i18n('POPUPS_ASK/DESC_WANT_CLOSE_THIS_WINDOW'), function () {
if (self.modalVisibility())
{
Utils.delegateRun(self, 'closeCommand');
}
}]);
}
};
PopupsComposeViewModel.prototype.onBuild = function ()
@ -945,7 +950,10 @@ PopupsComposeViewModel.prototype.onBuild = function ()
});
key('esc', Enums.KeyState.Compose, function () {
self.tryToClosePopup();
if (self.modalVisibility())
{
self.tryToClosePopup();
}
return false;
});