Fixed GetAllSelectedObjects including SelectedObject when it is hidden by branch collapsing

This commit is contained in:
tznind
2021-02-17 21:08:35 +00:00
parent db3d784a1a
commit 01566fa0a8

View File

@@ -1063,17 +1063,17 @@ namespace Terminal.Gui {
{
var map = BuildLineMap();
if(SelectedObject != null)
yield return SelectedObject;
// To determine multi selected objects, start with the line map, that avoids yielding hidden nodes that were selected then the parent collapsed e.g. programmatically or with mouse click
if(MultiSelect){
foreach(var m in map.Select(b=>b.Model).Where(IsSelected)){
if(m != SelectedObject){
yield return m;
}
yield return m;
}
}
else
{
if(SelectedObject != null)
yield return SelectedObject;
}
}
/// <summary>