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.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp
index bda32d84..74b18859 100644
--- a/src/helpers/Monitor.cpp
+++ b/src/helpers/Monitor.cpp
@@ -239,6 +239,20 @@ void CMonitor::onDisconnect() {
if (g_pCompositor->m_pLastMonitor == this)
g_pCompositor->setActiveMonitor(BACKUPMON);
+ if (g_pHyprRenderer->m_pMostHzMonitor == this) {
+ int mostHz = 0;
+ CMonitor* pMonitorMostHz = nullptr;
+
+ for (auto& m : g_pCompositor->m_vMonitors) {
+ if (m->refreshRate > mostHz && m.get() != this) {
+ pMonitorMostHz = m.get();
+ mostHz = m->refreshRate;
+ }
+ }
+
+ g_pHyprRenderer->m_pMostHzMonitor = pMonitorMostHz;
+ }
+
std::erase_if(g_pCompositor->m_vMonitors, [&](std::shared_ptr<CMonitor>& el) { return el.get() == this; });
}