diff --git a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Platform/Apple/SKTouchHandler.cs b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Platform/Apple/SKTouchHandler.cs index 3b88e3ef24..9cd0b2695d 100644 --- a/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Platform/Apple/SKTouchHandler.cs +++ b/source/SkiaSharp.Views.Maui/SkiaSharp.Views.Maui.Core/Platform/Apple/SKTouchHandler.cs @@ -104,7 +104,18 @@ private bool FireEvent(SKTouchAction actionType, UITouch touch, bool inContact) var cgPoint = touch.LocationInView(View); var point = scalePixels(cgPoint.X, cgPoint.Y); - var args = new SKTouchEventArgs(id, actionType, point, inContact); + SKMouseButton mouse = SKMouseButton.Left; + SKTouchDeviceType device = touch.Type switch + { + UITouchType.IndirectPointer => SKTouchDeviceType.Mouse, + UITouchType.Indirect => SKTouchDeviceType.Mouse, + UITouchType.Stylus => SKTouchDeviceType.Pen, + UITouchType.Direct => SKTouchDeviceType.Touch, + _ => SKTouchDeviceType.Touch + + }; + + var args = new SKTouchEventArgs(id, actionType, mouse, device, point, inContact, 0); onTouchAction(args); return args.Handled; }