From 952860c1809fe0d69ccd320759c471ab1e548a72 Mon Sep 17 00:00:00 2001 From: svncommit <devs@roundcube.net> Date: Thu, 25 May 2006 10:41:56 -0400 Subject: [PATCH] change class to unfocused upon clicking outside of the message list --- program/js/app.js | 33 ++++++++++++++++++++++++++------- 1 files changed, 26 insertions(+), 7 deletions(-) diff --git a/program/js/app.js b/program/js/app.js index a834582..ae6b00f 100644 --- a/program/js/app.js +++ b/program/js/app.js @@ -255,15 +255,29 @@ }; // reset last clicked if user clicks on anything other than the message table - this.reset_click = function() - { + this.reset_click = function() { this.in_message_list = false; - }; + for (var n=0; n<this.selection.length; n++) { + id = this.selection[n]; + if (this.list_rows[id].obj) { + this.set_classname(this.list_rows[id].obj, 'selected', false); + this.set_classname(this.list_rows[id].obj, 'unfocused', true); + } + } + }; this.click_on_list = function(e) { if (!e) e = window.event; + + for (var n=0; n<this.selection.length; n++) { + id = this.selection[n]; + if (this.list_rows[id].obj) { + this.set_classname(this.list_rows[id].obj, 'selected', true); + this.set_classname(this.list_rows[id].obj, 'unfocused', false); + } + } this.in_message_list = true; e.cancelBubble = true; @@ -1253,7 +1267,7 @@ if (!this.in_selection(id)) // select row { this.selection[this.selection.length] = id; - this.set_classname(this.list_rows[id].obj, 'selected', true); + this.set_classname(this.list_rows[id].obj, 'selected', true); } else // unselect row { @@ -1262,6 +1276,7 @@ var a_post = this.selection.slice(p+1, this.selection.length); this.selection = a_pre.concat(a_post); this.set_classname(this.list_rows[id].obj, 'selected', false); + this.set_classname(this.list_rows[id].obj, 'unfocused', false); } selected = (this.selection.length==1); } @@ -1334,9 +1349,10 @@ this.clear_selection = function() { for(var n=0; n<this.selection.length; n++) - if (this.list_rows[this.selection[n]]) + if (this.list_rows[this.selection[n]]) { this.set_classname(this.list_rows[this.selection[n]].obj, 'selected', false); - + this.set_classname(this.list_rows[this.selection[n]].obj, 'unfocused', false); + } this.selection = new Array(); }; @@ -2075,6 +2091,7 @@ highlight.removeAttribute('id'); //highlight.removeAttribute('class'); this.set_classname(highlight, 'selected', false); + this.set_classname(highlight, 'unfocused', false); } if (next) @@ -2813,8 +2830,10 @@ var current_li = document.getElementById('rcmbx'+s_current); var mbox_li = document.getElementById('rcmbx'+s_mbox); - if (current_li) + if (current_li) { this.set_classname(current_li, 'selected', false); + this.set_classname(current_li, 'unfocused', false); + } if (mbox_li) this.set_classname(mbox_li, 'selected', true); } -- Gitblit v1.9.1