Browse Source

add implementation of mouse events.

repro-window-close
Dan Walmsley 8 years ago
parent
commit
4addfa3db1
  1. 1
      src/Avalonia.DotNetCoreRuntime/Avalonia.DotNetCoreRuntime.csproj
  2. 11
      src/Avalonia.Windowing/Bindings/EventsLoop.cs
  3. 2
      src/Avalonia.Windowing/WindowImpl.cs

1
src/Avalonia.DotNetCoreRuntime/Avalonia.DotNetCoreRuntime.csproj

@ -8,6 +8,7 @@
<ProjectReference Include="..\Avalonia.Controls\Avalonia.Controls.csproj" />
<ProjectReference Include="..\Avalonia.Visuals\Avalonia.Visuals.csproj" />
<ProjectReference Include="..\Gtk\Avalonia.Gtk3\Avalonia.Gtk3.csproj" />
<ProjectReference Include="..\Avalonia.Windowing\Avalonia.Windowing.csproj" />
<ProjectReference Include="..\OSX\Avalonia.MonoMac\Avalonia.MonoMac.csproj" />
<ProjectReference Include="..\Skia\Avalonia.Skia\Avalonia.Skia.csproj" />
<ProjectReference Include="..\Windows\Avalonia.Win32\Avalonia.Win32.csproj" />

11
src/Avalonia.Windowing/Bindings/EventsLoop.cs

@ -5,7 +5,16 @@ namespace Avalonia.Windowing.Bindings
{
public enum MouseEventType : int
{
MouseMoved
LeaveWindow,
LeftButtonDown,
LeftButtonUp,
RightButtonDown,
RightButtonUp,
MiddleButtonDown,
MiddleButtonUp,
Move,
Wheel,
NonClientLeftButtonDown
}
[StructLayout(LayoutKind.Sequential)]

2
src/Avalonia.Windowing/WindowImpl.cs

@ -169,7 +169,7 @@ namespace Avalonia.Windowing
public void OnMouseEvent(MouseEvent evt)
{
Dispatcher.UIThread.RunJobs(DispatcherPriority.Input);
Input(new RawMouseEventArgs(MouseDevice, (uint)Environment.TickCount, _inputRoot, RawMouseEventType.Move, new Point(evt.Position.X, evt.Position.Y), InputModifiers.None));
Input(new RawMouseEventArgs(MouseDevice, (uint)Environment.TickCount, _inputRoot, (RawMouseEventType)evt.EventType, new Point(evt.Position.X, evt.Position.Y), InputModifiers.None));
}
public void OnResizeEvent(ResizeEvent evt)

Loading…
Cancel
Save