diff --git a/projects/common/element-components/audio.component.ts b/projects/common/element-components/audio.component.ts index 618810e3c3ea7c677ba0fd9b9a715313bffad2e2..e64ac3ad9d7b3486f21fd0ad020edd75e632f5e5 100644 --- a/projects/common/element-components/audio.component.ts +++ b/projects/common/element-components/audio.component.ts @@ -8,8 +8,8 @@ import { MediaPlayerElementComponent } from '../media-player-element-component.d <div [style.width.%]="100" [style.height.%]="100"> <audio #player - (playing)="mediaPlay.emit(this.elementModel.id)" - (pause)="mediaPause.emit(this.elementModel.id)" + (playing)="mediaPlayStatusChanged.emit(this.elementModel.id)" + (pause)="mediaPlayStatusChanged.emit(null)" [style.width.%]="100" [src]="elementModel.src | safeResourceUrl"> </audio> diff --git a/projects/common/element-components/video.component.ts b/projects/common/element-components/video.component.ts index b77b1db52d197c8f543dbfdc112f25dde329e4b3..a66c8a095149341c51c0e669bdec59df86ad6937 100644 --- a/projects/common/element-components/video.component.ts +++ b/projects/common/element-components/video.component.ts @@ -13,6 +13,8 @@ import { MediaPlayerElementComponent } from '../media-player-element-component.d [src]="elementModel.src | safeResourceUrl"> </video> <app-control-bar class="correct-position" + (playing)="mediaPlayStatusChanged.emit(this.elementModel.id)" + (pause)="mediaPlayStatusChanged.emit(null)" [player]="player" [elementModel]="elementModel" (elementValueChanged)="elementValueChanged.emit($event)"> diff --git a/projects/common/media-player-element-component.directive.ts b/projects/common/media-player-element-component.directive.ts index 3a1870d9a97da95f80ab76ff74a9fff16f394c39..b41e1c282e4d8c90932a27f2e98e8fe84d6e57c5 100644 --- a/projects/common/media-player-element-component.directive.ts +++ b/projects/common/media-player-element-component.directive.ts @@ -5,8 +5,7 @@ import { ElementComponent } from './element-component.directive'; @Directive() export abstract class MediaPlayerElementComponent extends ElementComponent { @Output() elementValueChanged = new EventEmitter<ValueChangeElement>(); - @Output() mediaPlay = new EventEmitter<string>(); - @Output() mediaPause = new EventEmitter<string>(); + @Output() mediaPlayStatusChanged = new EventEmitter<string | null>(); active: boolean = true; diff --git a/projects/player/src/app/components/element-container/element-container.component.ts b/projects/player/src/app/components/element-container/element-container.component.ts index 76a10e81750a7ca91050ab7d5aefbe8ec57805e0..4e0193397c61ececb9c351ae36bb92be82ac6b61 100644 --- a/projects/player/src/app/components/element-container/element-container.component.ts +++ b/projects/player/src/app/components/element-container/element-container.component.ts @@ -102,19 +102,11 @@ export class ElementContainerComponent implements OnInit { }); } - if (elementComponent.mediaPause) { - elementComponent.mediaPause + if (elementComponent.mediaPlayStatusChanged) { + elementComponent.mediaPlayStatusChanged .pipe(takeUntil(this.ngUnsubscribe)) - .subscribe(() => { - this.mediaPlayerService.broadCastPlayChanges(null); - }); - } - - if (elementComponent.mediaPlay) { - elementComponent.mediaPlay - .pipe(takeUntil(this.ngUnsubscribe)) - .subscribe((playId: string) => { - this.mediaPlayerService.broadCastPlayChanges(playId); + .subscribe((playStatus: string | null) => { + this.mediaPlayerService.broadCastPlayChanges(playStatus); }); }