summaryrefslogtreecommitdiff
path: root/src/helpers/Monitor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/helpers/Monitor.cpp')
-rw-r--r--src/helpers/Monitor.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp
index e5b60597..4a9f93ff 100644
--- a/src/helpers/Monitor.cpp
+++ b/src/helpers/Monitor.cpp
@@ -25,6 +25,7 @@
#include "../managers/animation/AnimationManager.hpp"
#include "../managers/animation/DesktopAnimationManager.hpp"
#include "../managers/input/InputManager.hpp"
+#include "../hyprerror/HyprError.hpp"
#include "sync/SyncTimeline.hpp"
#include "time/Time.hpp"
#include "../desktop/LayerSurface.hpp"
@@ -1499,8 +1500,8 @@ void CMonitor::setCTM(const Mat3x3& ctm_) {
g_pCompositor->scheduleFrameForMonitor(m_self.lock(), Aquamarine::IOutput::scheduleFrameReason::AQ_SCHEDULE_NEEDS_FRAME);
}
-uint16_t CMonitor::isSolitaryBlocked(bool full) {
- uint16_t reasons = 0;
+uint32_t CMonitor::isSolitaryBlocked(bool full) {
+ uint32_t reasons = 0;
if (g_pHyprNotificationOverlay->hasAny()) {
reasons |= SC_NOTIFICATION;
@@ -1508,6 +1509,12 @@ uint16_t CMonitor::isSolitaryBlocked(bool full) {
return reasons;
}
+ if (g_pHyprError->active() && g_pCompositor->m_lastMonitor == m_self) {
+ reasons |= SC_ERRORBAR;
+ if (!full)
+ return reasons;
+ }
+
if (g_pSessionLockManager->isSessionLocked()) {
reasons |= SC_LOCK;
if (!full)