static void
list_actual_devices (void)
{
	GdkDeviceManager *mgr;
	GList *list, *l, *devices;

	mgr = gdk_display_get_device_manager (gdk_display_get_default ());

	list = gdk_device_manager_list_devices (mgr, GDK_DEVICE_TYPE_SLAVE);
	devices = NULL;
	for (l = list; l ; l = l->next) {
		GsdWacomDevice *device;

		device = gsd_wacom_device_new (l->data);
		if (gsd_wacom_device_get_device_type (device) == WACOM_TYPE_INVALID) {
			g_object_unref (device);
			continue;
		}

		devices = g_list_prepend (devices, device);
	}
	g_list_free (list);

	list_devices (devices);
}
Exemple #2
0
static void
add_known_device (CcWacomPanel *self,
		  GdkDevice    *gdk_device)
{
	CcWacomPanelPrivate *priv;
	GsdWacomDevice *device;

	priv = self->priv;

	device = gsd_wacom_device_new (gdk_device);
	if (gsd_wacom_device_get_device_type (device) == WACOM_TYPE_INVALID) {
		g_object_unref (device);
		return;
	}
	g_debug ("Adding device '%s' (type: '%s') to known devices list",
		 gsd_wacom_device_get_tool_name (device),
		 gsd_wacom_device_type_to_string (gsd_wacom_device_get_device_type (device)));
	g_hash_table_insert (priv->devices, (gpointer) gdk_device, device);
}
static GsdWacomDevice *
search_pad_device (void)
{
    GdkDeviceManager *mgr;
    GList *list, *l;

    mgr = gdk_display_get_device_manager (gdk_display_get_default ());
    list = gdk_device_manager_list_devices (mgr, GDK_DEVICE_TYPE_SLAVE);
    for (l = list; l ; l = l->next) {
        GsdWacomDevice *device;

        device = gsd_wacom_device_new (l->data);
        if (gsd_wacom_device_get_device_type (device) == WACOM_TYPE_PAD)
            return (device);
        g_object_unref (device);
    }
    g_list_free (list);

    return NULL;
}