From 125eec456a1eed49a46cb5ad4a6b722f6e3f9a4a Mon Sep 17 00:00:00 2001
From: David Maciejak <david.maciejak@gmail.com>
Date: Thu, 13 Mar 2014 23:48:10 +0800
Subject: [PATCH] RandR misc.

This patch is replacing XRandR naming to RandR,
as XRandR is the name of the tool used in X11 and RandR
is the technology WMaker wants to support.
I had to update the info panel too, when many features are
activated not all of them can be displayed properly.
---
 configure.ac        |   10 +++++-----
 m4/wm_xext_check.m4 |    4 ++--
 src/WindowMaker.h   |    2 +-
 src/dialog.c        |   22 ++++++++++++----------
 src/event.c         |    6 +++---
 src/screen.c        |    4 ++--
 src/startup.c       |    4 ++--
 7 files changed, 27 insertions(+), 25 deletions(-)

diff --git a/configure.ac b/configure.ac
index 98f5805..f5e020a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -536,14 +536,14 @@ AC_ARG_ENABLE([xinerama],
     [enable_xinerama=auto])
 WM_XEXT_CHECK_XINERAMA
 
-dnl XRandR support
+dnl RandR support
 dnl ==============
-AC_ARG_ENABLE([xrandr],
-    [AS_HELP_STRING([--enable-xrandr], [enable XRandR extension support (NOT recommended, buggy)])],
+AC_ARG_ENABLE([randr],
+    [AS_HELP_STRING([--enable-randr], [enable RandR extension support (NOT recommended, buggy)])],
     [AS_CASE(["$enableval"],
         [yes|no], [],
-        [AC_MSG_ERROR([bad value $enableval for --enable-xrandr]) ]) ],
-    [enable_xrandr=no])
+        [AC_MSG_ERROR([bad value $enableval for --enable-randr]) ]) ],
+    [enable_randr=no])
 WM_XEXT_CHECK_XRANDR
 
 dnl
diff --git a/m4/wm_xext_check.m4 b/m4/wm_xext_check.m4
index 9b50a0e..cf6c70f 100644
--- a/m4/wm_xext_check.m4
+++ b/m4/wm_xext_check.m4
@@ -181,7 +181,7 @@ AC_SUBST(LIBXINERAMA)dnl
 # --------------------
 #
 # Check for the X RandR (Resize-and-Rotate) extension
-# The check depends on variable 'enable_xrandr' being either:
+# The check depends on variable 'enable_randr' being either:
 #   yes  - detect, fail if not found
 #   no   - do not detect, disable support
 #   auto - detect, disable if not found
