diff --git a/src/managers/CursorManager.cpp b/src/managers/CursorManager.cpp index 68f020c2..51f012b4 100644 --- a/src/managers/CursorManager.cpp +++ b/src/managers/CursorManager.cpp @@ -210,13 +210,15 @@ void CCursorManager::updateTheme() { highestScale = m->scale; } - if (highestScale * m_iSize == m_sCurrentStyleInfo.size) + highestScale = std::ceil(highestScale); + + if (std::round(highestScale * m_iSize) == m_sCurrentStyleInfo.size) return; if (m_sCurrentStyleInfo.size && m_pHyprcursor->valid()) m_pHyprcursor->cursorSurfaceStyleDone(m_sCurrentStyleInfo); - m_sCurrentStyleInfo.size = m_iSize * highestScale; + m_sCurrentStyleInfo.size = std::round(m_iSize * highestScale); m_fCursorScale = highestScale; if (m_pHyprcursor->valid())