desktop/view: use aliveAndVisible for most things (#12631)

This commit is contained in:
Vaxry 2025-12-11 16:29:26 +00:00 committed by GitHub
parent 2ca7ad7efc
commit 5dd224805d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 35 additions and 28 deletions

View file

@ -1130,7 +1130,7 @@ PHLMONITOR CCompositor::getRealMonitorFromOutput(SP<Aquamarine::IOutput> out) {
SP<CWLSurfaceResource> CCompositor::vectorToLayerPopupSurface(const Vector2D& pos, PHLMONITOR monitor, Vector2D* sCoords, PHLLS* ppLayerSurfaceFound) {
for (auto const& lsl : monitor->m_layerSurfaceLayers | std::views::reverse) {
for (auto const& ls : lsl | std::views::reverse) {
if (!ls->visible() || ls->m_fadingOut)
if (!ls->aliveAndVisible())
continue;
auto SURFACEAT = ls->m_popupHead->at(pos, true);
@ -1150,7 +1150,7 @@ SP<CWLSurfaceResource> CCompositor::vectorToLayerSurface(const Vector2D& pos, st
bool aboveLockscreen) {
for (auto const& ls : *layerSurfaces | std::views::reverse) {
if (!ls->visible() || ls->m_fadingOut || (aboveLockscreen && ls->m_ruleApplicator->aboveLock().valueOrDefault() != 2))
if (!ls->aliveAndVisible() || (aboveLockscreen && ls->m_ruleApplicator->aboveLock().valueOrDefault() != 2))
continue;
auto [surf, local] = ls->m_layerSurface->m_surface->at(pos - ls->m_geometry.pos(), true);
@ -2347,7 +2347,7 @@ PHLLS CCompositor::getLayerSurfaceFromSurface(SP<CWLSurfaceResource> pSurface) {
std::pair<SP<CWLSurfaceResource>, bool> result = {pSurface, false};
for (auto const& ls : m_layers) {
if (!ls->visible() || ls->m_fadingOut)
if (!ls->aliveAndVisible())
continue;
if (ls->m_layerSurface->m_surface == pSurface)