Example #1
0
            void MouseEvent(NSEvent ev, RawMouseEventType type)
            {
                BecomeFirstResponder();
                var loc = TranslateLocalPoint(ConvertPointToView(ev.LocationInWindow, this).ToAvaloniaPoint());
                var ts  = GetTimeStamp(ev);
                var mod = GetModifiers(ev.ModifierFlags);

                if (type == RawMouseEventType.Wheel)
                {
                    var delta = GetDelta(ev);
                    // ReSharper disable CompareOfFloatsByEqualityOperator
                    if (delta.X == 0 && delta.Y == 0)
                    {
                        return;
                    }
                    // ReSharper restore CompareOfFloatsByEqualityOperator
                    _tl.OnInput(new RawMouseWheelEventArgs(_mouse, ts, _tl.InputRoot, loc,
                                                           delta, mod));
                }
                else
                {
                    _tl.OnInput(new RawMouseEventArgs(_mouse, ts, _tl.InputRoot, type, loc, mod));
                }
            }