diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2017-04-03 12:49:56 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2017-04-03 12:49:56 +0200 |
commit | e622854789ff8a521dc837379147b6e851d52875 (patch) | |
tree | d71cfde84e762e40d3413576e94b073afff5e2b3 /osdbase.c | |
parent | 792b9dc45fd68f6f0f0db4073982303171dbfb08 (diff) | |
download | vdr-e622854789ff8a521dc837379147b6e851d52875.tar.gz vdr-e622854789ff8a521dc837379147b6e851d52875.tar.bz2 |
cOsdMenu::Display() now checks whether the OSD size has changed and if so calls SetDisplayMenu()
Diffstat (limited to 'osdbase.c')
-rw-r--r-- | osdbase.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osdbase.c 4.1 2015/09/10 11:23:07 kls Exp $ + * $Id: osdbase.c 4.2 2017/04/03 12:30:52 kls Exp $ */ #include "osdbase.h" @@ -77,6 +77,7 @@ void cOsdObject::Show(void) cSkinDisplayMenu *cOsdMenu::displayMenu = NULL; int cOsdMenu::displayMenuCount = 0; +int cOsdMenu::osdState = 0; cOsdMenu::cOsdMenu(const char *Title, int c0, int c1, int c2, int c3, int c4) { @@ -96,8 +97,10 @@ cOsdMenu::cOsdMenu(const char *Title, int c0, int c1, int c2, int c3, int c4) helpRed = helpGreen = helpYellow = helpBlue = NULL; helpDisplayed = false; status = NULL; - if (!displayMenuCount++) + if (!displayMenuCount++) { + cOsdProvider::OsdSizeChanged(osdState); // to get the current state SetDisplayMenu(); + } } cOsdMenu::~cOsdMenu() @@ -226,6 +229,8 @@ void cOsdMenu::Display(void) subMenu->Display(); return; } + if (cOsdProvider::OsdSizeChanged(osdState)) + SetDisplayMenu(); displayMenu->SetMessage(mtStatus, NULL); displayMenu->Clear(); cStatus::MsgOsdClear(); |