Improve search responsiveness with a throttle

This commit is contained in:
trawzified
2023-12-27 18:30:01 +01:00
parent 9c7d0d8738
commit d361753c2f

View File

@ -1,4 +1,5 @@
using System.Reactive.Disposables;
using System;
using System.Reactive.Disposables;
using System.Reactive.Linq;
using System.Windows;
using ReactiveUI;
@ -44,7 +45,10 @@ namespace Wabbajack
.DisposeWith(dispose);
this.BindStrict(ViewModel, vm => vm.Search, x => x.SearchBox.Text)
this.WhenAny(x => x.SearchBox.Text)
.Throttle(TimeSpan.FromSeconds(0.2), RxApp.TaskpoolScheduler)
.Select(x => x?.Trim())
.BindToStrict(this, x => x.ViewModel.Search)
.DisposeWith(dispose);
this.BindStrict(ViewModel, vm => vm.OnlyInstalled, x => x.OnlyInstalledCheckbox.IsChecked)