Pergunta antiga, mas se você quiser adicionar caixas de diálogo de confirmação em várias ações de fechamento, adicione isso ao seu controlador de instância modal:
$scope.$on('modal.closing', function(event, reason, closed) {
console.log('modal.closing: ' + (closed ? 'close' : 'dismiss') + '(' + reason + ')');
var message = "You are about to leave the edit view. Uncaught reason. Are you sure?";
switch (reason){
// clicked outside
case "backdrop click":
message = "Any changes will be lost, are you sure?";
break;
// cancel button
case "cancel":
message = "Any changes will be lost, are you sure?";
break;
// escape key
case "escape key press":
message = "Any changes will be lost, are you sure?";
break;
}
if (!confirm(message)) {
event.preventDefault();
}
});
Eu tenho um botão Fechar no canto superior direito do meu, que aciona a ação "cancelar". Clicar na tela de fundo (se ativado), aciona a ação de cancelamento. Você pode usar isso para usar mensagens diferentes para vários eventos de fechamento.