summaryrefslogtreecommitdiff
path: root/roundcubemail/program
diff options
context:
space:
mode:
authorcmcnulty <cmcnulty@208e9e7b-5314-0410-a742-e7e81cd9613c>2006-04-26 17:05:10 +0000
committercmcnulty <cmcnulty@208e9e7b-5314-0410-a742-e7e81cd9613c>2006-04-26 17:05:10 +0000
commitf675365493b2d2a4d175fe9c9db769c88999ceef (patch)
tree606bfd27245708b8dfcb47c200c7f39b0c9d92fe /roundcubemail/program
parent1cca41a0bbf1f320c78c81600024b57611c80124 (diff)
fix number of bugs and issues with last patch.
1) fixed issue where switching folders would lose keyboard commands 2) fixed issue where you could not delete or move multiple messages 3) now moves to next message regardless of deleting it or moving it 4) moves to previous messsage when deleting or moving last message in list git-svn-id: https://svn.roundcube.net/trunk@199 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program')
-rw-r--r--roundcubemail/program/js/app.js15
1 files changed, 11 insertions, 4 deletions
diff --git a/roundcubemail/program/js/app.js b/roundcubemail/program/js/app.js
index 32607a8c5..0a5746955 100644
--- a/roundcubemail/program/js/app.js
+++ b/roundcubemail/program/js/app.js
@@ -1294,9 +1294,9 @@ function rcube_webmail()
}
}
}
- if (this.last_selected > 0) this.set_classname(this.list_rows[this.last_selected].obj, 'focused', false);
- this.set_classname(this.list_rows[id].obj, 'focused', true);
+ if (this.last_selected != 0) { this.set_classname(this.list_rows[this.last_selected].obj, 'focused', false);}
this.last_selected = id;
+ this.set_classname(this.list_rows[id].obj, 'focused', true);
};
this.shift_select = function(id, control) {
@@ -1401,6 +1401,7 @@ function rcube_webmail()
// list messages of a specific mailbox
this.list_mailbox = function(mbox, page, sort)
{
+ this.last_selected = 0;
var add_url = '';
var target = window;
@@ -1538,9 +1539,11 @@ function rcube_webmail()
// 'remove' message row from list (just hide it)
if (this.message_rows[id].obj)
this.message_rows[id].obj.style.display = 'none';
- new_row = this.get_next_row();
- this.select_row(new_row.uid,false,false);
}
+ next_row = this.get_next_row();
+ prev_row = this.get_prev_row();
+ new_row = (next_row) ? next_row : prev_row;
+ this.select_row(new_row.uid,false,false);
}
var lock = false;
@@ -1581,6 +1584,10 @@ function rcube_webmail()
this.message_rows[id].obj.style.display = 'none';
}
}
+ next_row = this.get_next_row();
+ prev_row = this.get_prev_row();
+ new_row = (next_row) ? next_row : prev_row;
+ this.select_row(new_row.uid,false,false);
// send request to server
this.http_request('delete', '_uid='+a_uids.join(',')+'&_mbox='+escape(this.env.mailbox)+'&_from='+(this.env.action ? this.env.action : ''));