|
|
@ -33,7 +33,7 @@ namespace Avalonia.Android.Platform.Specific.Helpers |
|
|
return null; |
|
|
return null; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
RawMouseEventType? mouseEventType = null; |
|
|
RawPointerEventType? mouseEventType = null; |
|
|
var eventTime = DateTime.Now; |
|
|
var eventTime = DateTime.Now; |
|
|
//Basic touch support
|
|
|
//Basic touch support
|
|
|
switch (e.Action) |
|
|
switch (e.Action) |
|
|
@ -42,17 +42,17 @@ namespace Avalonia.Android.Platform.Specific.Helpers |
|
|
//may be bot flood the evnt system with too many event especially on not so powerfull mobile devices
|
|
|
//may be bot flood the evnt system with too many event especially on not so powerfull mobile devices
|
|
|
if ((eventTime - _lastTouchMoveEventTime).TotalMilliseconds > 10) |
|
|
if ((eventTime - _lastTouchMoveEventTime).TotalMilliseconds > 10) |
|
|
{ |
|
|
{ |
|
|
mouseEventType = RawMouseEventType.Move; |
|
|
mouseEventType = RawPointerEventType.Move; |
|
|
} |
|
|
} |
|
|
break; |
|
|
break; |
|
|
|
|
|
|
|
|
case MotionEventActions.Down: |
|
|
case MotionEventActions.Down: |
|
|
mouseEventType = RawMouseEventType.LeftButtonDown; |
|
|
mouseEventType = RawPointerEventType.LeftButtonDown; |
|
|
|
|
|
|
|
|
break; |
|
|
break; |
|
|
|
|
|
|
|
|
case MotionEventActions.Up: |
|
|
case MotionEventActions.Up: |
|
|
mouseEventType = RawMouseEventType.LeftButtonUp; |
|
|
mouseEventType = RawPointerEventType.LeftButtonUp; |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -75,14 +75,14 @@ namespace Avalonia.Android.Platform.Specific.Helpers |
|
|
//we need to generate mouse move before first mouse down event
|
|
|
//we need to generate mouse move before first mouse down event
|
|
|
//as this is the way buttons are working every time
|
|
|
//as this is the way buttons are working every time
|
|
|
//otherwise there is a problem sometimes
|
|
|
//otherwise there is a problem sometimes
|
|
|
if (mouseEventType == RawMouseEventType.LeftButtonDown) |
|
|
if (mouseEventType == RawPointerEventType.LeftButtonDown) |
|
|
{ |
|
|
{ |
|
|
var me = new RawMouseEventArgs(mouseDevice, (uint)eventTime.Ticks, inputRoot, |
|
|
var me = new RawPointerEventArgs(mouseDevice, (uint)eventTime.Ticks, inputRoot, |
|
|
RawMouseEventType.Move, _point, InputModifiers.None); |
|
|
RawPointerEventType.Move, _point, InputModifiers.None); |
|
|
_view.Input(me); |
|
|
_view.Input(me); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
var mouseEvent = new RawMouseEventArgs(mouseDevice, (uint)eventTime.Ticks, inputRoot, |
|
|
var mouseEvent = new RawPointerEventArgs(mouseDevice, (uint)eventTime.Ticks, inputRoot, |
|
|
mouseEventType.Value, _point, InputModifiers.LeftMouseButton); |
|
|
mouseEventType.Value, _point, InputModifiers.LeftMouseButton); |
|
|
_view.Input(mouseEvent); |
|
|
_view.Input(mouseEvent); |
|
|
|
|
|
|
|
|
|