From 2baae49a12e55fa4fe20d993d00e95f42bcc7501 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Mon, 2 Nov 2020 17:28:51 +0000 Subject: [PATCH] fix nullable reference type warnings. --- src/Avalonia.Input/KeyboardDevice.cs | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/Avalonia.Input/KeyboardDevice.cs b/src/Avalonia.Input/KeyboardDevice.cs index 43a44331a7..099fc74766 100644 --- a/src/Avalonia.Input/KeyboardDevice.cs +++ b/src/Avalonia.Input/KeyboardDevice.cs @@ -43,9 +43,9 @@ namespace Avalonia.Input } } - private void ClearFocusWithinAncestors(IInputElement element) + private void ClearFocusWithinAncestors(IInputElement? element) { - IInputElement el = element; + var el = element; while (el != null) { @@ -60,16 +60,16 @@ namespace Avalonia.Input private void ClearFocusWithin(IInputElement element, bool clearRoot) { - foreach (IInputElement el in element.VisualChildren) + foreach (var visual in element.VisualChildren) { - if (el.IsKeyboardFocusWithin) + if (visual is IInputElement el && el.IsKeyboardFocusWithin) { ClearFocusWithin(el, true); break; } } - if(clearRoot) + if (clearRoot) { if (element is InputElement ie) { @@ -78,7 +78,7 @@ namespace Avalonia.Input } } - private void SetIsFocusWithin(IInputElement oldElement, IInputElement newElement) + private void SetIsFocusWithin(IInputElement? oldElement, IInputElement? newElement) { if (newElement == null && oldElement != null) { @@ -88,7 +88,7 @@ namespace Avalonia.Input IInputElement? branch = null; - IInputElement? el = newElement; + var el = newElement; while (el != null) { @@ -101,7 +101,7 @@ namespace Avalonia.Input el = (IInputElement)el.VisualParent; } - el = oldElement!; + el = oldElement; if (el != null && branch != null) { @@ -121,17 +121,18 @@ namespace Avalonia.Input } } - private void ClearChildrenFocusWithin(IInputElement element,bool clearRoot) + private void ClearChildrenFocusWithin(IInputElement element, bool clearRoot) { - foreach (IInputElement el in element.VisualChildren) + foreach (var visual in element.VisualChildren) { - if (el.IsKeyboardFocusWithin) + if (visual is IInputElement el && el.IsKeyboardFocusWithin) { ClearChildrenFocusWithin(el, true); break; } } - if(clearRoot && element is InputElement ie) + + if (clearRoot && element is InputElement ie) { ie.IsKeyboardFocusWithin = false; }