var mouseDownEvent = null;
var exitedMouseDown = false;
+var is_shift_pressed = false;
+var is_ctrl_pressed = false;
+
var originalMarkedRow = null;
var previousFinish = 0;
var markedFrom = 0;
mlh_date.observe('click',ApplySort);
mlh_subject.observe('click',ApplySort);
mlh_from.observe('click',ApplySort);
+ $(document).observe('keydown',CtdlMessageListKeyDown,false);
$(document).observe('keyup',CtdlMessageListKeyUp,false);
$('resize_msglist').observe('mousedown', CtdlResizeMouseDown);
$('m_refresh').observe('click', getMessages);
var parent = target.parentNode;
var msgId = parent.getAttribute("citadel:msgid");
// If the ctrl key modifier wasn't used, unmark all rows and load the message
- if (!event.shiftKey && !event.ctrlKey && !event.altKey) {
+ if (!is_shift_pressed && !is_ctrl_pressed) {
previousFinish = 0;
markedFrom = 0;
unmarkAllRows();
onComplete: CtdlMarkRowAsRead(parent)
});
// If the shift key modifier is used, mark a range...
- } else if (event.button != 2 && event.shiftKey) {
+ } else if (event.button != 2 && is_shift_pressed) {
if (originalMarkedRow == null) {
originalMarkedRow = parent;
markRow(parent);
markRow(parent.parentNode.rows[x]);
}
// If the ctrl key modifier is used, toggle one message
- } else if (event.button != 2 && (event.ctrlKey || event.altKey)) {
+ } else if (event.button != 2 && is_ctrl_pressed) {
if (parent.getAttribute("citadel:marked")) {
unmarkRow(parent);
}
deleteAllMarkedRows();
}
+
+function arrgggh() {
+ s = '.';
+ if (is_shift_pressed) {
+ s = s + 'S';
+ }
+ s = s + '.';
+ if (is_ctrl_pressed) {
+ s = s + 'C';
+ }
+ s = s + '.';
+ $('ib_summary').innerHTML = s;
+
+}
+
+function CtdlMessageListKeyDown(event) {
+ var key = event.which || event.keyCode;
+
+ if (key == 16) { /* SHIFT */
+ is_shift_pressed = true;
+ }
+ else if ( (key == 17) || (key == 18) ) { /* CTRL or ALT */
+ is_ctrl_pressed = true;
+ }
+ arrgggh();
+}
+
function CtdlMessageListKeyUp(event) {
var key = event.which || event.keyCode;
- if (key == 46) { /* DELETE */
+ if (key == 16) { /* SHIFT */
+ is_shift_pressed = false;
+ }
+ else if ( (key == 17) || (key == 18) ) { /* CTRL or ALT */
+ is_ctrl_pressed = false;
+ }
+ else if (key == 46) { /* DELETE */
deleteAllSelectedMessages();
}
+ arrgggh();
}
function clearMessage(msgId) {