renderer: add occlusion for back layers

This commit is contained in:
vaxerski
2023-07-19 16:13:55 +02:00
parent b08b72358a
commit f4f0f35c5b
5 changed files with 65 additions and 12 deletions

View File

@@ -752,6 +752,14 @@ Vector2D CWindow::middle() {
}
bool CWindow::opaque() {
if (m_fAlpha.fl() != 1.f || m_fActiveInactiveAlpha.fl() != 1.f)
return false;
const auto PWORKSPACE = g_pCompositor->getWorkspaceByID(m_iWorkspaceID);
if (PWORKSPACE->m_fAlpha.fl() != 1.f)
return false;
if (m_bIsX11)
return !m_uSurface.xwayland->has_alpha;
@@ -764,3 +772,11 @@ bool CWindow::opaque() {
return false;
}
float CWindow::rounding() {
static auto* const PROUNDING = &g_pConfigManager->getConfigValuePtr("decoration:rounding")->intValue;
float rounding = m_sAdditionalConfigData.rounding.toUnderlying() == -1 ? *PROUNDING : m_sAdditionalConfigData.rounding.toUnderlying();
return rounding;
}