forked from pool/gnome-settings-daemon
94 lines
3.0 KiB
Diff
94 lines
3.0 KiB
Diff
|
From 0fb1b96b3cb12fcc91398e3727c6d4117505fa10 Mon Sep 17 00:00:00 2001
|
||
|
From: Carlos Garnacho <carlosg@gnome.org>
|
||
|
Date: Fri, 22 Sep 2017 17:50:28 +0200
|
||
|
Subject: wacom: Use GTK+ skeleton
|
||
|
|
||
|
The wacom module uses GDK resources indirectly through GsdDeviceMapper,
|
||
|
which turn out NULL when this object tries to attach itself to a
|
||
|
GdkScreen.
|
||
|
|
||
|
https://bugzilla.gnome.org/show_bug.cgi?id=787884
|
||
|
---
|
||
|
plugins/wacom/main.c | 2 +-
|
||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/plugins/wacom/main.c b/plugins/wacom/main.c
|
||
|
index ad1367c..a19a71b 100644
|
||
|
--- a/plugins/wacom/main.c
|
||
|
+++ b/plugins/wacom/main.c
|
||
|
@@ -4,4 +4,4 @@
|
||
|
#define MANAGER GsdWacomManager
|
||
|
#include "gsd-wacom-manager.h"
|
||
|
|
||
|
-#include "daemon-skeleton.h"
|
||
|
+#include "daemon-skeleton-gtk.h"
|
||
|
--
|
||
|
cgit v0.12
|
||
|
|
||
|
From 08424fb6c134765216bdf032457fa19ef44ebe16 Mon Sep 17 00:00:00 2001
|
||
|
From: Carlos Garnacho <carlosg@gnome.org>
|
||
|
Date: Fri, 22 Sep 2017 17:52:06 +0200
|
||
|
Subject: wacom: Add both tablet and touchscreen devices on initial iteration
|
||
|
|
||
|
The GsdDeviceManager::device-added callback would observe both
|
||
|
display-attached tablets and touchscreens, but only the former were
|
||
|
added in the initial loop.
|
||
|
|
||
|
This made touchscreens not properly mapped to outputs, as touchscreens
|
||
|
are usually built into the device.
|
||
|
|
||
|
https://bugzilla.gnome.org/show_bug.cgi?id=787884
|
||
|
---
|
||
|
plugins/wacom/gsd-wacom-manager.c | 22 +++++++++++++++-------
|
||
|
1 file changed, 15 insertions(+), 7 deletions(-)
|
||
|
|
||
|
diff --git a/plugins/wacom/gsd-wacom-manager.c b/plugins/wacom/gsd-wacom-manager.c
|
||
|
index 3bcbca4..b6d71f9 100644
|
||
|
--- a/plugins/wacom/gsd-wacom-manager.c
|
||
|
+++ b/plugins/wacom/gsd-wacom-manager.c
|
||
|
@@ -304,6 +304,19 @@ device_removed_cb (GsdDeviceManager *device_manager,
|
||
|
}
|
||
|
|
||
|
static void
|
||
|
+add_devices (GsdWacomManager *manager,
|
||
|
+ GsdDeviceType device_type)
|
||
|
+{
|
||
|
+ GList *devices, *l;
|
||
|
+
|
||
|
+ devices = gsd_device_manager_list_devices (manager->priv->device_manager,
|
||
|
+ device_type);
|
||
|
+ for (l = devices; l ; l = l->next)
|
||
|
+ device_added_cb (manager->priv->device_manager, l->data, manager);
|
||
|
+ g_list_free (devices);
|
||
|
+}
|
||
|
+
|
||
|
+static void
|
||
|
set_devicepresence_handler (GsdWacomManager *manager)
|
||
|
{
|
||
|
GsdDeviceManager *device_manager;
|
||
|
@@ -325,19 +338,14 @@ gsd_wacom_manager_init (GsdWacomManager *manager)
|
||
|
static gboolean
|
||
|
gsd_wacom_manager_idle_cb (GsdWacomManager *manager)
|
||
|
{
|
||
|
- GList *devices, *l;
|
||
|
-
|
||
|
gnome_settings_profile_start (NULL);
|
||
|
|
||
|
manager->priv->device_mapper = gsd_device_mapper_get ();
|
||
|
|
||
|
set_devicepresence_handler (manager);
|
||
|
|
||
|
- devices = gsd_device_manager_list_devices (manager->priv->device_manager,
|
||
|
- GSD_DEVICE_TYPE_TABLET);
|
||
|
- for (l = devices; l ; l = l->next)
|
||
|
- device_added_cb (manager->priv->device_manager, l->data, manager);
|
||
|
- g_list_free (devices);
|
||
|
+ add_devices (manager, GSD_DEVICE_TYPE_TABLET);
|
||
|
+ add_devices (manager, GSD_DEVICE_TYPE_TOUCHSCREEN);
|
||
|
|
||
|
gnome_settings_profile_end (NULL);
|
||
|
|
||
|
--
|
||
|
cgit v0.12
|
||
|
|