summaryrefslogtreecommitdiffstats
path: root/divelist.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-08-20 06:45:56 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-08-20 06:45:56 -0700
commit5726a50d89d1f76b6bc2cfb96568d41d27f2b63e (patch)
treee192e1d6af12846aa977286491e2096fec2aa4c9 /divelist.c
parent5322b4aac11d2a41247a5a86161c1eb7b7983bc2 (diff)
downloadsubsurface-5726a50d89d1f76b6bc2cfb96568d41d27f2b63e.tar.gz
Improve group selection semantics
Now that the last commit tried to avoid changing the child selections if the selected group partially matched, we should always [un]select all children when we actually decide to change something. Before, it would try to minimize selection damage by stopping [un]selecting when it hit a child that already matched the selection, but since we minimize damage differently, the all-or-nothing approach is better, and gets us sane behavior when the group is collapsed. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'divelist.c')
-rw-r--r--divelist.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/divelist.c b/divelist.c
index 13db0a5fd..ef34b065c 100644
--- a/divelist.c
+++ b/divelist.c
@@ -226,7 +226,7 @@ static void select_dive_group(GtkTreeModel *model, GtkTreeSelection *selection,
first = 0;
dive = get_dive(idx);
if (dive->selected == selected)
- break;
+ continue;
select_dive(dive, selected);
if (selected)