diff --git a/src/gui/scan_setup.cpp b/src/gui/scan_setup.cpp index 4f114d7bd..becc8600c 100644 --- a/src/gui/scan_setup.cpp +++ b/src/gui/scan_setup.cpp @@ -332,11 +332,16 @@ int CScanSetup::exec(CMenuTarget* parent, const std::string &actionKey) //...then start scan CScanTs scanTs(delsys); scanTs.exec(NULL, scants_key[i]); +#if 0 /* FIXME save fst version. other than fast scan will reset it to 0 to disable fast scan updates */ scansettings.fst_version = CServiceScan::getInstance()->GetFstVersion(); - if (is_wizard && as == "fast") - return menu_return::RETURN_EXIT_ALL; +#endif + if (as == "fast") { + scansettings.fst_update = 1; + if (is_wizard) + return menu_return::RETURN_EXIT_ALL; + } return res; } } @@ -1285,13 +1290,16 @@ void CScanSetup::addScanMenuFastScan(CMenuWidget *fast_ScanMenu) fastType->setHint("", LOCALE_MENU_HINT_SCAN_FASTTYPE); fast_ScanMenu->addItem(fastType); #endif + CMenuOptionChooser* fastUp = new CMenuOptionChooser(LOCALE_SATSETUP_FASTSCAN_UPDATE, (int *)&scansettings.fst_update, OPTIONS_OFF0_ON1_OPTIONS, OPTIONS_OFF0_ON1_OPTION_COUNT, true, NULL, CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN, true); + fastUp->setHint("", LOCALE_MENU_HINT_SCAN_FASTUPDATE); + fast_ScanMenu->addItem(fastUp); fast_ScanMenu->addItem(GenericMenuSeparatorLine); -#if 0 - CMenuForwarder * mf = new CMenuForwarder(LOCALE_SCANTS_STARTNOW, allow_start, NULL, this, "sfast", CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW); - mf->setHint("", LOCALE_MENU_HINT_SCAN_START); + + CMenuForwarder * mf = new CMenuForwarder(LOCALE_SATSETUP_FASTSCAN_AUTO_DISEQC, allow_start, NULL, this, "fastdiseqc", CRCInput::RC_yellow, NEUTRINO_ICON_BUTTON_YELLOW); + mf->setHint("", LOCALE_MENU_HINT_SCAN_FASTDISEQC); fast_ScanMenu->addItem(mf); -#endif - CMenuForwarder * mf = new CMenuForwarder(LOCALE_SATSETUP_FASTSCAN_AUTO_DISEQC, allow_start, NULL, this, "fastdiseqc", CRCInput::RC_green, NEUTRINO_ICON_BUTTON_GREEN); + + mf = new CMenuForwarder(LOCALE_SCANTS_STARTNOW, allow_start, NULL, this, "sfast", CRCInput::RC_blue, NEUTRINO_ICON_BUTTON_BLUE); mf->setHint("", LOCALE_MENU_HINT_SCAN_START); fast_ScanMenu->addItem(mf); } diff --git a/src/neutrino.cpp b/src/neutrino.cpp index 476fd3180..13f4c08c5 100644 --- a/src/neutrino.cpp +++ b/src/neutrino.cpp @@ -3444,7 +3444,7 @@ void CNeutrinoApp::standbyMode( bool bOnOff, bool fromDeepStandby ) // Active standby on powerManager->SetStandby(false, false); CEpgScan::getInstance()->Start(true); - if (scansettings.fst_version) + if (scansettings.fst_update) fst_timer = g_RCInput->addTimer(30*1000*1000, true); } else { // Active standby off @@ -4224,7 +4224,7 @@ void CNeutrinoApp::Cleanup() void CNeutrinoApp::CheckFastScan(bool standby, bool reload) { - if (scansettings.fst_version) { + if (scansettings.fst_update) { g_Zapit->getMode(); INFO("fst version %02x (%s)", scansettings.fst_version, standby ? "force" : "check"); CServiceScan::getInstance()->QuietFastScan(true); diff --git a/src/system/settings.cpp b/src/system/settings.cpp index 789de117f..33f0d42f6 100644 --- a/src/system/settings.cpp +++ b/src/system/settings.cpp @@ -154,6 +154,7 @@ bool CScanSettings::loadSettings(const char * const fileName) fast_type = configfile.getInt32("fast_type", 2); fast_op = configfile.getInt32("fast_op", 0); fst_version = configfile.getInt32("fst_version", 0); + fst_update = configfile.getInt32("fst_update", 0); cable_nid = configfile.getInt32("cable_nid", 0); return ret; @@ -174,6 +175,7 @@ bool CScanSettings::saveSettings(const char * const fileName) configfile.setInt32("fast_type", fast_type); configfile.setInt32("fast_op", fast_op); configfile.setInt32("fst_version", fst_version); + configfile.setInt32("fst_update", fst_update); configfile.setInt32("cable_nid", cable_nid); configfile.setString("satName", satName); diff --git a/src/system/settings.h b/src/system/settings.h index ef7cf8434..663093fc9 100644 --- a/src/system/settings.h +++ b/src/system/settings.h @@ -783,6 +783,7 @@ class CScanSettings int fast_type; int fast_op; int fst_version; + int fst_update; int cable_nid; std::string satName;