summaryrefslogtreecommitdiff
path: root/coreengine
diff options
context:
space:
mode:
authorPeter Bieringer <pb@bieringer.de>2021-01-21 07:49:35 +0100
committerPeter Bieringer <pb@bieringer.de>2021-01-21 07:49:35 +0100
commit66f090afdbc21750dfcfce73578b0f49d5980437 (patch)
tree1409c39d3645fabfb3328f5e0084e97921a05140 /coreengine
parent4c4b9f78372eeabbd394041b63db71c76eec146d (diff)
downloadvdr-plugin-skindesigner-66f090afdbc21750dfcfce73578b0f49d5980437.tar.gz
vdr-plugin-skindesigner-66f090afdbc21750dfcfce73578b0f49d5980437.tar.bz2
add isUHD to screenresolution
change mechanism to detect video type using screen height instead of guessing height from width
Diffstat (limited to 'coreengine')
-rw-r--r--coreengine/definitions.h2
-rw-r--r--coreengine/viewelementsdisplaychannel.c5
-rw-r--r--coreengine/viewelementsdisplayreplay.c5
3 files changed, 10 insertions, 2 deletions
diff --git a/coreengine/definitions.h b/coreengine/definitions.h
index dccd50e..3516417 100644
--- a/coreengine/definitions.h
+++ b/coreengine/definitions.h
@@ -490,6 +490,7 @@ enum class eDCScreenResolutionIT {
screenwidth = 0,
screenheight,
isHD,
+ isUHD,
isWideScreen,
count
};
@@ -1483,6 +1484,7 @@ enum class eDRRecInfoIT {
screenwidth = 0,
screenheight,
isHD,
+ isUHD,
isWideScreen,
count
};
diff --git a/coreengine/viewelementsdisplaychannel.c b/coreengine/viewelementsdisplaychannel.c
index 7f2d4fa..4b71970 100644
--- a/coreengine/viewelementsdisplaychannel.c
+++ b/coreengine/viewelementsdisplaychannel.c
@@ -453,6 +453,7 @@ void cVeDcScreenResolution::SetTokenContainer(void) {
tokenContainer->DefineIntToken("{screenwidth}", (int)eDCScreenResolutionIT::screenwidth);
tokenContainer->DefineIntToken("{screenheight}", (int)eDCScreenResolutionIT::screenheight);
tokenContainer->DefineIntToken("{isHD}", (int)eDCScreenResolutionIT::isHD);
+ tokenContainer->DefineIntToken("{isUHD}", (int)eDCScreenResolutionIT::isUHD);
tokenContainer->DefineIntToken("{isWideScreen}", (int)eDCScreenResolutionIT::isWideScreen);
InheritTokenContainer();
}
@@ -478,7 +479,8 @@ bool cVeDcScreenResolution::Parse(bool forced) {
SetDirty();
bool isHD = false;
- string resName = GetScreenResolutionString(screenWidth, screenHeight, &isHD);
+ bool isUHD = false;
+ string resName = GetScreenResolutionString(screenWidth, screenHeight, &isHD, &isUHD);
bool isWideScreen = false;
string aspectName = GetScreenAspectString(aspect, &isWideScreen);
@@ -487,6 +489,7 @@ bool cVeDcScreenResolution::Parse(bool forced) {
tokenContainer->AddIntToken((int)eDCScreenResolutionIT::screenwidth, screenWidth);
tokenContainer->AddIntToken((int)eDCScreenResolutionIT::screenheight, screenHeight);
tokenContainer->AddIntToken((int)eDCScreenResolutionIT::isHD, isHD);
+ tokenContainer->AddIntToken((int)eDCScreenResolutionIT::isUHD, isUHD);
tokenContainer->AddIntToken((int)eDCScreenResolutionIT::isWideScreen, isWideScreen);
tokenContainer->AddStringToken((int)eDCScreenResolutionST::resolution, resName.c_str());
tokenContainer->AddStringToken((int)eDCScreenResolutionST::aspect, aspectName.c_str());
diff --git a/coreengine/viewelementsdisplayreplay.c b/coreengine/viewelementsdisplayreplay.c
index a8b98ae..798bd29 100644
--- a/coreengine/viewelementsdisplayreplay.c
+++ b/coreengine/viewelementsdisplayreplay.c
@@ -78,6 +78,7 @@ void cVeDrRecInfo::SetTokenContainer(void) {
tokenContainer->DefineIntToken("{screenwidth}", (int)eDRRecInfoIT::screenwidth);
tokenContainer->DefineIntToken("{screenheight}", (int)eDRRecInfoIT::screenheight);
tokenContainer->DefineIntToken("{isHD}", (int)eDRRecInfoIT::isHD);
+ tokenContainer->DefineIntToken("{isUHD}", (int)eDRRecInfoIT::isUHD);
tokenContainer->DefineIntToken("{isWideScreen}", (int)eDRRecInfoIT::isWideScreen);
InheritTokenContainer();
}
@@ -97,7 +98,8 @@ bool cVeDrRecInfo::Parse(bool force) {
double aspect = 0;
cDevice::PrimaryDevice()->GetVideoSize(screenWidth, screenHeight, aspect);
bool isHD = false;
- string resName = GetScreenResolutionString(screenWidth, screenHeight, &isHD);
+ bool isUHD = false;
+ string resName = GetScreenResolutionString(screenWidth, screenHeight, &isHD, &isUHD);
bool isWideScreen = false;
string aspectName = GetScreenAspectString(aspect, &isWideScreen);
@@ -105,6 +107,7 @@ bool cVeDrRecInfo::Parse(bool force) {
tokenContainer->AddIntToken((int)eDRRecInfoIT::screenwidth, screenWidth);
tokenContainer->AddIntToken((int)eDRRecInfoIT::screenheight, screenHeight);
tokenContainer->AddIntToken((int)eDRRecInfoIT::isHD, isHD);
+ tokenContainer->AddIntToken((int)eDRRecInfoIT::isUHD, isUHD);
tokenContainer->AddIntToken((int)eDRRecInfoIT::isWideScreen, isWideScreen);
tokenContainer->AddStringToken((int)eDRRecInfoST::resolution, resName.c_str());
tokenContainer->AddStringToken((int)eDRRecInfoST::aspect, aspectName.c_str());