From 9cfeedda62e1a19cba33f9eb74351d9f5473fc42 Mon Sep 17 00:00:00 2001 From: monsta Date: Mon, 2 Jan 2017 19:57:49 +0300 Subject: mouse: move xinput check into separate function --- capplets/mouse/mate-mouse-properties.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'capplets/mouse/mate-mouse-properties.c') diff --git a/capplets/mouse/mate-mouse-properties.c b/capplets/mouse/mate-mouse-properties.c index bc9246d6..732e5e8d 100644 --- a/capplets/mouse/mate-mouse-properties.c +++ b/capplets/mouse/mate-mouse-properties.c @@ -217,6 +217,20 @@ synaptics_check_capabilities (GtkBuilder *dialog) XFreeDeviceList (devicelist); } +static gboolean +have_xinput_extension (void) +{ + XExtensionVersion *version; + gboolean result; + + /* Input device properties require version 1.5 or higher */ + version = XGetExtensionVersion (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), "XInputExtension"); + result = version->present && ((version->major_version * 1000 + version->minor_version) >= 1005); + XFree (version); + + return result; +} + static gboolean find_synaptics (void) { @@ -227,15 +241,9 @@ find_synaptics (void) int realformat; unsigned long nitems, bytes_after; unsigned char *data; - XExtensionVersion *version; - /* Input device properties require version 1.5 or higher */ - version = XGetExtensionVersion (GDK_DISPLAY_XDISPLAY(gdk_display_get_default()), "XInputExtension"); - if (!version->present || - (version->major_version * 1000 + version->minor_version) < 1005) { - XFree (version); + if (!have_xinput_extension ()) return FALSE; - } prop = XInternAtom (GDK_DISPLAY_XDISPLAY(gdk_display_get_default()), "Synaptics Off", True); if (!prop) @@ -268,7 +276,6 @@ find_synaptics (void) break; } - XFree (version); XFreeDeviceList (devicelist); return ret; -- cgit v1.2.1