CUserMenu: using native callback to ensure paint for info clock after hide of this menu window

menu->hide() handler comes too early, nice to see if clock is transparent.


Origin commit data
------------------
Branch: ni/coolstream
Commit: 42102d432d
Author: Thilo Graf <dbt@novatux.de>
Date: 2015-11-18 (Wed, 18 Nov 2015)



------------------
This commit was generated by Migit
This commit is contained in:
2015-11-18 19:53:30 +01:00
parent d9ee22231b
commit 6b38f03efe

View File

@@ -163,15 +163,21 @@ bool CUserMenu::showUserMenu(neutrino_msg_t msg)
if (menu == NULL)
return true;
/*
using native callback to ensure paint for info clock after hide of this menu window
menu->hide() handler comes too early, nice to see if clock is transparent.
*/
menu->OnAfterHide.connect(sigc::mem_fun(CInfoClock::getInstance(), &CInfoClock::block));
if (button < COL_BUTTONMAX)
menu->setSelected(user_menu[button].selected);
//show cancel button if configured
if (g_settings.personalize[SNeutrinoSettings::P_UMENU_SHOW_CANCEL])
menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
else
menu->addItem(GenericMenuSeparator);
bool _mode_ts = CNeutrinoApp::getInstance()->getMode() == NeutrinoMessages::mode_ts;
std::string itemstr_last("1");
@@ -454,7 +460,6 @@ bool CUserMenu::showUserMenu(neutrino_msg_t msg)
extern CInfoClock *InfoClock;
InfoClock->enableInfoClock(false);
// show menu if there are more than 2 items only
// otherwise, we start the item directly (must be the last one)
if (menu_items > 1 )