From ad79cad5f0e74dc5583ddf62ec5a1c39812cac8d Mon Sep 17 00:00:00 2001 From: Leon Styhre Date: Wed, 26 Feb 2025 20:38:36 +0100 Subject: [PATCH] Changed SystemStatusComponent to use a height property instead of a size property --- es-core/src/ThemeData.cpp | 2 +- es-core/src/components/SystemStatusComponent.cpp | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/es-core/src/ThemeData.cpp b/es-core/src/ThemeData.cpp index 58349576d..ff7f03695 100644 --- a/es-core/src/ThemeData.cpp +++ b/es-core/src/ThemeData.cpp @@ -576,7 +576,7 @@ std::map> {"customButtonIcon", PATH}}}, {"systemstatus", {{"pos", NORMALIZED_PAIR}, - {"size", NORMALIZED_PAIR}, + {"height", FLOAT}, {"origin", NORMALIZED_PAIR}, {"fontPath", PATH}, {"textRelativeScale", FLOAT}, diff --git a/es-core/src/components/SystemStatusComponent.cpp b/es-core/src/components/SystemStatusComponent.cpp index 77f33b744..3314d5842 100644 --- a/es-core/src/components/SystemStatusComponent.cpp +++ b/es-core/src/components/SystemStatusComponent.cpp @@ -158,9 +158,10 @@ void SystemStatusComponent::applyTheme(const std::shared_ptr& theme, unsigned int properties) { // Apply default settings as the theme may not define any configuration. - const glm::vec2 scale {glm::vec2 {Renderer::getScreenWidth(), Renderer::getScreenHeight()}}; - mPosition = glm::vec3 {0.982f * scale.x, 0.016f * scale.y, 0.0f}; - mSize = glm::vec2 {0.0f, 0.035f} * scale; + const float scale {mRenderer->getIsVerticalOrientation() ? mRenderer->getScreenWidth() : + mRenderer->getScreenHeight()}; + mPosition = glm::vec3 {0.982f * mRenderer->getScreenWidth(), + 0.016f * mRenderer->getScreenHeight(), 0.0f}; mOrigin = glm::vec2 {1.0f, 0.0f}; mColor = 0xFFFFFFFF; @@ -178,17 +179,18 @@ void SystemStatusComponent::applyTheme(const std::shared_ptr& theme, const ThemeData::ThemeElement* elem {theme->getElement(view, element, "systemstatus")}; + mSize = glm::vec2 {0.0f, std::round(0.035f * scale)}; float textRelativeScale {0.9f}; if (!elem) { - mSize = glm::round(mSize); mFont = {Font::get(mSize.y * textRelativeScale, FONT_PATH_LIGHT)}; return; } - mSize.x = 0.0f; - mSize.y = glm::clamp(mSize.y, 0.01f * scale.y, 0.5f * scale.y); - mSize = glm::round(mSize); + if (elem->has("height")) { + mSize.y = + std::round(glm::clamp(elem->get("height") * scale, 0.01f * scale, 0.5f * scale)); + } if (elem->has("textRelativeScale")) textRelativeScale = glm::clamp(elem->get("textRelativeScale"), 0.5f, 1.0f);