#include "guilib/Key.h"
#include "dialogs/GUIDialogPVRChannelManager.h"
+#ifdef HAS_VIDEO_PLAYBACK
+#include "cores/VideoRenderers/RenderManager.h"
+#endif
+
using namespace std;
using namespace MUSIC_INFO;
using namespace PVR;
m_channelGroups->SetLastPlayedGroup(group);
bPersistChanges = true;
+
+ // store channel settings
+ g_application.SaveFileState();
}
m_addons->CloseStream();
m_channelGroups->SetLastPlayedGroup(GetPlayingGroup(currentChannel->IsRadio()));
}
- // store channel settings
- SaveCurrentChannelSettings();
-
// will be deleted by CPVRChannelSwitchJob::DoWork()
CFileItem* previousFile = m_currentFile;
m_currentFile = NULL;
// switch successful
bSwitched = true;
+ // save previous and load new channel's settings
+ g_application.SaveFileState();
+ g_application.LoadVideoSettings(channel.Path());
+
+ // reload the render manager so view mode gets changed
+ g_renderManager.PreInit();
+
CSingleLock lock(m_critSection);
m_currentFile = new CFileItem(channel);
m_bIsSwitchingChannels = false;