diff --git a/UI/Templates/MailerUI/UIxMailFolderTemplate.wox b/UI/Templates/MailerUI/UIxMailFolderTemplate.wox
index 40f7c4a5a..5dad98db2 100644
--- a/UI/Templates/MailerUI/UIxMailFolderTemplate.wox
+++ b/UI/Templates/MailerUI/UIxMailFolderTemplate.wox
@@ -72,7 +72,7 @@
search
+ ng-click="mailbox.searchMode($event)" ng-bind="mailbox.service.selectedFolder.$displayName">
diff --git a/UI/WebServerResources/js/Mailer/Mailbox.service.js b/UI/WebServerResources/js/Mailer/Mailbox.service.js
index be883aa8a..209a2a1ea 100644
--- a/UI/WebServerResources/js/Mailer/Mailbox.service.js
+++ b/UI/WebServerResources/js/Mailer/Mailbox.service.js
@@ -868,13 +868,18 @@
* @memberof Mailbox.prototype
* @desc Reset the original state the mailbox's data.
*/
- Mailbox.prototype.$reset = function() {
+ Mailbox.prototype.$reset = function(options) {
var _this = this;
angular.forEach(this.$shadowData, function(value, key) {
delete _this[key];
});
angular.extend(this, this.$shadowData);
this.$shadowData = this.$omit();
+ if (options && options.filter) {
+ this.$messages = [];
+ this.$visibleMessages = [];
+ delete this.$syncToken;
+ }
};
/**
diff --git a/UI/WebServerResources/js/Mailer/MailboxController.js b/UI/WebServerResources/js/Mailer/MailboxController.js
index 68b42cbcd..8f3ec444d 100644
--- a/UI/WebServerResources/js/Mailer/MailboxController.js
+++ b/UI/WebServerResources/js/Mailer/MailboxController.js
@@ -53,8 +53,14 @@
title += ' | ' + defaultWindowTitle;
$window.document.title = title;
});
- };
+ $scope.$on('$destroy', function() {
+ if (vm.mode.search) {
+ vm.mode.search = false;
+ vm.selectedFolder.$reset({ filter: true });
+ }
+ });
+ };
function _registerHotkeys(keys) {
keys.push(sgHotkeys.createHotkey({