Index: TvFullScreen.cs =================================================================== --- TvFullScreen.cs (revision 28100) +++ TvFullScreen.cs (working copy) @@ -482,12 +482,7 @@ } else { - TvMiniGuide miniGuide = (TvMiniGuide)GUIWindowManager.GetWindow((int)Window.WINDOW_MINI_GUIDE); - _isDialogVisible = true; - miniGuide.AutoZap = true; - miniGuide.DoModal(GetID); - _isDialogVisible = false; - + ShowMiniEpg(); // LastChannel has been moved to "0" //if (!GUIWindowManager.IsRouted) //{ @@ -929,6 +924,15 @@ base.OnAction(action); } + private void ShowMiniEpg() + { + TvMiniGuide miniGuide = (TvMiniGuide)GUIWindowManager.GetWindow((int)Window.WINDOW_MINI_GUIDE); + _isDialogVisible = true; + miniGuide.AutoZap = true; + miniGuide.DoModal(GetID); + _isDialogVisible = false; + } + public override void SetObject(object obj) { base.SetObject(obj); @@ -1607,13 +1611,7 @@ case 10104: // MiniEPG { - Log.Debug("get miniguide"); - TvMiniGuide miniGuide = (TvMiniGuide)GUIWindowManager.GetWindow((int)Window.WINDOW_MINI_GUIDE); - _isDialogVisible = true; - Log.Debug("show miniguide"); - miniGuide.DoModal(GetID); - Log.Debug("done miniguide"); - _isDialogVisible = false; + ShowMiniEpg(); break; } @@ -2622,7 +2620,10 @@ // Let the navigator zap channel if needed - TVHome.Navigator.CheckChannelChange(); + if (TVHome.UserChannelChanged) + { + TVHome.Navigator.CheckChannelChange(); + } //Log.Debug("osd visible:{0} timeoutvalue:{1}", _zapOsdVisible ,_zapTimeOutValue); if (_zapOsdVisible && _zapTimeOutValue > 0) { @@ -2828,6 +2829,7 @@ _osdTimeoutTimer = DateTime.Now; if (!_zapOsdVisible) { + TVHome.Navigator.CheckChannelChange(); GUIMessage msg = new GUIMessage(GUIMessage.MessageType.GUI_MSG_WINDOW_INIT, _osdWindow.GetID, 0, 0, GetID, 0, null); _osdWindow.OnMessage(msg); // Send an init msg to the OSD Index: TVHome.cs =================================================================== --- TVHome.cs (revision 28100) +++ TVHome.cs (working copy) @@ -1051,6 +1051,7 @@ public static bool UserChannelChanged { set { _userChannelChanged = value; } + get { return _userChannelChanged; } } public static TVUtil Util @@ -3491,6 +3492,7 @@ finally { StopRenderBlackImage(); + _userChannelChanged = false; } }