diff --git a/coreengine/viewelementsdisplaychannel.c b/coreengine/viewelementsdisplaychannel.c index 8186e8c..e9157ab 100644 --- a/coreengine/viewelementsdisplaychannel.c +++ b/coreengine/viewelementsdisplaychannel.c @@ -414,6 +414,7 @@ bool cVeDcAudioInfo::Parse(bool forced) { cVeDcScreenResolution::cVeDcScreenResolution(void) { lastScreenWidth = -1; lastScreenHeight = -1; + lastAspect = -1.0f; } cVeDcScreenResolution::~cVeDcScreenResolution(void) { @@ -422,6 +423,7 @@ cVeDcScreenResolution::~cVeDcScreenResolution(void) { void cVeDcScreenResolution::Close(void) { lastScreenWidth = -1; lastScreenHeight = -1; + lastAspect = -1.0f; cViewElement::Close(); } @@ -445,7 +447,7 @@ bool cVeDcScreenResolution::Parse(bool forced) { cDevice::PrimaryDevice()->GetVideoSize(screenWidth, screenHeight, aspect); - if ((lastScreenWidth == screenWidth) && (lastScreenHeight == screenHeight)) + if ((lastScreenWidth == screenWidth) && (lastScreenHeight == screenHeight) && (lastAspect == aspect)) return false; if ((screenWidth == 0) && (screenHeight == 0)) @@ -453,6 +455,7 @@ bool cVeDcScreenResolution::Parse(bool forced) { lastScreenWidth = screenWidth; lastScreenHeight = screenHeight; + lastAspect = aspect; SetDirty(); bool isHD = false; diff --git a/coreengine/viewelementsdisplaychannel.h b/coreengine/viewelementsdisplaychannel.h index 2e0d5a2..88c69be 100644 --- a/coreengine/viewelementsdisplaychannel.h +++ b/coreengine/viewelementsdisplaychannel.h @@ -92,6 +92,7 @@ class cVeDcScreenResolution : public cViewElement { private: int lastScreenWidth; int lastScreenHeight; + double lastAspect; public: cVeDcScreenResolution(void); virtual ~cVeDcScreenResolution(void);