Browse Source

WIP

repro-window-close
Nelson Carrillo 8 years ago
parent
commit
c6b09f88ec
  1. 11
      src/Avalonia.Windowing/Bindings/EventsLoop.cs
  2. 12
      src/Avalonia.Windowing/WIndowingPlatform.cs

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

@ -55,16 +55,9 @@ namespace Avalonia.Windowing.Bindings
);
}
static TimerDel del = new TimerDel(() =>
public void RunTimer(TimerDel del)
{
Console.WriteLine("WRK");
});
public void RunTimer()
{
winit_events_loop_timer(
del);
winit_events_loop_timer(del);
}
public void Wakeup()

12
src/Avalonia.Windowing/WIndowingPlatform.cs

@ -7,6 +7,7 @@ using Avalonia.Input;
using Avalonia.Platform;
using Avalonia.Threading;
using Avalonia.Windowing.Bindings;
using static Avalonia.Windowing.Bindings.EventsLoop;
namespace Avalonia.Windowing
{
@ -127,10 +128,17 @@ namespace Avalonia.Windowing
_eventsLoop.Wakeup();
}
private IList<TimerDel> timerTickers = new List<TimerDel>();
public IDisposable StartTimer(DispatcherPriority priority, TimeSpan interval, Action tick)
{
_eventsLoop.RunTimer();
return Disposable.Create(() => { });
var x = new TimerDel(tick);
timerTickers.Add(x);
_eventsLoop.RunTimer(x);
return Disposable.Create(() => {
// timerTickers.Remove(x);
});
}
}
}

Loading…
Cancel
Save