Browse Source

Try fixing the sporadic Bindings Exceptions.

pull/1885/head
Jumar Macato 8 years ago
parent
commit
74c8cedde9
No known key found for this signature in database GPG Key ID: B19884DAC3A5BF3F
  1. 7
      src/Avalonia.Animation/Animator`1.cs
  2. 2
      src/Avalonia.Base/Reactive/DisposeOnNextObservable.cs

7
src/Avalonia.Animation/Animator`1.cs

@ -1,14 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reactive.Disposables;
using System.Reactive.Linq;
using Avalonia.Animation.Utils;
using Avalonia.Collections;
using Avalonia.Data;
using Avalonia.Reactive;
namespace Avalonia.Animation
{
/// <summary>
@ -41,8 +39,7 @@ namespace Avalonia.Animation
VerifyConvertKeyFrames();
return match.DistinctUntilChanged()
.ObserveOn(Avalonia.Threading.AvaloniaScheduler.Instance)
.Select(x => x ? RunKeyFrames(animation, control, onComplete) : Disposable.Empty)
.Select(x => x ? RunKeyFrames(animation, control, onComplete) : null)
.DisposeCurrentOnNext()
.Subscribe();
}
@ -172,4 +169,4 @@ namespace Avalonia.Animation
}
}
}
}
}

2
src/Avalonia.Base/Reactive/DisposeOnNextObservable.cs

@ -9,9 +9,9 @@ namespace Avalonia.Reactive
private void ValueNext(T value)
{
this.PublishNext(value);
lastValue?.Dispose();
lastValue = value;
this.PublishNext(value);
}
public void OnCompleted()

Loading…
Cancel
Save