summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG1
-rw-r--r--program/js/app.js6
-rw-r--r--program/steps/mail/compose.inc6
3 files changed, 11 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 5006fe08b..6417cc139 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
+- Fix so "Back" from compose/show doesn't reset search request (#1488238)
- Add option to delete messages instead of moving to Trash when in Junk folder (#1486686)
- Fix invisible cursor when replying to a html message (#1487073)
- Reset IP stored in session when destroying session data (#1488056)
diff --git a/program/js/app.js b/program/js/app.js
index 30333d89b..025a366f1 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -569,7 +569,8 @@ function rcube_webmail()
break;
case 'list':
- this.reset_qsearch();
+ if (props && props != '')
+ this.reset_qsearch();
if (this.task == 'mail') {
this.list_mailbox(props);
this.set_button_titles();
@@ -857,6 +858,9 @@ function rcube_webmail()
url += '&_mbox='+urlencode(this.env.mailbox);
if (props)
url += '&_to='+urlencode(props);
+ // also send search request so we can go back to search result after message is sent
+ if (this.env.search_request)
+ url += '&_search='+this.env.search_request;
}
// modify url if we're in addressbook
else if (this.task == 'addressbook') {
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index 9475f34c5..ebf79be4e 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -118,7 +118,11 @@ if (!is_array($COMPOSE))
}
// redirect to a unique URL with all parameters stored in session
- $OUTPUT->redirect(array('_action' => 'compose', '_id' => $COMPOSE['id']));
+ $OUTPUT->redirect(array(
+ '_action' => 'compose',
+ '_id' => $COMPOSE['id'],
+ '_search' => $_REQUEST['_search'],
+ ));
}