From 6201aaf1cde2a0cb83a9f6b20899cd769b43a762 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Thu, 03 Apr 2014 07:08:14 -0400
Subject: [PATCH] Merge branch 'master' of github.com:roundcube/roundcubemail

---
 program/js/list.js                         |    6 +++---
 program/lib/Roundcube/rcube_plugin_api.php |    6 ++++--
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/program/js/list.js b/program/js/list.js
index d54b59d..476edae 100644
--- a/program/js/list.js
+++ b/program/js/list.js
@@ -1035,7 +1035,7 @@
 /**
  * Unselect selected row(s)
  */
-clear_selection: function(id)
+clear_selection: function(id, no_event)
 {
   var n, num_select = this.selection.length;
 
@@ -1057,7 +1057,7 @@
     this.selection = [];
   }
 
-  if (num_select && !this.selection.length)
+  if (num_select && !this.selection.length && !no_event)
     this.triggerEvent('select');
 },
 
@@ -1110,7 +1110,7 @@
 
   if (!multiple) {
     if (this.selection.length > 1 || !this.in_selection(id)) {
-      this.clear_selection();
+      this.clear_selection(null, true);
       this.selection[0] = id;
       $(this.rows[id].obj).addClass('selected');
     }
diff --git a/program/lib/Roundcube/rcube_plugin_api.php b/program/lib/Roundcube/rcube_plugin_api.php
index 461c3cc..feeeb19 100644
--- a/program/lib/Roundcube/rcube_plugin_api.php
+++ b/program/lib/Roundcube/rcube_plugin_api.php
@@ -182,7 +182,7 @@
         }
 
         // plugin already loaded
-        if ($this->plugins[$plugin_name] || class_exists($plugin_name, false)) {
+        if ($this->plugins[$plugin_name]) {
             return true;
         }
 
@@ -190,7 +190,9 @@
             . DIRECTORY_SEPARATOR . $plugin_name . '.php';
 
         if (file_exists($fn)) {
-            include $fn;
+            if (!class_exists($plugin_name, false)) {
+                include $fn;
+            }
 
             // instantiate class if exists
             if (class_exists($plugin_name, false)) {

--
Gitblit v1.9.1