Browse Source

Fix some warnings

pull/10492/head
Max Katz 3 years ago
parent
commit
2473bb8408
  1. 1
      src/Avalonia.Base/Input/MouseDevice.cs
  2. 3
      src/Avalonia.Base/Input/PenDevice.cs
  3. 2
      src/Avalonia.Base/Input/PointerEventArgs.cs
  4. 14
      src/Avalonia.Base/Input/PointerOverPreProcessor.cs
  5. 1
      src/Avalonia.Base/Input/TouchDevice.cs

1
src/Avalonia.Base/Input/MouseDevice.cs

@ -4,6 +4,7 @@ using Avalonia.Reactive;
using Avalonia.Input.Raw;
using Avalonia.Platform;
using Avalonia.Utilities;
#pragma warning disable CS0618
namespace Avalonia.Input
{

3
src/Avalonia.Base/Input/PenDevice.cs

@ -4,6 +4,7 @@ using System.Linq;
using System.Reflection;
using Avalonia.Input.Raw;
using Avalonia.Platform;
#pragma warning disable CS0618
namespace Avalonia.Input
{
@ -129,7 +130,7 @@ namespace Avalonia.Input
var e = new PointerReleasedEventArgs(source, pointer, (Visual)root, p, timestamp, properties, inputModifiers,
_lastMouseDownButton);
source?.RaiseEvent(e);
source.RaiseEvent(e);
pointer.Capture(null);
_lastMouseDownButton = default;
return e.Handled;

2
src/Avalonia.Base/Input/PointerEventArgs.cs

@ -42,7 +42,9 @@ namespace Avalonia.Input
PointerPointProperties properties,
KeyModifiers modifiers,
Lazy<IReadOnlyList<RawPointerPoint>?>? previousPoints)
#pragma warning disable CS0618
: this(routedEvent, source, pointer, rootVisual, rootVisualPosition, timestamp, properties, modifiers)
#pragma warning restore CS0618
{
_previousPoints = previousPoints;
}

14
src/Avalonia.Base/Input/PointerOverPreProcessor.cs

@ -42,14 +42,14 @@ namespace Avalonia.Input
}
if (args.Type is RawPointerEventType.LeaveWindow or RawPointerEventType.NonClientLeftButtonDown
&& _currentPointer is (var lastPointer, var lastPosition))
&& _currentPointer is var (lastPointer, lastPosition))
{
_currentPointer = null;
ClearPointerOver(lastPointer, args.Root, 0, PointToClient(args.Root, lastPosition),
new PointerPointProperties(args.InputModifiers, args.Type.ToUpdateKind()),
args.InputModifiers.ToKeyModifiers());
}
else if (pointerDevice.TryGetPointer(args) is IPointer pointer
else if (pointerDevice.TryGetPointer(args) is { } pointer
&& pointer.Type != PointerType.Touch)
{
var element = pointer.Captured ?? args.InputHitTestResult;
@ -101,9 +101,11 @@ namespace Avalonia.Input
// Do not pass rootVisual, when we have unknown position,
// so GetPosition won't return invalid values.
#pragma warning disable CS0618
var e = new PointerEventArgs(InputElement.PointerExitedEvent, element, pointer,
position.HasValue ? root as Visual : null, position.HasValue ? position.Value : default,
timestamp, properties, inputModifiers);
#pragma warning restore CS0618
if (element is Visual v && !v.IsAttachedToVisualTree)
{
@ -130,11 +132,11 @@ namespace Avalonia.Input
{
if (element is Visual v)
{
foreach (IInputElement el in v.VisualChildren)
foreach (var el in v.VisualChildren)
{
if (el.IsPointerOver)
if (el is IInputElement { IsPointerOver: true } child)
{
ClearChildrenPointerOver(e, el, true);
ClearChildrenPointerOver(e, child, true);
break;
}
}
@ -189,8 +191,10 @@ namespace Avalonia.Input
el = root.PointerOverElement;
#pragma warning disable CS0618
var e = new PointerEventArgs(InputElement.PointerExitedEvent, el, pointer, (Visual)root, position,
timestamp, properties, inputModifiers);
#pragma warning restore CS0618
if (el is Visual v && branch != null && !v.IsAttachedToVisualTree)
{
ClearChildrenPointerOver(e, branch, false);

1
src/Avalonia.Base/Input/TouchDevice.cs

@ -4,6 +4,7 @@ using System.Linq;
using System.Reflection;
using Avalonia.Input.Raw;
using Avalonia.Platform;
#pragma warning disable CS0618
namespace Avalonia.Input
{

Loading…
Cancel
Save