mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-31 01:11:06 +02:00
infoviewer: allow to disable pip with RC_help if g_settings.show_ecm_pos is off (thx to mirz)
Origin commit data
------------------
Commit: 24cac7b6a3
Author: vanhofen <vanhofen@gmx.de>
Date: 2019-01-13 (Sun, 13 Jan 2019)
Origin message was:
------------------
- infoviewer: allow to disable pip with RC_help if g_settings.show_ecm_pos is off (thx to mirz)
This commit is contained in:
@@ -2398,6 +2398,7 @@ recordingmenu.multimenu.info_stop_all %d von %d Aufnahmen werden beendet.
|
||||
recordingmenu.multimenu.rec_akt Starte Aufnahme
|
||||
recordingmenu.multimenu.stop_all Alle Aufnahmen beenden
|
||||
recordingmenu.multimenu.timeshift Starte Timeshift
|
||||
recordingmenu.multimenu.timeshift2record Behalte Timeshift-Aufnahme nach Beendigung
|
||||
recordingmenu.off aus
|
||||
recordingmenu.record_is_not_running Keine laufende Aufnahme verfügbar!
|
||||
recordingmenu.record_is_running Aufnahme läuft!
|
||||
|
@@ -134,6 +134,7 @@ CRecordInstance::CRecordInstance(const CTimerd::RecordingInfo * const eventinfo,
|
||||
|
||||
Directory = dir;
|
||||
autoshift = timeshift;
|
||||
move_ts2rec = false;
|
||||
numpids = 0;
|
||||
|
||||
cMovieInfo = new CMovieInfo();
|
||||
@@ -324,7 +325,9 @@ bool CRecordInstance::Stop(bool remove_event)
|
||||
|
||||
CCamManager::getInstance()->Stop(channel_id, CCamManager::RECORD);
|
||||
|
||||
if (autoshift && g_settings.auto_delete)
|
||||
if (autoshift && move_ts2rec)
|
||||
CMoviePlayerGui::getInstance().moveTimeshift();
|
||||
else if (autoshift && g_settings.auto_delete)
|
||||
CMoviePlayerGui::getInstance().deleteTimeshift();
|
||||
|
||||
if(recording_id && remove_event) {
|
||||
@@ -1512,6 +1515,15 @@ int CRecordManager::exec(CMenuTarget* parent, const std::string & actionKey )
|
||||
{
|
||||
StartTimeshift();
|
||||
return menu_return::RETURN_EXIT_ALL;
|
||||
} else if(actionKey == "Timeshift2Record")
|
||||
{
|
||||
for (recmap_iterator_t it = recmap.begin(); it != recmap.end(); it++)
|
||||
{
|
||||
CRecordInstance *inst = it->second;
|
||||
if (inst->Timeshift())
|
||||
inst->move_ts2rec = !inst->move_ts2rec;
|
||||
}
|
||||
return menu_return::RETURN_REPAINT;
|
||||
} else if(actionKey == "Stop_record")
|
||||
{
|
||||
if (!CRecordManager::getInstance()->RecordingStatus())
|
||||
@@ -1553,17 +1565,33 @@ bool CRecordManager::ShowMenu(void)
|
||||
//bool status_rec = rec_mode & RECMODE_REC;
|
||||
|
||||
//record item
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_REC_AKT, true /*!status_rec*/, NULL,
|
||||
this, "Record", CRCInput::RC_red);
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_REC_AKT, true /*!status_rec*/, NULL, this, "Record", CRCInput::RC_red);
|
||||
//if no recordings are running, set the focus to the record menu item
|
||||
menu.addItem(iteml, rec_count == 0 ? true: false);
|
||||
|
||||
//timeshift item
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_TIMESHIFT, !status_ts, NULL,
|
||||
this, "Timeshift", CRCInput::RC_yellow);
|
||||
if (!status_ts)
|
||||
{
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_TIMESHIFT, true /*!status_ts*/, NULL, this, "Timeshift", CRCInput::RC_yellow);
|
||||
}
|
||||
else
|
||||
{
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_TIMESHIFT2RECORD, true, NULL, this, "Timeshift2Record", CRCInput::RC_yellow);
|
||||
for (recmap_iterator_t it = recmap.begin(); it != recmap.end(); it++)
|
||||
{
|
||||
CRecordInstance *inst = it->second;
|
||||
if (inst->Timeshift())
|
||||
{
|
||||
if (inst->move_ts2rec)
|
||||
iteml->iconName_Info_right = NEUTRINO_ICON_MARKER_DIALOG_OK;
|
||||
else
|
||||
iteml->iconName_Info_right = NEUTRINO_ICON_MARKER_DIALOG_OFF;
|
||||
}
|
||||
}
|
||||
}
|
||||
menu.addItem(iteml, false);
|
||||
|
||||
if(rec_count > 0)
|
||||
if (rec_count > 0)
|
||||
{
|
||||
menu.addItem(new CMenuSeparator(CMenuSeparator::LINE | CMenuSeparator::STRING, LOCALE_MAINMENU_RECORDING_STOP));
|
||||
mutex.lock();
|
||||
@@ -1587,7 +1615,8 @@ bool CRecordManager::ShowMenu(void)
|
||||
//define stop key if only one record is running, otherwise define shortcuts
|
||||
neutrino_msg_t rc_key = CRCInput::convertDigitToKey(shortcut++);
|
||||
const char * btn_icon = NEUTRINO_ICON_BUTTON_OKAY;
|
||||
if (rec_count == 1){
|
||||
if (rec_count == 1)
|
||||
{
|
||||
rc_key = CRCInput::RC_stop;
|
||||
btn_icon = NEUTRINO_ICON_BUTTON_STOP;
|
||||
}
|
||||
@@ -1600,11 +1629,10 @@ bool CRecordManager::ShowMenu(void)
|
||||
if (i >= RECORD_MAX_COUNT)
|
||||
break;
|
||||
}
|
||||
if(i > 1) //menu item "stopp all records"
|
||||
if (i > 1) //menu item "stopp all records"
|
||||
{
|
||||
menu.addItem(GenericMenuSeparatorLine);
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_STOP_ALL, true, NULL,
|
||||
this, "StopAll", CRCInput::RC_stop);
|
||||
iteml = new CMenuForwarder(LOCALE_RECORDINGMENU_MULTIMENU_STOP_ALL, true, NULL, this, "StopAll", CRCInput::RC_stop);
|
||||
iteml->setItemButton(NEUTRINO_ICON_BUTTON_STOP, true);
|
||||
|
||||
//if more than one recording is running, set the focus to menu item 'stopp all records'
|
||||
|
@@ -131,6 +131,7 @@ class CRecordInstance
|
||||
const char * GetFileName() { return filename; };
|
||||
bool Timeshift() { return autoshift; };
|
||||
int tshift_mode;
|
||||
bool move_ts2rec;
|
||||
void SetStopMessage(const char* text) {rec_stop_msg = text;} ;
|
||||
//NI
|
||||
#if 0
|
||||
|
@@ -1109,15 +1109,17 @@ void CInfoViewer::loop(bool show_dot)
|
||||
showLivestreamInfo();
|
||||
|
||||
//NI
|
||||
if (msg == CRCInput::RC_help) {
|
||||
if (g_settings.show_ecm_pos) {
|
||||
if (g_settings.show_ecm) {
|
||||
g_settings.show_ecm = 0;
|
||||
ecmInfoBox_hide();
|
||||
} else {
|
||||
g_settings.show_ecm = 1;
|
||||
infoViewerBB->paint_ca_icons(0);
|
||||
}
|
||||
if (msg == CRCInput::RC_help && g_settings.show_ecm_pos)
|
||||
{
|
||||
if (g_settings.show_ecm)
|
||||
{
|
||||
g_settings.show_ecm = 0;
|
||||
ecmInfoBox_hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
g_settings.show_ecm = 1;
|
||||
infoViewerBB->paint_ca_icons(0);
|
||||
}
|
||||
g_RCInput->clearRCMsg();
|
||||
setInfobarTimeout();
|
||||
|
@@ -596,6 +596,7 @@ void CMoviePlayerGui::Cleanup()
|
||||
p_movie_info = NULL;
|
||||
autoshot_done = false;
|
||||
timeshift_deletion = false;
|
||||
timeshift_to_record = false;
|
||||
currentaudioname = "Unk";
|
||||
}
|
||||
|
||||
@@ -2072,18 +2073,36 @@ void CMoviePlayerGui::PlayFileEnd(bool restore)
|
||||
stopped = true;
|
||||
printf("%s: stopped\n", __func__);
|
||||
|
||||
if (timeshift_deletion && (file_name.find("_temp.ts") == file_name.size() - 8))
|
||||
if (file_name.find("_temp.ts") == file_name.size() - 8)
|
||||
{
|
||||
std::string file = file_name;
|
||||
printf("%s: delete %s\n", __func__, file.c_str());
|
||||
unlink(file.c_str());
|
||||
std::string ts_file = file_name;
|
||||
std::string xml_file;
|
||||
CMovieInfo mi;
|
||||
if (mi.convertTs2XmlName(file))
|
||||
if (!mi.convertTs2XmlName(xml_file))
|
||||
xml_file.clear();
|
||||
|
||||
if (timeshift_to_record)
|
||||
{
|
||||
printf("%s: delete %s\n", __func__, file.c_str());
|
||||
unlink(file.c_str());
|
||||
printf("%s: move %s\n", __func__, ts_file.c_str());
|
||||
//move here
|
||||
if (!xml_file.empty())
|
||||
{
|
||||
printf("%s: move %s\n", __func__, xml_file.c_str());
|
||||
//move here
|
||||
}
|
||||
timeshift_to_record = false;
|
||||
}
|
||||
else if (timeshift_deletion)
|
||||
{
|
||||
printf("%s: delete %s\n", __func__, ts_file.c_str());
|
||||
unlink(ts_file.c_str());
|
||||
if (!xml_file.empty())
|
||||
{
|
||||
printf("%s: delete %s\n", __func__, xml_file.c_str());
|
||||
unlink(xml_file.c_str());
|
||||
}
|
||||
timeshift_deletion = false;
|
||||
}
|
||||
timeshift_deletion = false;
|
||||
}
|
||||
|
||||
if (!filelist.empty() && filelist_it != filelist.end()) {
|
||||
|
@@ -175,6 +175,7 @@ class CMoviePlayerGui : public CMenuTarget
|
||||
int menu_ret;
|
||||
bool autoshot_done;
|
||||
bool timeshift_deletion;
|
||||
bool timeshift_to_record;
|
||||
//std::vector<livestream_info_t> liveStreamList;
|
||||
|
||||
/* playback from bookmark */
|
||||
@@ -252,6 +253,7 @@ class CMoviePlayerGui : public CMenuTarget
|
||||
void UpdatePosition();
|
||||
int timeshift;
|
||||
void deleteTimeshift() { timeshift_deletion = true; }
|
||||
void moveTimeshift() { timeshift_to_record = true; }
|
||||
int file_prozent;
|
||||
cPlayback *getPlayback() { return playback; }
|
||||
void SetFile(std::string &name, std::string &file, std::string info1="", std::string info2="") { pretty_name = name; file_name = file; info_1 = info1; info_2 = info2; }
|
||||
|
@@ -2425,6 +2425,7 @@ typedef enum
|
||||
LOCALE_RECORDINGMENU_MULTIMENU_REC_AKT,
|
||||
LOCALE_RECORDINGMENU_MULTIMENU_STOP_ALL,
|
||||
LOCALE_RECORDINGMENU_MULTIMENU_TIMESHIFT,
|
||||
LOCALE_RECORDINGMENU_MULTIMENU_TIMESHIFT2RECORD,
|
||||
LOCALE_RECORDINGMENU_OFF,
|
||||
LOCALE_RECORDINGMENU_RECORD_IS_NOT_RUNNING,
|
||||
LOCALE_RECORDINGMENU_RECORD_IS_RUNNING,
|
||||
|
@@ -2425,6 +2425,7 @@ const char * locale_real_names[] =
|
||||
"recordingmenu.multimenu.rec_akt",
|
||||
"recordingmenu.multimenu.stop_all",
|
||||
"recordingmenu.multimenu.timeshift",
|
||||
"recordingmenu.multimenu.timeshift2record",
|
||||
"recordingmenu.off",
|
||||
"recordingmenu.record_is_not_running",
|
||||
"recordingmenu.record_is_running",
|
||||
|
Reference in New Issue
Block a user