diff options
author | louis <louis.braun@gmx.de> | 2015-03-20 16:20:42 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-03-20 16:20:42 +0100 |
commit | 9a3b32cd54c53dadc6b5512b1ed1684ebe2a104d (patch) | |
tree | 40f5726d1ec1cebb631636ed12e140cdeaef42c1 | |
parent | e6eea29fda90b7151fb459c353394155287da4df (diff) | |
download | vdr-plugin-tvguideng-9a3b32cd54c53dadc6b5512b1ed1684ebe2a104d.tar.gz vdr-plugin-tvguideng-9a3b32cd54c53dadc6b5512b1ed1684ebe2a104d.tar.bz2 |
fixed bug that recmenu was not hide when displaying detailed view in some cases
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | recmenuview.c | 18 | ||||
-rw-r--r-- | recmenuview.h | 4 | ||||
-rw-r--r-- | tvguidengosd.c | 5 |
4 files changed, 17 insertions, 12 deletions
@@ -10,5 +10,7 @@ Version 0.0.2 - fixed bug that timemanager does not use configured display time - fixed crash if a channel group is empty - fixed display of background if recmenu was hidden +- fixed bug that recmenu was not hide when displaying detailed view + in some cases diff --git a/recmenuview.c b/recmenuview.c index 5f20197..bf34ca0 100644 --- a/recmenuview.c +++ b/recmenuview.c @@ -76,17 +76,21 @@ void cRecMenuView::Close(void) { active = false;
}
-void cRecMenuView::Hide(void) {
- if (recMenuViewBuffer)
- recMenuViewBuffer->Deactivate(true);
- else
+void cRecMenuView::Hide(bool full) {
+ if (recMenuViewBuffer) {
+ recMenuViewBuffer->Deactivate(true);
+ if (full)
+ recMenuView->Deactivate(true);
+ } else
recMenuView->Deactivate(true);
}
-void cRecMenuView::Activate(void) {
- if (recMenuViewBuffer)
+void cRecMenuView::Activate(bool full) {
+ if (recMenuViewBuffer) {
recMenuViewBuffer->Activate();
- else
+ if (full)
+ recMenuView->Activate();
+ } else
recMenuView->Activate();
}
diff --git a/recmenuview.h b/recmenuview.h index dfc526c..3cfb1d7 100644 --- a/recmenuview.h +++ b/recmenuview.h @@ -33,8 +33,8 @@ public: void DisplayRecMenu(const cEvent *event);
void DisplayFavorites(void);
void Close(void);
- void Hide(void);
- void Activate(void);
+ void Hide(bool full = false);
+ void Activate(bool full = false);
eOSState ProcessKey(eKeys Key);
void Flush(void) { activeMenu->Flush(); };
const cEvent *GetEvent(void) { return displayEvent; };
diff --git a/tvguidengosd.c b/tvguidengosd.c index c49f816..36a738e 100644 --- a/tvguidengosd.c +++ b/tvguidengosd.c @@ -122,7 +122,6 @@ eOSState cTVGuideOSD::ProcessKey(eKeys Key) { detailView->Flush(); } } else { - //EPG Grid is active switch (Key & ~k_Repeat) { case kBack: @@ -432,7 +431,7 @@ void cTVGuideOSD::DetailView(const cEvent *e) { return; epgGrid->Deactivate(true); if (recMenuView->Active()) - recMenuView->Hide(); + recMenuView->Hide(true); cOsdView *dV = GetOsdView(viRootView, viDetailView); detailView = new cDetailView(dV, e); detailView->Draw(); @@ -446,7 +445,7 @@ void cTVGuideOSD::CloseDetailedView(void) { epgGrid->Activate(); epgGrid->Flush(); if (recMenuView->Active()) { - recMenuView->Activate(); + recMenuView->Activate(true); recMenuView->Flush(); } } |