protected void HandlePlayerEnded(IPlayerSlotController psc, uint activationSequence)
        {
            IPlayerContext pc = PlayerContext.GetPlayerContext(psc);

            if (pc == null || !pc.IsValid || psc.ActivationSequence != activationSequence)
            {
                return;
            }
            if (!pc.NextItem())
            {
                if (pc.CloseWhenFinished)
                {
                    pc.Close();
                }
                else
                {
                    psc.Stop();
                }
                if (psc.SlotIndex == PlayerManagerConsts.PRIMARY_SLOT)
                {
                    StepOutOfPlayerWFState(PlayerWFStateType.FullscreenContent);
                }
                if (psc.SlotIndex == CurrentPlayerIndex)
                {
                    StepOutOfPlayerWFState(PlayerWFStateType.CurrentlyPlaying);
                }
            }
        }
        public bool NextItem()
        {
            IPlayerContext playerContext = CurrentPlayerContext;

            if (playerContext == null)
            {
                return(false);
            }
            return(playerContext.NextItem());
        }
        protected void HandlePlayerEnded(IPlayerSlotController psc)
        {
            IPlayerContext pc = PlayerContext.GetPlayerContext(psc);

            if (pc == null || !pc.IsActive)
            {
                return;
            }
            if (!pc.NextItem())
            {
                if (pc.CloseWhenFinished)
                {
                    pc.Close();
                }
                else
                {
                    psc.Stop();
                }
                CheckMediaWorkflowStates_Async();
            }
        }
        protected void HandlePlayerEnded(IPlayerSlotController psc)
        {
            IPlayerContext pc = PlayerContext.GetPlayerContext(psc);

            if (pc == null || !pc.IsActive)
            {
                return;
            }
            HandleProgress(TimeSpan.FromSeconds(-1), pc.CurrentMediaItem, true).Wait();
            if (!pc.NextItem())
            {
                if (pc.CloseWhenFinished)
                {
                    pc.Close();
                }
                else
                {
                    psc.Stop();
                }
                CheckMediaWorkflowStates_Async();
            }
        }