Mercurial > hg > ugly-duckling
changeset 346:f87a96ab1e3f
Back the playing state observable with a ReplaySubject so that animating a play head can be picked up on render
author | Lucas Thompson <dev@lucas.im> |
---|---|
date | Thu, 25 May 2017 17:52:46 +0100 |
parents | ce598b654044 |
children | 82d476b976e0 |
files | src/app/services/audio-player/audio-player.service.ts |
diffstat | 1 files changed, 5 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/app/services/audio-player/audio-player.service.ts Thu May 25 17:51:46 2017 +0100 +++ b/src/app/services/audio-player/audio-player.service.ts Thu May 25 17:52:46 2017 +0100 @@ -1,6 +1,7 @@ import {Injectable, Inject} from '@angular/core'; import {Subject} from 'rxjs/Subject'; import {Observable} from 'rxjs/Observable'; +import {ReplaySubject} from 'rxjs/ReplaySubject'; export interface UrlResourceLifetimeManager { createUrlToResource(resource: File | Blob): string; @@ -39,8 +40,10 @@ 'UrlResourceLifetimeManager' ) private resourceManager: UrlResourceLifetimeManager) { this.currentObjectUrl = ''; - this.playingStateChange = new Subject<boolean>(); - this.playingStateChange$ = this.playingStateChange.asObservable(); + this.playingStateChange = new ReplaySubject<boolean>(1); + this.playingStateChange$ = this.playingStateChange + .asObservable(); + this.seeked = new Subject<number>(); this.seeked$ = this.seeked.asObservable(); this.audioElement.addEventListener('ended', () => {