diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index 632d04907..21d5c86fb 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -773,6 +773,7 @@ miscsettings.shutdown_real_rcdelay Verzögertes Ausschalten miscsettings.sleeptimer Ausschalten nach Inaktivität miscsettings.sptsmode SPTS-Mode Treiber laden miscsettings.virtual_zap_mode Virtual Zap +miscsettings.zapto_pre_time Umschaltstart-Korrektur motorcontrol.calc_positions Positionen (Neu)-Berechne(n)) motorcontrol.disable_limit Deaktiviere (soft) Limit motorcontrol.drive_mode Fahr-Modus diff --git a/data/locale/english.locale b/data/locale/english.locale index 14ecada58..ba524e2d1 100644 --- a/data/locale/english.locale +++ b/data/locale/english.locale @@ -773,6 +773,7 @@ miscsettings.shutdown_real_rcdelay Delayed shutdown miscsettings.sleeptimer Inactivity shutdown timer miscsettings.sptsmode use spts mode miscsettings.virtual_zap_mode Virtual zap +miscsettings.zapto_pre_time Zapto Start Time Correction motorcontrol.calc_positions (Re)-Calculate Positions motorcontrol.disable_limit Disable (soft) Limits motorcontrol.drive_mode Drive Mode diff --git a/src/gui/epgplus.cpp b/src/gui/epgplus.cpp index fe4c7c3eb..0a74e3db3 100644 --- a/src/gui/epgplus.cpp +++ b/src/gui/epgplus.cpp @@ -1319,7 +1319,7 @@ int EpgPlus::MenuTargetAddReminder::exec (CMenuTarget * /*parent*/, const std::s && (!(*It)->channelEvent.description.empty()) ) { if (g_Timerd->isTimerdAvailable()) { - g_Timerd->addZaptoTimerEvent (this->epgPlus->selectedChannelEntry->channel->channel_id, (*It)->channelEvent.startTime, (*It)->channelEvent.startTime - ANNOUNCETIME, 0, (*It)->channelEvent.eventID, (*It)->channelEvent.startTime, 0); + g_Timerd->addZaptoTimerEvent (this->epgPlus->selectedChannelEntry->channel->channel_id, (*It)->channelEvent.startTime - (g_settings.zapto_pre_time * 60), (*It)->channelEvent.startTime - ANNOUNCETIME - (g_settings.zapto_pre_time * 60), 0, (*It)->channelEvent.eventID, (*It)->channelEvent.startTime, 0); ShowMsgUTF (LOCALE_TIMER_EVENTTIMED_TITLE, g_Locale->getText (LOCALE_TIMER_EVENTTIMED_MSG) , CMessageBox::mbrBack, CMessageBox::mbBack, NEUTRINO_ICON_INFO); // UTF-8 diff --git a/src/gui/epgview.cpp b/src/gui/epgview.cpp index 5b036b22e..90691dbfc 100644 --- a/src/gui/epgview.cpp +++ b/src/gui/epgview.cpp @@ -877,8 +877,8 @@ int CEpgData::show(const t_channel_id channel_id, uint64_t a_id, time_t* a_start if (g_Timerd->isTimerdAvailable()) { g_Timerd->addZaptoTimerEvent(channel_id, - epgData.epg_times.startzeit, - epgData.epg_times.startzeit - ANNOUNCETIME, 0, + epgData.epg_times.startzeit - (g_settings.zapto_pre_time * 60), + epgData.epg_times.startzeit - ANNOUNCETIME - (g_settings.zapto_pre_time * 60), 0, epgData.eventID, epgData.epg_times.startzeit, 0); ShowLocalizedMessage(LOCALE_TIMER_EVENTTIMED_TITLE, LOCALE_TIMER_EVENTTIMED_MSG, CMessageBox::mbrBack, CMessageBox::mbBack, NEUTRINO_ICON_INFO); timeoutEnd = CRCInput::calcTimeoutEnd(g_settings.timing[SNeutrinoSettings::TIMING_EPG]); diff --git a/src/gui/eventlist.cpp b/src/gui/eventlist.cpp index 25c1d5f9c..543c66faf 100644 --- a/src/gui/eventlist.cpp +++ b/src/gui/eventlist.cpp @@ -526,9 +526,10 @@ int EventList::exec(const t_channel_id channel_id, const std::string& channelnam continue; } // FIXME g_Timerd->addZaptoTimerEvent(evtlist[selected].sub ? GET_CHANNEL_ID_FROM_EVENT_ID(evtlist[selected].eventID) : channel_id, + g_Timerd->addZaptoTimerEvent(channel_id, - evtlist[selected].startTime, - evtlist[selected].startTime - ANNOUNCETIME, 0, + evtlist[selected].startTime - (g_settings.zapto_pre_time * 60), + evtlist[selected].startTime - ANNOUNCETIME - (g_settings.zapto_pre_time * 60), 0, evtlist[selected].eventID, evtlist[selected].startTime, 0); ShowLocalizedMessage(LOCALE_TIMER_EVENTTIMED_TITLE, LOCALE_TIMER_EVENTTIMED_MSG, CMessageBox::mbrBack, CMessageBox::mbBack, NEUTRINO_ICON_INFO); timerlist.clear(); diff --git a/src/gui/miscsettings_menu.cpp b/src/gui/miscsettings_menu.cpp index 338a958a2..1588b604d 100644 --- a/src/gui/miscsettings_menu.cpp +++ b/src/gui/miscsettings_menu.cpp @@ -234,7 +234,7 @@ void CMiscMenue::showMiscSettingsMenuGeneral(CMenuWidget *ms_general) //standby after boot ms_general->addItem(new CMenuOptionChooser(LOCALE_EXTRA_START_TOSTANDBY, &g_settings.power_standby, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); ms_general->addItem(new CMenuOptionChooser(LOCALE_EXTRA_CACHE_TXT, (int *)&g_settings.cacheTXT, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true)); - + ms_general->addItem(new CMenuOptionNumberChooser(LOCALE_MISCSETTINGS_ZAPTO_PRE_TIME, &g_settings.zapto_pre_time, true, 0, 10)); //fan speed if (g_info.has_fan) { diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 5383320a0..fdc82fd8e 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -709,6 +709,7 @@ printf("***************************** rec dir %s timeshift dir %s\n", g_settings g_settings.cacheTXT = configfile.getInt32( "cacheTXT", 0); g_settings.minimode = configfile.getInt32( "minimode", 0); g_settings.mode_clock = configfile.getInt32( "mode_clock", 0); + g_settings.zapto_pre_time = configfile.getInt32( "zapto_pre_time", 0); g_settings.virtual_zap_mode = configfile.getBool("virtual_zap_mode" , false); g_settings.spectrum = configfile.getBool("spectrum" , false); g_settings.channellist_epgtext_align_right = configfile.getBool("channellist_epgtext_align_right" , false); @@ -1238,6 +1239,7 @@ void CNeutrinoApp::saveSetup(const char * fname) configfile.setInt32( "minimode", g_settings.minimode ); configfile.setInt32( "mode_clock", g_settings.mode_clock ); configfile.setBool("virtual_zap_mode", g_settings.virtual_zap_mode); + configfile.setInt32( "zapto_pre_time", g_settings.zapto_pre_time ); configfile.setBool("spectrum", g_settings.spectrum); configfile.setBool("channellist_epgtext_align_right", g_settings.channellist_epgtext_align_right); configfile.setBool("channellist_extended" , g_settings.channellist_extended); diff --git a/src/system/locals.h b/src/system/locals.h index ec45968cf..27d804ec9 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -800,6 +800,7 @@ typedef enum LOCALE_MISCSETTINGS_SLEEPTIMER, LOCALE_MISCSETTINGS_SPTSMODE, LOCALE_MISCSETTINGS_VIRTUAL_ZAP_MODE, + LOCALE_MISCSETTINGS_ZAPTO_PRE_TIME, LOCALE_MOTORCONTROL_CALC_POSITIONS, LOCALE_MOTORCONTROL_DISABLE_LIMIT, LOCALE_MOTORCONTROL_DRIVE_MODE, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index 619ec4b2b..fd0ba3ad7 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -800,6 +800,7 @@ const char * locale_real_names[] = "miscsettings.sleeptimer", "miscsettings.sptsmode", "miscsettings.virtual_zap_mode", + "miscsettings.zapto_pre_time", "motorcontrol.calc_positions", "motorcontrol.disable_limit", "motorcontrol.drive_mode", diff --git a/src/system/settings.h b/src/system/settings.h index 69c0b678f..9c863d114 100644 --- a/src/system/settings.h +++ b/src/system/settings.h @@ -60,6 +60,7 @@ struct SNeutrinoSettings char shutdown_min[4]; char record_safety_time_before[3]; char record_safety_time_after[3]; + int zapto_pre_time; int infobar_sat_display; int infobar_subchan_disp_pos; int misc_spts;