The patch makes the bogus "bugopts debugrandr" option actually do
something.

Ciao

Dominik ^_^  ^_^

--

Dominik Vogt
From 415a98341f4f33495d58c4b74718a25a3a83eff8 Mon Sep 17 00:00:00 2001
From: Dominik Vogt <dominik.v...@gmx.de>
Date: Sun, 14 Nov 2021 10:54:20 +0100
Subject: [PATCH 1/3] Fix and document "bugopts debugrandr".

---
 doc/fvwm3/fvwm3.adoc | 2 ++
 fvwm/builtins.c      | 5 ++++-
 fvwm/events.c        | 5 ++++-
 fvwm/focus.c         | 5 ++++-
 4 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/doc/fvwm3/fvwm3.adoc b/doc/fvwm3/fvwm3.adoc
index 8c0b723c..86d7a97d 100644
--- a/doc/fvwm3/fvwm3.adoc
+++ b/doc/fvwm3/fvwm3.adoc
@@ -3094,6 +3094,8 @@ AddToMenu RootMenu
 	turn the option on or off, or "toggle" to switch is back and forth. If
 	_bool_ is omitted, the default setting is restored.
 +
+_DebugRandR_ activates monitor layout debug messages.
++
 _FlickeringMoveWorkaround_ disables ConfigureNotify events that are
 usually sent to an application while it is moved. If some windows
 flicker annoyingly while being moved, this option may help you. Note
diff --git a/fvwm/builtins.c b/fvwm/builtins.c
index da16be8b..53e6d287 100644
--- a/fvwm/builtins.c
+++ b/fvwm/builtins.c
@@ -3850,7 +3850,10 @@ void CMD_BugOpts(F_CMD_ARGS)
 				Scr.bo.do_debug_randr = 0;
 				break;
 			}
-			monitor_dump_state(NULL);
+			if (Scr.bo.do_debug_randr)
+			{
+				monitor_dump_state(NULL);
+			}
 		}
 		else if (StrEquals(opt, "TransliterateUtf8"))
 		{
diff --git a/fvwm/events.c b/fvwm/events.c
index 51af3bfe..49c23b79 100644
--- a/fvwm/events.c
+++ b/fvwm/events.c
@@ -1770,7 +1770,10 @@ void monitor_update_ewmh(void)
 	struct monitor	*m, *mref;

 	fvwm_debug(__func__, "monitor debug...\n");
-	monitor_dump_state(NULL);
+	if (Scr.bo.do_debug_randr)
+	{
+		monitor_dump_state(NULL);
+	}

 	mref = TAILQ_FIRST(&monitor_q);

diff --git a/fvwm/focus.c b/fvwm/focus.c
index bffd3fde..8cb40c3b 100644
--- a/fvwm/focus.c
+++ b/fvwm/focus.c
@@ -671,7 +671,10 @@ static void __activate_window_by_command(
 	}

 	m = fw->m;
-	monitor_dump_state(m);
+	if (Scr.bo.do_debug_randr)
+	{
+		monitor_dump_state(m);
+	}
 	do_not_warp = StrEquals(PeekToken(action, NULL), "NoWarp");
 	if (!do_not_warp)
 	{
--
2.30.2

Reply via email to