From 4a966c945bc04982cde1f9ab8f84a67df928c3f1 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sun, 17 Apr 2022 10:19:46 +0200 Subject: Add monitor disabled option --- src/events/Monitors.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/events/Monitors.cpp') diff --git a/src/events/Monitors.cpp b/src/events/Monitors.cpp index 90617f51..5fa6b67b 100644 --- a/src/events/Monitors.cpp +++ b/src/events/Monitors.cpp @@ -45,6 +45,16 @@ void Events::listener_newOutput(wl_listener* listener, void* data) { // new monitor added, let's accomodate for that. const auto OUTPUT = (wlr_output*)data; + // get monitor rule that matches + SMonitorRule monitorRule = g_pConfigManager->getMonitorRuleFor(OUTPUT->name); + + // if it's disabled, disable and ignore + if (monitorRule.disabled) { + wlr_output_enable(OUTPUT, 0); + wlr_output_commit(OUTPUT); + return; + } + SMonitor newMonitor; newMonitor.output = OUTPUT; newMonitor.ID = g_pCompositor->m_lMonitors.size(); @@ -52,9 +62,6 @@ void Events::listener_newOutput(wl_listener* listener, void* data) { wlr_output_init_render(OUTPUT, g_pCompositor->m_sWLRAllocator, g_pCompositor->m_sWLRRenderer); - // get monitor rule that matches - SMonitorRule monitorRule = g_pConfigManager->getMonitorRuleFor(OUTPUT->name); - wlr_output_set_scale(OUTPUT, monitorRule.scale); wlr_xcursor_manager_load(g_pCompositor->m_sWLRXCursorMgr, monitorRule.scale); wlr_output_set_transform(OUTPUT, WL_OUTPUT_TRANSFORM_NORMAL); // TODO: support other transforms -- cgit v1.2.3