Browse Source

Gets the height based on the LayoutStyle.

BDisp 5 years ago
parent
commit
f4cae986f3
1 changed files with 3 additions and 3 deletions
  1. 3 3
      Terminal.Gui/Views/ListView.cs

+ 3 - 3
Terminal.Gui/Views/ListView.cs

@@ -214,7 +214,7 @@ namespace Terminal.Gui {
 				OnSelectedChanged ();
 				OnSelectedChanged ();
 				if (selected < top)
 				if (selected < top)
 					top = selected;
 					top = selected;
-				else if (selected >= top + Frame.Height)
+				else if (selected >= top + (LayoutStyle == LayoutStyle.Absolute ? Frame.Height : Height.Anchor (0)))
 					top = selected;
 					top = selected;
 			}
 			}
 		}
 		}
@@ -532,7 +532,7 @@ namespace Terminal.Gui {
 		///<inheritdoc/>
 		///<inheritdoc/>
 		public override bool OnEnter (View view)
 		public override bool OnEnter (View view)
 		{
 		{
-			if (source.Count > 0 && lastSelectedItem == -1) {
+			if (source?.Count > 0 && lastSelectedItem == -1) {
 				OnSelectedChanged ();
 				OnSelectedChanged ();
 				return true;
 				return true;
 			}
 			}
@@ -543,7 +543,7 @@ namespace Terminal.Gui {
 		///<inheritdoc/>
 		///<inheritdoc/>
 		public override bool OnMouseEnter (MouseEvent mouseEvent)
 		public override bool OnMouseEnter (MouseEvent mouseEvent)
 		{
 		{
-			if (source.Count > 0 && selected >= 0 && lastSelectedItem == -1) {
+			if (source?.Count > 0 && selected >= 0 && lastSelectedItem == -1) {
 				lastSelectedItem = selected;
 				lastSelectedItem = selected;
 				return true;
 				return true;
 			}
 			}