channelist: keep channellist in users display/desc mode until exit

Origin commit data
------------------
Commit: 2a69b29463
Author: vanhofen <vanhofen@gmx.de>
Date: 2019-08-20 (Tue, 20 Aug 2019)

Origin message was:
------------------
- channelist: keep channellist in users display/desc mode until exit
This commit is contained in:
vanhofen
2019-08-20 22:52:14 +02:00
parent 545886a665
commit 598b40c230
3 changed files with 31 additions and 5 deletions

View File

@@ -136,6 +136,9 @@ CChannelList::CChannelList(const char * const pName, bool phistoryMode, bool _vl
channelsChanged = false;
liveBouquet = false;
displayMode = DISPLAY_MODE_NOW; // always start with current events
descMode = false; // always start with event list
paint_events_index = -2;
CFrameBuffer::getInstance()->OnAfterSetPallette.connect(sigc::mem_fun(this, &CChannelList::ResetModules));
CNeutrinoApp::getInstance()->OnAfterSetupFonts.connect(sigc::mem_fun(this, &CChannelList::ResetModules));
@@ -479,8 +482,9 @@ int CChannelList::doChannelMenu(void)
int CChannelList::exec()
{
displayMode = DISPLAY_MODE_NOW; // always start with current events
descMode = false; // always start with event list
displayMode = g_settings.channellist_displaymode;
descMode = g_settings.channellist_descmode;
int nNewChannel = show();
if ( nNewChannel > -1 && nNewChannel < (int) (*chanlist).size()) {
if(this->historyMode && (*chanlist)[nNewChannel]) {
@@ -620,7 +624,9 @@ int CChannelList::show()
new_zap_mode = g_settings.channellist_new_zap_mode;
calcSize();
displayMode = DISPLAY_MODE_NOW;
displayMode = g_settings.channellist_displaymode;
descMode = g_settings.channellist_descmode;
COSDFader fader(g_settings.theme.menu_Content_alpha);
fader.StartFadeIn();
@@ -870,10 +876,13 @@ int CChannelList::show()
if (displayMode == DISPLAY_MODE_MAX)
displayMode = DISPLAY_MODE_NOW;
g_settings.channellist_displaymode = displayMode;
if (g_settings.channellist_additional)
{
// show event description per default in primetime mode only
descMode = (displayMode == DISPLAY_MODE_PRIME) ? true : false;
g_settings.channellist_descmode = descMode;
}
paint();
@@ -897,6 +906,7 @@ int CChannelList::show()
if (g_settings.channellist_additional)
{
descMode = !descMode;
g_settings.channellist_descmode = descMode;
paint();
}
}
@@ -2731,7 +2741,13 @@ void CChannelList::editMode(bool enable)
if (!bouquet || !bouquet->zapitBouquet)
return;
// reset displaymode
g_settings.channellist_displaymode = DISPLAY_MODE_NOW;
displayMode = DISPLAY_MODE_NOW;
// reset descmode
g_settings.channellist_descmode = false;
descMode = false;
edit_state = enable;
printf("STATE: %s\n", edit_state ? "EDIT" : "SHOW");
bool tvmode = CZapit::getInstance()->getMode() & CZapitClient::MODE_TV;

View File

@@ -860,6 +860,8 @@ int CNeutrinoApp::loadSetup(const char * fname)
g_settings.channellist_additional = configfile.getInt32("channellist_additional", 1); //default no minitv
g_settings.eventlist_additional = configfile.getInt32("eventlist_additional", 1); //NI
g_settings.eventlist_epgplus = configfile.getInt32("eventlist_epgplus", 1);
g_settings.channellist_displaymode = DISPLAY_MODE_NOW;
g_settings.channellist_descmode = false;
g_settings.channellist_epgtext_align_right = configfile.getBool("channellist_epgtext_align_right" , false);
g_settings.channellist_foot = configfile.getInt32("channellist_foot", 1); //default next Event
g_settings.channellist_new_zap_mode = configfile.getInt32("channellist_new_zap_mode", 0);
@@ -3356,7 +3358,6 @@ int CNeutrinoApp::showChannelList(const neutrino_msg_t _msg, bool from_menu)
InfoIcons->enableInfoIcons(false); //NI InfoIcons
StopSubtitles();
//_show:
int nNewChannel = -1;
int old_b = bouquetList->getActiveBouquetNumber();
t_channel_id old_id = 0;
@@ -3366,7 +3367,10 @@ int CNeutrinoApp::showChannelList(const neutrino_msg_t _msg, bool from_menu)
int old_mode = GetChannelMode();
printf("CNeutrinoApp::showChannelList: bouquetList %p size %d old_b %d\n", bouquetList, (int)bouquetList->Bouquets.size(), old_b);fflush(stdout);
//_show:
// reset display mode and description mode of channellist
g_settings.channellist_displaymode = DISPLAY_MODE_NOW;
g_settings.channellist_descmode = false;
if(msg == CRCInput::RC_ok)
{
if( !bouquetList->Bouquets.empty() && bouquetList->Bouquets[old_b]->channelList->getSize() > 0)
@@ -3645,6 +3649,10 @@ int CNeutrinoApp::handleMsg(const neutrino_msg_t _msg, neutrino_msg_data_t data)
if( msg == CRCInput::RC_ok || msg == (neutrino_msg_t) g_settings.key_zaphistory || msg == (neutrino_msg_t) g_settings.key_current_transponder
|| (!g_InfoViewer->getSwitchMode() && CNeutrinoApp::getInstance()->listModeKey(msg))) {
if( (mode == NeutrinoModes::mode_tv) || (mode == NeutrinoModes::mode_radio) || (mode == NeutrinoModes::mode_ts) || (mode == NeutrinoModes::mode_webtv) || (mode == NeutrinoModes::mode_webradio)) {
// reset displaymode and descmode of channellist
g_settings.channellist_displaymode = DISPLAY_MODE_NOW;
g_settings.channellist_descmode = false;
showChannelList(msg);
return messages_return::handled;
}

View File

@@ -660,6 +660,8 @@ struct SNeutrinoSettings
CHANNELLIST_ADDITIONAL_MODE_MINITV = 2
};
int channellist_additional;
int channellist_displaymode;
bool channellist_descmode;
int channellist_epgtext_align_right;
int channellist_foot;
int channellist_new_zap_mode;