Working player contained within main page and control delegated to viewmodels

This commit is contained in:
watsonb8
2019-11-08 19:54:51 -05:00
parent 794b4739b1
commit 63efcdad69
7 changed files with 134 additions and 75 deletions

View File

@ -39,7 +39,7 @@ namespace Aurora.Design.Views.Party
SetState(PartyState.SelectingHost);
PlayCommand = new Command(PlayExecute);
PlayCommand = new Command(OnPlayExecute);
//Hook up event handler
ClientService.Instance.EventReceived += this.OnEventReceived;
@ -182,7 +182,7 @@ namespace Aurora.Design.Views.Party
Port = derivedEvent.Member.Port
};
AddMember(member);
Members.Add(member);
break;
}
@ -315,8 +315,6 @@ namespace Aurora.Design.Views.Party
//Leave party
LeavePartyRequest leaveReq = new LeavePartyRequest();
await ClientService.Instance.RemotePartyClient.LeavePartyAsync(leaveReq);
}
/// <summary>
@ -339,16 +337,27 @@ namespace Aurora.Design.Views.Party
OnPropertyChanged("IsNotSelectingHost");
}
private void AddMember(PartyMember member)
public override async void OnPlayExecute()
{
Members.Add(member);
}
public async void PlayExecute()
{
await PlayerService.Instance.LoadMedia(_selectedSong);
await PlayerService.Instance.LoadMedia(_selectedSong).ConfigureAwait(true);
PlayerService.Instance.Play();
}
public override bool CanPlayExecute()
{
return this._state == PartyState.Hosting;
}
public override bool CanNextExecute()
{
return this._state == PartyState.Hosting;
}
public override bool CanPreviousExecute()
{
return this._state == PartyState.Hosting;
}
#endregion Private Methods
}
}