Fix fixed header issue after removing rows (1295420)

pull/158/merge
Aleksander Machniak 11 years ago
parent 39c90d6b61
commit fd0c123e44

@ -6843,7 +6843,6 @@ function rcube_webmail()
if ((response.action == 'list' || response.action == 'search') && this.message_list) { if ((response.action == 'list' || response.action == 'search') && this.message_list) {
this.msglist_select(this.message_list); this.msglist_select(this.message_list);
this.message_list.resize();
this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount }); this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount });
} }
} }
@ -6854,7 +6853,6 @@ function rcube_webmail()
this.enable_command('search-create', this.env.source == ''); this.enable_command('search-create', this.env.source == '');
this.enable_command('search-delete', this.env.search_id); this.enable_command('search-delete', this.env.search_id);
this.update_group_commands(); this.update_group_commands();
this.contact_list.resize();
this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount }); this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount });
} }
} }

@ -249,6 +249,9 @@ clear: function(sel)
// reset scroll position (in Opera) // reset scroll position (in Opera)
if (this.frame) if (this.frame)
this.frame.scrollTop = 0; this.frame.scrollTop = 0;
// fix list header after removing any rows
this.resize();
}, },
@ -257,7 +260,7 @@ clear: function(sel)
*/ */
remove_row: function(uid, sel_next) remove_row: function(uid, sel_next)
{ {
var node = this.rows[uid] ? this.rows[uid].obj : null; var self = this, node = this.rows[uid] ? this.rows[uid].obj : null;
if (!node) if (!node)
return; return;
@ -269,6 +272,10 @@ remove_row: function(uid, sel_next)
delete this.rows[uid]; delete this.rows[uid];
this.rowcount--; this.rowcount--;
// fix list header after removing any rows
clearTimeout(this.resize_timeout)
this.resize_timeout = setTimeout(function() { self.resize(); }, 50);
}, },
@ -277,7 +284,7 @@ remove_row: function(uid, sel_next)
*/ */
insert_row: function(row, before) insert_row: function(row, before)
{ {
var tbody = this.tbody; var self = this, tbody = this.tbody;
// create a real dom node first // create a real dom node first
if (row.nodeName === undefined) { if (row.nodeName === undefined) {
@ -305,6 +312,10 @@ insert_row: function(row, before)
this.init_row(row); this.init_row(row);
this.rowcount++; this.rowcount++;
// fix list header after adding any rows
clearTimeout(this.resize_timeout)
this.resize_timeout = setTimeout(function() { self.resize(); }, 50);
}, },
/** /**

Loading…
Cancel
Save