diff --git a/Terminal.Gui/Views/TreeView.cs b/Terminal.Gui/Views/TreeView.cs index e5bc56b37..1611d8c95 100644 --- a/Terminal.Gui/Views/TreeView.cs +++ b/Terminal.Gui/Views/TreeView.cs @@ -1079,17 +1079,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; + } } ///