@@ -190,7 +190,7 @@ AC_SUBST(LIBXINERAMA)dnl
 # the variable 'supported_xext'
 # When not found, append info to variable 'unsupported'
 AC_DEFUN_ONCE([WM_XEXT_CHECK_XRANDR],
-[WM_LIB_CHECK([XRandR], [-lXrandr], [XRRQueryExtension], [$XLIBS],
+[WM_LIB_CHECK([RandR], [-lXrandr], [XRRQueryExtension], [$XLIBS],
     [wm_save_CFLAGS="$CFLAGS"
      AS_IF([wm_fn_lib_try_compile "X11/extensions/Xrandr.h" "Display *dpy;" "XRRQueryExtension(dpy, NULL, NULL)" ""],
         [],
diff --git a/src/WindowMaker.h b/src/WindowMaker.h
index f11dab6..012c98c 100644
--- a/src/WindowMaker.h
+++ b/src/WindowMaker.h
@@ -600,7 +600,7 @@ extern struct wmaker_global_variables {
 		} xkb;
 #endif
 
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 		struct {
 			Bool supported;
 			int event_base;
diff --git a/src/dialog.c b/src/dialog.c
index 6d5d21a..842ca35 100644
--- a/src/dialog.c
+++ b/src/dialog.c
@@ -1220,7 +1220,7 @@ void wShowInfoPanel(WScreen *scr)
 
 	panel->copyrL = WMCreateLabel(panel->win);
 	WMResizeWidget(panel->copyrL, 360, 60);
-	WMMoveWidget(panel->copyrL, 15, 185);
+	WMMoveWidget(panel->copyrL, 15, 190);
 	WMSetLabelTextAlignment(panel->copyrL, WALeft);
 	WMSetLabelText(panel->copyrL, COPYRIGHT_TEXT);
 	font = WMSystemFontOfSize(scr->wmscreen, 11);
@@ -1291,14 +1291,6 @@ void wShowInfoPanel(WScreen *scr)
 	strbuf = wstrappend(strbuf, _("\nAdditional support for: "));
 	strbuf = wstrappend(strbuf, "WMSPEC");
 
-#ifdef USE_XRANDR
-	strbuf = wstrappend(strbuf, ", XRandR ");
-	if (w_global.xext.randr.supported)
-		strbuf = wstrappend(strbuf, _("(Supported)"));
-	else
-		strbuf = wstrappend(strbuf, _("(Unsupported)"));
-#endif
-
 #ifdef MWM_HINTS
 	strbuf = wstrappend(strbuf, ", MWM");
 #endif
@@ -1320,8 +1312,18 @@ void wShowInfoPanel(WScreen *scr)
 	}
 #endif
 
+#ifdef USE_RANDR
+	strbuf = wstrappend(strbuf, _("\n"));
+	strbuf = wstrappend(strbuf, "RandR: ");
+	if (w_global.xext.randr.supported)
+		strbuf = wstrappend(strbuf, _("supported"));
+	else
+		strbuf = wstrappend(strbuf, _("unsupported"));
+	strbuf = wstrappend(strbuf, ".");
+#endif
+
 	panel->infoL = WMCreateLabel(panel->win);
-	WMResizeWidget(panel->infoL, 350, 75);
+	WMResizeWidget(panel->infoL, 350, 80);
 	WMMoveWidget(panel->infoL, 15, 115);
 	WMSetLabelText(panel->infoL, strbuf);
 	font = WMSystemFontOfSize(scr->wmscreen, 11);
diff --git a/src/event.c b/src/event.c
index acb7e1f..73614cf 100644
--- a/src/event.c
+++ b/src/event.c
@@ -42,7 +42,7 @@
 #include "xdnd.h"
 #endif
 
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 #include <X11/extensions/Xrandr.h>
 #endif
 
@@ -265,7 +265,7 @@ void DispatchEvent(XEvent * event)
 		break;
 
 	case ConfigureNotify:
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 		if (event->xconfigure.window == DefaultRootWindow(dpy))
 			XRRUpdateConfiguration(event);
 #endif
@@ -557,7 +557,7 @@ static void handleExtensions(XEvent * event)
 		handleXkbIndicatorStateNotify(event);
 	}
 #endif				/*KEEP_XKB_LOCK_STATUS */
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 	if (w_global.xext.randr.supported && event->type == (w_global.xext.randr.event_base + RRScreenChangeNotify)) {
 		/* From xrandr man page: "Clients must call back into Xlib using
 		 * XRRUpdateConfiguration when screen configuration change notify
diff --git a/src/screen.c b/src/screen.c
index 1511876..91ef63b 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -31,7 +31,7 @@
 #ifdef KEEP_XKB_LOCK_STATUS
 #include <X11/XKBlib.h>
 #endif				/* KEEP_XKB_LOCK_STATUS */
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 #include <X11/extensions/Xrandr.h>
 #endif
 
@@ -540,7 +540,7 @@ WScreen *wScreenInit(int screen_number)
 	}
 #endif				/* KEEP_XKB_LOCK_STATUS */
 
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 	if (w_global.xext.randr.supported)
 		XRRSelectInput(dpy, scr->root_win, RRScreenChangeNotifyMask);
 #endif
diff --git a/src/startup.c b/src/startup.c
index 6ede6f5..a562b50 100644
--- a/src/startup.c
+++ b/src/startup.c
@@ -44,7 +44,7 @@
 #ifdef KEEP_XKB_LOCK_STATUS
 #include <X11/XKBlib.h>
 #endif
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 #include <X11/extensions/Xrandr.h>
 #endif
 
@@ -592,7 +592,7 @@ void StartUp(Bool defaultScreenOnly)
 	w_global.xext.shape.supported = XShapeQueryExtension(dpy, &w_global.xext.shape.event_base, &j);
 #endif
 
-#ifdef USE_XRANDR
+#ifdef USE_RANDR
 	w_global.xext.randr.supported = XRRQueryExtension(dpy, &w_global.xext.randr.event_base, &j);
 #endif
 
-- 
1.7.10.4

