summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--channelepg.c4
-rw-r--r--channelepg.h2
-rw-r--r--config.c2
-rw-r--r--config.h1
-rw-r--r--po/ca_ES.po17
-rw-r--r--po/de_DE.po17
-rw-r--r--po/it_IT.po17
-rw-r--r--po/ru_RU.po17
-rw-r--r--po/sk_SK.po17
-rw-r--r--setup.c2
-rw-r--r--tvguideosd.c44
-rw-r--r--tvguideosd.h2
12 files changed, 89 insertions, 53 deletions
diff --git a/channelepg.c b/channelepg.c
index 37713e6..d915386 100644
--- a/channelepg.c
+++ b/channelepg.c
@@ -130,9 +130,11 @@ int cChannelEpg::getY() {
return geoManager.statusHeaderHeight + geoManager.timeLineHeight + num*geoManager.rowHeight;
}
-cGridElement *cChannelEpg::getActive() {
+cGridElement *cChannelEpg::getActive(bool last) {
cTimeManager t;
t.Now();
+ if (last)
+ return grids.Last();
for (cGridElement *grid = grids.First(); grid; grid = grids.Next(grid)) {
if (grid->Match(t.Get()))
return grid;
diff --git a/channelepg.h b/channelepg.h
index 4f20bc9..6d648b4 100644
--- a/channelepg.h
+++ b/channelepg.h
@@ -42,7 +42,7 @@ public:
int Stop() { return timeManager->GetEnd(); };
const char* Name() { return channel->Name(); };
const cChannel *getChannel() {return channel;}
- cGridElement *getActive();
+ cGridElement *getActive(bool last = false);
cGridElement *getNext(cGridElement *activeGrid);
cGridElement *getPrev(cGridElement *activeGrid);
cGridElement *getNeighbor(cGridElement *activeGrid);
diff --git a/config.c b/config.c
index 56eb831..532d842 100644
--- a/config.c
+++ b/config.c
@@ -2,6 +2,7 @@
#include "config.h"
cTVGuideConfig::cTVGuideConfig() {
+ useHWAccel = false;
debugImageLoading = 0;
showMainMenuEntry = 1;
replaceOriginalSchedule = 0;
@@ -243,6 +244,7 @@ cString cTVGuideConfig::checkSlashAtEnd(std::string path) {
bool cTVGuideConfig::SetupParse(const char *Name, const char *Value) {
if (strcmp(Name, "timeFormat") == 0) timeFormat = atoi(Value);
else if (strcmp(Name, "debugImageLoading") == 0) debugImageLoading = atoi(Value);
+ else if (strcmp(Name, "useHWAccel") == 0) useHWAccel = atoi(Value);
else if (strcmp(Name, "showMainMenuEntry") == 0) showMainMenuEntry = atoi(Value);
else if (strcmp(Name, "replaceOriginalSchedule") == 0) replaceOriginalSchedule = atoi(Value);
else if (strcmp(Name, "useNopacityTheme") == 0) useNopacityTheme = atoi(Value);
diff --git a/config.h b/config.h
index 277c637..2f723e2 100644
--- a/config.h
+++ b/config.h
@@ -49,6 +49,7 @@ class cTVGuideConfig {
public:
cTVGuideConfig();
~cTVGuideConfig();
+ int useHWAccel;
int debugImageLoading;
int showMainMenuEntry;
int replaceOriginalSchedule;
diff --git a/po/ca_ES.po b/po/ca_ES.po
index a6a2014..3a2c5a7 100644
--- a/po/ca_ES.po
+++ b/po/ca_ES.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-tvguide 0.0.1\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2019-04-22 14:34+0200\n"
+"POT-Creation-Date: 2019-11-03 12:37+0100\n"
"PO-Revision-Date: 2013-09-21 17:49+0200\n"
"Last-Translator: My friend <Sampep> Thanks David <Gabychan> <gbonich@gmail.com>\n"
"Language-Team: \n"
@@ -99,12 +99,6 @@ msgstr ""
msgid "recordings done"
msgstr ""
-msgid "What's on now"
-msgstr ""
-
-msgid "What's on next"
-msgstr ""
-
msgid "Instant Record"
msgstr "Enregistra a l'instant"
@@ -567,6 +561,12 @@ msgstr "No s'han trobat gravacions per"
msgid "No Favorites available"
msgstr ""
+msgid "What's on now"
+msgstr ""
+
+msgid "What's on next"
+msgstr ""
+
msgid "whole term must appear"
msgstr "expressió completa"
@@ -675,6 +675,9 @@ msgstr "si existeix"
msgid "always"
msgstr "sempre"
+msgid "Use workaround for HWAccelerated OSD"
+msgstr ""
+
msgid "Show Main Menu Entry"
msgstr "Mostra entrada del menú principal"
diff --git a/po/de_DE.po b/po/de_DE.po
index 082c58c..b0f1af0 100644
--- a/po/de_DE.po
+++ b/po/de_DE.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-tvguide 0.0.1\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2019-04-22 14:34+0200\n"
+"POT-Creation-Date: 2019-11-03 12:37+0100\n"
"PO-Revision-Date: 2012-08-25 17:49+0200\n"
"Last-Translator: Horst\n"
"Language-Team: \n"
@@ -96,12 +96,6 @@ msgstr "aktive Timer"
msgid "recordings done"
msgstr "erledigte Aufnahmen"
-msgid "What's on now"
-msgstr "Was läuft jetzt?"
-
-msgid "What's on next"
-msgstr "Was läuft als nächstes?"
-
msgid "Instant Record"
msgstr "Aufnahme"
@@ -564,6 +558,12 @@ msgstr "Keine Aufnahmen gefunden für"
msgid "No Favorites available"
msgstr "Keine Favoriten verfügbar"
+msgid "What's on now"
+msgstr "Was läuft jetzt?"
+
+msgid "What's on next"
+msgstr "Was läuft als nächstes?"
+
msgid "whole term must appear"
msgstr "vollständiger Ausdruck"
@@ -672,6 +672,9 @@ msgstr "falls vorhanden"
msgid "always"
msgstr "immer"
+msgid "Use workaround for HWAccelerated OSD"
+msgstr ""
+
msgid "Show Main Menu Entry"
msgstr "Hauptmenüeintrag anzeigen"
diff --git a/po/it_IT.po b/po/it_IT.po
index a21e02d..b24c735 100644
--- a/po/it_IT.po
+++ b/po/it_IT.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-tvguide 0.0.1\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2019-04-22 14:34+0200\n"
+"POT-Creation-Date: 2019-11-03 12:37+0100\n"
"PO-Revision-Date: 2012-08-25 17:49+0200\n"
"Last-Translator: fiveten_59\n"
"Language-Team: \n"
@@ -96,12 +96,6 @@ msgstr "Timers attivi"
msgid "recordings done"
msgstr "registrazione eseguita"
-msgid "What's on now"
-msgstr "Was läuft jetzt?"
-
-msgid "What's on next"
-msgstr "Was läuft als nächstes?"
-
msgid "Instant Record"
msgstr "Registrazione immediata"
@@ -564,6 +558,12 @@ msgstr "Nessuna registrazione trovata per"
msgid "No Favorites available"
msgstr "Nessun Favoriti disponibile"
+msgid "What's on now"
+msgstr "Was läuft jetzt?"
+
+msgid "What's on next"
+msgstr "Was läuft als nächstes?"
+
msgid "whole term must appear"
msgstr "vollständiger Ausdruck"
@@ -672,6 +672,9 @@ msgstr "se esiste"
msgid "always"
msgstr "sempre"
+msgid "Use workaround for HWAccelerated OSD"
+msgstr ""
+
msgid "Show Main Menu Entry"
msgstr "Hauptmenüeintrag anzeigen"
diff --git a/po/ru_RU.po b/po/ru_RU.po
index c668d4c..9bcb94c 100644
--- a/po/ru_RU.po
+++ b/po/ru_RU.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-tvguide 1.0.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2019-04-22 14:34+0200\n"
+"POT-Creation-Date: 2019-11-03 12:37+0100\n"
"PO-Revision-Date: 2013-09-25 17:49+0400\n"
"Last-Translator: AmiD, ilya\n"
"Language-Team: Russia-Cherepovets(wm.amid@gmail.com)\n"
@@ -96,12 +96,6 @@ msgstr ""
msgid "recordings done"
msgstr ""
-msgid "What's on now"
-msgstr ""
-
-msgid "What's on next"
-msgstr ""
-
msgid "Instant Record"
msgstr "Записать"
@@ -564,6 +558,12 @@ msgstr "Не найдено записей:"
msgid "No Favorites available"
msgstr ""
+msgid "What's on now"
+msgstr ""
+
+msgid "What's on next"
+msgstr ""
+
msgid "whole term must appear"
msgstr "фраза"
@@ -672,6 +672,9 @@ msgstr "если существует"
msgid "always"
msgstr "всегда"
+msgid "Use workaround for HWAccelerated OSD"
+msgstr ""
+
msgid "Show Main Menu Entry"
msgstr "Показывать пункт в главном меню"
diff --git a/po/sk_SK.po b/po/sk_SK.po
index 317b851..c962053 100644
--- a/po/sk_SK.po
+++ b/po/sk_SK.po
@@ -3,7 +3,7 @@ msgid ""
msgstr ""
"Project-Id-Version: vdr-tvguide 1.1.0\n"
"Report-Msgid-Bugs-To: <see README>\n"
-"POT-Creation-Date: 2019-04-22 14:34+0200\n"
+"POT-Creation-Date: 2019-11-03 12:37+0100\n"
"PO-Revision-Date: 2013-09-15 00:12+0100\n"
"Last-Translator: Milan Hrala <hrala.milan@gmail.com>\n"
"Language-Team: \n"
@@ -96,12 +96,6 @@ msgstr ""
msgid "recordings done"
msgstr ""
-msgid "What's on now"
-msgstr ""
-
-msgid "What's on next"
-msgstr ""
-
msgid "Instant Record"
msgstr "Okamite nahra"
@@ -564,6 +558,12 @@ msgstr "Nenali sa nahrvky s nzvom "
msgid "No Favorites available"
msgstr ""
+msgid "What's on now"
+msgstr ""
+
+msgid "What's on next"
+msgstr ""
+
msgid "whole term must appear"
msgstr "kompletn vraz"
@@ -672,6 +672,9 @@ msgstr "ak s k dispozcii"
msgid "always"
msgstr "vdy"
+msgid "Use workaround for HWAccelerated OSD"
+msgstr ""
+
msgid "Show Main Menu Entry"
msgstr "Zobrazi v hlavnom menu"
diff --git a/setup.c b/setup.c
index 6bb040c..c42eb62 100644
--- a/setup.c
+++ b/setup.c
@@ -60,6 +60,7 @@ void cTvguideSetup::Store(void) {
SetupStore("debugImageLoading", config.debugImageLoading);
SetupStore("useNopacityTheme", config.useNopacityTheme);
SetupStore("themeIndex", config.themeIndex);
+ SetupStore("useHWAccel", config.useHWAccel);
SetupStore("showMainMenuEntry", config.showMainMenuEntry);
SetupStore("replaceOriginalSchedule", config.replaceOriginalSchedule);
SetupStore("displayMode", config.displayMode);
@@ -203,6 +204,7 @@ cMenuSetupGeneral::cMenuSetupGeneral(cTVGuideConfig* data) : cMenuSetupSubMenu(
void cMenuSetupGeneral::Set(void) {
int currentItem = Current();
Clear();
+ Add(new cMenuEditBoolItem(tr("Use workaround for HWAccelerated OSD"), &tmpConfig->useHWAccel));
Add(new cMenuEditBoolItem(tr("Show Main Menu Entry"), &tmpConfig->showMainMenuEntry));
Add(new cMenuEditBoolItem(tr("Replace VDR Schedules Menu"), &tmpConfig->replaceOriginalSchedule));
Add(new cMenuEditBoolItem(tr("Use appropriate nOpacity Theme"), &tmpConfig->useNopacityTheme));
diff --git a/tvguideosd.c b/tvguideosd.c
index cd86544..fc64eae 100644
--- a/tvguideosd.c
+++ b/tvguideosd.c
@@ -195,7 +195,7 @@ void cTvGuideOsd::drawGridsChannelJump(int offset) {
}
}
-void cTvGuideOsd::drawGridsTimeJump() {
+void cTvGuideOsd::drawGridsTimeJump(bool last) {
if (columns.Count() == 0)
return;
cChannelEpg *colActive = NULL;
@@ -209,7 +209,7 @@ void cTvGuideOsd::drawGridsTimeJump() {
column->readGrids();
column->drawGrids();
}
- activeGrid = colActive->getActive();
+ activeGrid = colActive->getActive(last);
if (activeGrid) {
activeGrid->SetActive();
activeGrid->Draw();
@@ -372,12 +372,19 @@ void cTvGuideOsd::timeForward() {
void cTvGuideOsd::ScrollForward() {
timeManager->AddStep(config.stepMinutes);
- timeLine->drawDateViewer();
- timeLine->setTimeline();
- for (cChannelEpg *column = columns.First(); column; column = columns.Next(column)) {
- column->AddNewGridsAtEnd();
- column->ClearOutdatedStart();
- column->drawGrids();
+ if (config.useHWAccel) {
+ drawGridsTimeJump(true);
+ timeLine->drawDateViewer();
+ timeLine->drawClock();
+ timeLine->setTimeline();
+ } else {
+ timeLine->drawDateViewer();
+ timeLine->setTimeline();
+ for (cChannelEpg *column = columns.First(); column; column = columns.Next(column)) {
+ column->AddNewGridsAtEnd();
+ column->ClearOutdatedStart();
+ column->drawGrids();
+ }
}
}
@@ -406,13 +413,20 @@ void cTvGuideOsd::ScrollBack() {
bool tooFarInPast = timeManager->DelStep(config.stepMinutes);
if (tooFarInPast)
return;
- timeLine->drawDateViewer();
- timeLine->setTimeline();
- for (cChannelEpg *column = columns.First(); column; column = columns.Next(column)) {
- column->AddNewGridsAtStart();
- column->ClearOutdatedEnd();
- column->drawGrids();
- }
+ if (config.useHWAccel) {
+ drawGridsTimeJump();
+ timeLine->drawDateViewer();
+ timeLine->drawClock();
+ timeLine->setTimeline();
+ } else {
+ timeLine->drawDateViewer();
+ timeLine->setTimeline();
+ for (cChannelEpg *column = columns.First(); column; column = columns.Next(column)) {
+ column->AddNewGridsAtStart();
+ column->ClearOutdatedEnd();
+ column->drawGrids();
+ }
+ }
}
void cTvGuideOsd::processKeyUp() {
diff --git a/tvguideosd.h b/tvguideosd.h
index 9ff4c2f..f7027f5 100644
--- a/tvguideosd.h
+++ b/tvguideosd.h
@@ -31,7 +31,7 @@ private:
void drawOsd();
void readChannels(const cChannel *channelStart);
void drawGridsChannelJump(int offset = 0);
- void drawGridsTimeJump();
+ void drawGridsTimeJump(bool last = false);
void processKeyUp();
void processKeyDown();
void processKeyLeft();