@@ -, +, @@ --- configure.ac | 4 ++++ src/gpm-brightness-xrandr.c | 13 ++++++------- 2 files changed, 10 insertions(+), 7 deletions(-) --- a/configure.ac +++ a/configure.ac @@ -171,6 +171,10 @@ PKG_CHECK_MODULES(XRANDR, [ AC_SUBST(XRANDR_CFLAGS) AC_SUBST(XRANDR_LIBS) +PKG_CHECK_EXISTS( + [xrandr >= 1.3], + [AC_DEFINE(HAVE_XRANDR_13, 1, [xrandr 1.3 available])]) + PKG_CHECK_MODULES(LIBNOTIFY, libnotify >= $LIBNOTIFY_REQUIRED) AC_SUBST(LIBNOTIFY_CFLAGS) AC_SUBST(LIBNOTIFY_LIBS) --- a/src/gpm-brightness-xrandr.c +++ a/src/gpm-brightness-xrandr.c @@ -60,7 +60,7 @@ struct GpmBrightnessXRandRPrivate Display *dpy; guint shared_value; gboolean has_extension; -#if (RANDR_MAJOR == 1 && RANDR_MINOR >= 3) +#ifdef HAVE_XRANDR_13 gboolean has_randr13; #endif gboolean hw_changed; @@ -173,7 +173,7 @@ gpm_brightness_xrandr_setup_display (GpmBrightnessXRandR *brightness) return TRUE; } -#if (RANDR_MAJOR == 1 && RANDR_MINOR >= 3) +#ifdef HAVE_XRANDR_13 /** * gpm_brightness_xrandr_setup_version: Check whether xserver really supports xrandr-1.3 features. **/ @@ -650,14 +650,13 @@ gpm_brightness_xrandr_update_cache (GpmBrightnessXRandR *brightness) in RandR 1.3 or higher and of course xserver needs to support it. */ -#if (RANDR_MAJOR == 1 && RANDR_MINOR >= 3) +#ifdef HAVE_XRANDR_13 if (brightness->priv->has_randr13) resource = XRRGetScreenResourcesCurrent (brightness->priv->dpy, root); else - resource = XRRGetScreenResources (brightness->priv->dpy, root); -#else - resource = XRRGetScreenResources (brightness->priv->dpy, root); #endif + resource = XRRGetScreenResources (brightness->priv->dpy, root); + if (resource != NULL) { egg_debug ("adding resource %p", resource); g_ptr_array_add (brightness->priv->resources, resource); @@ -724,7 +723,7 @@ gpm_brightness_xrandr_init (GpmBrightnessXRandR *brightness) egg_debug ("no XRANDR extension, so aborting init"); return; } -#if (RANDR_MAJOR == 1 && RANDR_MINOR >= 3) +#ifdef HAVE_XRANDR_13 brightness->priv->has_randr13 = gpm_brightness_xrandr_setup_version (brightness); #endif --