From 84243db8c7bcb0b6cf981a46b409b48c4005842e Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Fri, 05 Apr 2013 09:01:39 -0400
Subject: [PATCH] Fix selecting collapsed rows on select-all (#1489036)

---
 program/js/list.js |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/program/js/list.js b/program/js/list.js
index 6b8bb39..ac3a3bf 100644
--- a/program/js/list.js
+++ b/program/js/list.js
@@ -824,7 +824,7 @@
   for (n in this.rows) {
     if (!filter || this.rows[n][filter] == true) {
       this.last_selected = n;
-      this.highlight_row(n, true);
+      this.highlight_row(n, true, true);
     }
     else {
       $(this.rows[n].obj).removeClass('selected').removeClass('unfocused');
@@ -919,7 +919,7 @@
 /**
  * Highlight/unhighlight a row
  */
-highlight_row: function(id, multiple)
+highlight_row: function(id, multiple, norecur)
 {
   if (!this.rows[id])
     return;
@@ -935,7 +935,7 @@
     if (!this.in_selection(id)) { // select row
       this.selection.push(id);
       $(this.rows[id].obj).addClass('selected');
-      if (!this.rows[id].expanded)
+      if (!norecur && !this.rows[id].expanded)
         this.highlight_children(id, true);
     }
     else { // unselect row
@@ -945,7 +945,7 @@
 
       this.selection = a_pre.concat(a_post);
       $(this.rows[id].obj).removeClass('selected').removeClass('unfocused');
-      if (!this.rows[id].expanded)
+      if (!norecur && !this.rows[id].expanded)
         this.highlight_children(id, false);
     }
   }
@@ -963,7 +963,7 @@
   for (i=0; i<len; i++) {
     selected = this.in_selection(children[i]);
     if ((status && !selected) || (!status && selected))
-      this.highlight_row(children[i], true);
+      this.highlight_row(children[i], true, true);
   }
 },
 

--
Gitblit v1.9.1