From c833ed4053106c9df58b84a441cc4509cda45a38 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 06 May 2010 05:57:39 -0400
Subject: [PATCH] - Fix listupdate event doesn't trigger on search response (#1486708)

---
 program/js/app.js |   17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/program/js/app.js b/program/js/app.js
index d962218..ec7ec45 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -4237,13 +4237,13 @@
 
       // set image according to button state
       if (obj && button.type=='image' && button[state]) {
-        button.status = state;        
+        button.status = state;
         obj.src = button[state];
       }
       // set class name according to button state
       else if (obj && typeof(button[state])!='undefined') {
-        button.status = state;        
-        obj.className = button[state];        
+        button.status = state;
+        obj.className = button[state];
       }
       // disable/enable input buttons
       if (obj && button.type=='input') {
@@ -4833,21 +4833,20 @@
       case 'search':
       case 'list':
         if (this.task == 'mail') {
-          if (this.message_list && (response.action == 'list' || response.action == 'search')) {
-            this.msglist_select(this.message_list);
-            this.expand_threads();
-          }
           this.enable_command('show', 'expunge', 'select-all', 'select-none', 'sort', (this.env.messagecount > 0));
           this.enable_command('purge', this.purge_mailbox_test());
           this.enable_command('expand-all', 'expand-unread', 'collapse-all', this.env.threading && this.env.messagecount);
 
-          if (response.action == 'list')
+          if (response.action == 'list' || response.action == 'search') {
+            this.msglist_select(this.message_list);
+            this.expand_threads();
             this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount });
+          }
         }
         else if (this.task == 'addressbook') {
           this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0));
 
-          if (response.action == 'list') {
+          if (response.action == 'list' || response.action == 'search') {
             this.enable_command('group-create', this.env.address_sources[this.env.source].groups);
             this.enable_command('group-rename', 'group-delete', this.env.address_sources[this.env.source].groups && this.env.group);
             this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount });

--
Gitblit v1.9.1