From c9194d119c20496dbb08f794b23dccea0b44cd57 Mon Sep 17 00:00:00 2001 From: Jeremy Grelle Date: Mon, 16 Mar 2009 14:46:47 +0000 Subject: [PATCH] SWF-1066 - ManySelectionTrackingListDataModel and OneSelectionTrackingListDataModel don't track selections correctly when using a component --- .../faces/model/ManySelectionTrackingListDataModel.java | 2 +- .../faces/model/OneSelectionTrackingListDataModel.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java b/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java index aeed1946..c6e9b3d3 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/ManySelectionTrackingListDataModel.java @@ -59,7 +59,7 @@ public class ManySelectionTrackingListDataModel extends SerializableListDataMode } if (rowSelected && !selections.contains(getRowData())) { selections.add(getRowData()); - } else { + } else if (!rowSelected) { selections.remove(getRowData()); } } diff --git a/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java b/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java index dbb496ec..ea53a843 100644 --- a/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java +++ b/spring-faces/src/main/java/org/springframework/faces/model/OneSelectionTrackingListDataModel.java @@ -69,7 +69,7 @@ public class OneSelectionTrackingListDataModel extends SerializableListDataModel } if (!rowSelected) { - selections.clear(); + selections.remove(getRowData()); } else if (rowSelected && !selections.contains(getRowData())) { selections.clear(); selections.add(getRowData());