private static void ShowSkipOSD() { MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); ISuperLayerManager superLayerManager = ServiceRegistration.Get <ISuperLayerManager>(); superLayerManager.ShowSuperLayer(SKIP_OSD_SUPERLAYER_SCREEN_NAME, TimeSpan.FromSeconds(settings.SkipStepTimeout)); }
public override void Save() { base.Save(); MediaModelSettings settings = SettingsManager.Load <MediaModelSettings>(); settings.SkipStepList = _value; SettingsManager.Save(settings); }
public override void Save() { base.Save(); MediaModelSettings settings = SettingsManager.Load <MediaModelSettings>(); settings.InstantSkipPercent = _value; SettingsManager.Save(settings); }
public override void Save() { base.Save(); MediaModelSettings settings = SettingsManager.Load <MediaModelSettings>(); settings.OpenPlayerConfigInOsd = _yes; SettingsManager.Save(settings); }
public override void Save() { base.Save(); MediaModelSettings settings = SettingsManager.Load <MediaModelSettings>(); settings.PreferInstantSkipSeconds = _yes; SettingsManager.Save(settings); }
public override void Save() { base.Save(); MediaModelSettings settings = SettingsManager.Load <MediaModelSettings>(); settings.ClosePlayerWhenFinished = _yes; SettingsManager.Save(settings); UpdatePlayerContexts(); }
private void ReSetSkipTimer() { ShowSkipOSD(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); if (_skipStepTimer == null) { _skipStepTimer = new DelayedEvent(settings.SkipStepTimeout * 1000); _skipStepTimer.OnEventHandler += SkipStepTimerElapsed; } _skipStepTimer.EnqueueEvent(this, EventArgs.Empty); }
public override void ToggleOSD() { if (IsOSDVisible) { MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); if (settings.OpenPlayerConfigInOsd) { PlayerConfigurationDialogModel.OpenPlayerConfigurationDialog(); _isOsdOpenOnDemand = true; return; } } base.ToggleOSD(); }
/// <summary> /// Called from the skin if the user invokes the "InstantSkip" action. This will start the InstantSkip in the /// underlaying player. /// </summary> public void InstantSkipBackward() { IPlayerContext pc = GetPlayerContext(); if (pc == null) { return; } ClearSkipTimer(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); pc.InstantSkip(-(int)settings.InstantSkipPercent); }
protected static void CompletePlayOrEnqueue(IPlayerContext pc, bool play) { IPlayerContextManager pcm = ServiceRegistration.Get <IPlayerContextManager>(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); pc.CloseWhenFinished = settings.ClosePlayerWhenFinished; // Has to be done before starting the media item, else the slot will not close in case of an error / when the media item cannot be played if (play) { pc.Play(); if (pc.AVType == AVType.Video) { pcm.ShowFullscreenContent(true); } } }
protected static Task CompletePlayOrEnqueue(IPlayerContext pc, bool play, IResumeState resumeState = null) { IPlayerContextManager pcm = ServiceRegistration.Get <IPlayerContextManager>(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); pc.CloseWhenFinished = settings.ClosePlayerWhenFinished; // Has to be done before starting the media item, else the slot will not close in case of an error / when the media item cannot be played if (play) { if (resumeState != null) { pc.SetContextVariable(PlayerContext.KEY_RESUME_STATE, resumeState); } pc.Play(); if (pc.AVType == AVType.Video || pc.AVType == AVType.Audio) { pcm.ShowFullscreenContent(true); } } return(Task.CompletedTask); }
private void InitSkipSteps() { MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); String stepList = settings.SkipStepList; _skipSteps.Clear(); foreach (string step in stepList.Split(new char[] { ',' })) { int stepValue; if (int.TryParse(step, out stepValue)) { _skipSteps.Add(stepValue); } } if (!_skipSteps.Contains(0)) { _skipSteps.Add(0); } _skipSteps.Sort(); }
private void ReSetSkipTimer() { ShowSkipOSD(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); if (_skipStepTimer == null) { _skipStepTimer = new Timer(settings.SkipStepTimeout * 1000) { Enabled = true, AutoReset = false }; _skipStepTimer.Elapsed += SkipStepTimerElapsed; } else { // In case of new user action, reset the timer. _skipStepTimer.Stop(); _skipStepTimer.Start(); } }
/// <summary> /// Called from the skin if the user invokes the "InstantSkip" action. This will start the InstantSkip in the /// underlying player. /// </summary> public void InstantSkipBackward() { IPlayerContext pc = GetPlayerContext(); if (pc == null) { return; } ClearSkipTimer(); MediaModelSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <MediaModelSettings>(); if (settings.PreferInstantSkipSeconds) { pc.SkipRelative(TimeSpan.FromSeconds(-settings.InstantSkipSeconds)); } else { pc.InstantSkip(-(int)settings.InstantSkipPercent); } }