diff options
Diffstat (limited to 'program/js')
-rw-r--r-- | program/js/list.js | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/program/js/list.js b/program/js/list.js index 0b6f416e3..8843cd94a 100644 --- a/program/js/list.js +++ b/program/js/list.js @@ -912,7 +912,8 @@ shift_select: function(id, control) from_rowIndex = this._rowIndex(this.rows[this.shift_start].obj), to_rowIndex = this._rowIndex(to_row.obj); - if (!to_row.expanded && to_row.has_children) + // if we're going down the list, and we hit a thread, and it's closed, select the whole thread + if (from_rowIndex < to_rowIndex && !to_row.expanded && to_row.has_children) if (to_row = this.rows[(this.row_children(id)).pop()]) to_rowIndex = this._rowIndex(to_row.obj); @@ -934,6 +935,7 @@ shift_select: function(id, control) } }, + /** * Helper method to emulate the rowIndex property of non-tr elements */ |