protected override void OnPageDestroy(int new_windowId) { SaveSettings(false); GUIWaitCursor.Hide(); if (_mpRestartNeeded) { GUIDialogYesNo dlgYesNo = (GUIDialogYesNo)GUIWindowManager.GetWindow((int)Window.WINDOW_DIALOG_YES_NO); if (dlgYesNo != null) { dlgYesNo.Reset(); dlgYesNo.SetHeading(927); dlgYesNo.SetLine(1, Utility.GetLocalizedText(TextId.RecommendedToRestartMP)); dlgYesNo.SetLine(2, Utility.GetLocalizedText(TextId.RestartMPNow)); dlgYesNo.SetDefaultToYes(true); dlgYesNo.DoModal(GetID); if (dlgYesNo.IsConfirmed) { Utility.RestartMP(); } } } else if (_restartPlayerNeeded) { if (g_Player.Playing && (g_Player.IsTV || g_Player.IsRadio || g_Player.IsTVRecording)) { GUIDialogYesNo dlgYesNo = (GUIDialogYesNo)GUIWindowManager.GetWindow((int)Window.WINDOW_DIALOG_YES_NO); if (dlgYesNo != null) { dlgYesNo.Reset(); dlgYesNo.SetHeading(927); dlgYesNo.SetLine(1, Utility.GetLocalizedText(TextId.RecommendedToStopPlayback)); dlgYesNo.SetLine(2, Utility.GetLocalizedText(TextId.StopPlayBackNow)); dlgYesNo.SetDefaultToYes(true); dlgYesNo.DoModal(GetID); if (dlgYesNo.IsConfirmed) { g_Player.Stop(); } } } } base.OnPageDestroy(new_windowId); }