mirror of
https://github.com/chylex/Discord-History-Tracker.git
synced 2025-10-22 14:23:41 +02:00
18 lines
553 B
C#
18 lines
553 B
C#
using System;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using DHT.Utils.Observables;
|
|
|
|
namespace DHT.Desktop.Common;
|
|
|
|
static class AvaloniaObsevableValueExtensions {
|
|
public static IDisposable SubscribeLastOnUI<T>(this ObservableValue<T> observable, Action<T> action, TimeSpan delayBetweenRuns) {
|
|
Task Action(T value, CancellationToken cancellationToken) {
|
|
action(value);
|
|
return Task.Delay(delayBetweenRuns, cancellationToken);
|
|
}
|
|
|
|
return observable.SubscribeLast(Action, TaskScheduler.FromCurrentSynchronizationContext());
|
|
}
|
|
}
|