From 5d1b33f41aef0b8a58162626d0dccade454a2a0c Mon Sep 17 00:00:00 2001 From: Jumar Macato Date: Fri, 13 Apr 2018 21:20:26 +0800 Subject: [PATCH] Remove the 2nd Observable.Tick and merge the transitions and animations timer. --- src/Avalonia.Animation/Keyframes/KeyFrames.cs | 2 -- src/Avalonia.Animation/Timing.cs | 6 ++++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Avalonia.Animation/Keyframes/KeyFrames.cs b/src/Avalonia.Animation/Keyframes/KeyFrames.cs index 97f6397831..34576beb7d 100644 --- a/src/Avalonia.Animation/Keyframes/KeyFrames.cs +++ b/src/Avalonia.Animation/Keyframes/KeyFrames.cs @@ -47,8 +47,6 @@ namespace Avalonia.Animation.Keyframes }); } - - /// /// Get the nearest pair of cue-time ordered keyframes /// according to the given time parameter. diff --git a/src/Avalonia.Animation/Timing.cs b/src/Avalonia.Animation/Timing.cs index 715a2e7afb..47e2537e9c 100644 --- a/src/Avalonia.Animation/Timing.cs +++ b/src/Avalonia.Animation/Timing.cs @@ -33,7 +33,9 @@ namespace Avalonia.Animation /// static Timing() { - AnimationTimer = Observable.Interval(Tick, AvaloniaScheduler.Instance) + var globalTimer = Observable.Interval(Tick, AvaloniaScheduler.Instance); + + AnimationTimer = globalTimer .Select(_ => { switch (_globalState) @@ -49,7 +51,7 @@ namespace Avalonia.Animation .Publish() .RefCount(); - TransitionsTimer = Observable.Interval(Tick, AvaloniaScheduler.Instance) + TransitionsTimer = globalTimer .Select(p => _transitionsFrameCount += 1) .Publish() .RefCount();