summaryrefslogtreecommitdiffstats
path: root/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch')
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch152
1 files changed, 152 insertions, 0 deletions
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch
new file mode 100644
index 000000000..cf58f73d8
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch
@@ -0,0 +1,152 @@
1From 7c87f8f202a7743a18b8d7fdab5c66a3d54badd5 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 1 Nov 2012 21:01:59 +0100
4Subject: [PATCH 2/5] mouse settings dialog: add touchscreen-pointer option
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9
10Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
11Upstream-Status: Submitted [1]
12[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
13---
14 dialogs/mouse-settings/main.c | 56 +++++++++++++++++++++++++++++
15 dialogs/mouse-settings/mouse-dialog.glade | 28 ++++++++++++++-
16 3 files changed, 422 insertions(+), 329 deletions(-)
17
18diff --git a/dialogs/mouse-settings/main.c b/dialogs/mouse-settings/main.c
19index f4b475b..ff08219 100644
20--- a/dialogs/mouse-settings/main.c
21+++ b/dialogs/mouse-settings/main.c
22@@ -956,6 +956,50 @@ mouse_settings_device_set_enabled (GtkToggleButton *button,
23
24
25
26+#ifdef HAVE_XCURSOR
27+static void
28+mouse_settings_on_touchscreen_pointer (GtkToggleButton *button,
29+ GtkBuilder *builder)
30+{
31+ gchar *name = NULL;
32+ gchar *prop;
33+ gboolean enabled;
34+
35+ if (locked > 0)
36+ return;
37+
38+ if (mouse_settings_device_get_selected (builder, NULL, &name))
39+ {
40+ enabled = gtk_toggle_button_get_active (button);
41+ prop = g_strconcat ("/", name, "/TouchscreenPointer", NULL);
42+ xfconf_channel_set_bool (pointers_channel, prop, enabled);
43+ g_free (prop);
44+ }
45+ g_free (name);
46+}
47+
48+static void
49+mouse_settings_set_touchscreen_pointer (GtkBuilder *builder)
50+{
51+ gchar *name = NULL;
52+ gchar *prop;
53+ gboolean enabled;
54+ GtkToggleButton *button;
55+
56+ if (mouse_settings_device_get_selected (builder, NULL, &name))
57+ {
58+ button = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "touchscreen-pointer"));
59+ prop = g_strconcat ("/", name, "/TouchscreenPointer", NULL);
60+ enabled = xfconf_channel_get_bool (pointers_channel, prop, FALSE);
61+ gtk_toggle_button_set_active (button, enabled);
62+ g_free (prop);
63+ }
64+ g_free (name);
65+}
66+#endif
67+
68+
69+
70 static void
71 mouse_settings_device_selection_changed (GtkBuilder *builder)
72 {
73@@ -1007,6 +1051,9 @@ mouse_settings_device_selection_changed (GtkBuilder *builder)
74 /* get the selected item */
75 if (mouse_settings_device_get_selected (builder, &device, NULL))
76 {
77+#ifdef HAVE_XCURSOR
78+ mouse_settings_set_touchscreen_pointer (builder);
79+#endif
80 gdk_error_trap_push ();
81 device_info = XListInputDevices (xdisplay, &ndevices);
82 if (gdk_error_trap_pop () == 0 && device_info != NULL)
83@@ -1735,11 +1782,20 @@ main (gint argc, gchar **argv)
84 /* populate the themes treeview */
85 mouse_settings_themes_populate_store (builder);
86
87+ /* connect & fill touchscreen-pointer */
88+ object = gtk_builder_get_object (builder, "touchscreen-pointer");
89+ g_signal_connect (G_OBJECT (object), "toggled",
90+ G_CALLBACK (mouse_settings_on_touchscreen_pointer), builder);
91+ mouse_settings_set_touchscreen_pointer (builder);
92+
93 /* connect the cursor size in the cursor tab */
94 object = gtk_builder_get_object (builder, "theme-cursor-size");
95 xfconf_g_property_bind (xsettings_channel, "/Gtk/CursorThemeSize",
96 G_TYPE_INT, G_OBJECT (object), "value");
97 #else
98+ /* hide touchscreen-pointer */
99+ object = gtk_builder_get_object (builder, "touchscreen-pointer");
100+ gtk_widget_hide (GTK_WIDGET (object));
101 /* hide the themes tab */
102 object = gtk_builder_get_object (builder, "themes-hbox");
103 gtk_widget_hide (GTK_WIDGET (object));
104diff --git a/dialogs/mouse-settings/mouse-dialog.glade b/dialogs/mouse-settings/mouse-dialog.glade
105index d3aab0d..573c551 100644
106--- a/dialogs/mouse-settings/mouse-dialog.glade
107+++ b/dialogs/mouse-settings/mouse-dialog.glade
108@@ -323,7 +323,7 @@
109 <property name="visible">True</property>
110 <property name="can_focus">False</property>
111 <property name="border_width">6</property>
112- <property name="n_rows">3</property>
113+ <property name="n_rows">4</property>
114 <property name="n_columns">2</property>
115 <property name="column_spacing">12</property>
116 <property name="row_spacing">6</property>
117@@ -415,6 +415,32 @@
118 <property name="bottom_attach">3</property>
119 </packing>
120 </child>
121+ <child>
122+ <object class="GtkAlignment" id="alignment9">
123+ <property name="visible">True</property>
124+ <property name="can_focus">False</property>
125+ <property name="xalign">0</property>
126+ <property name="xscale">0</property>
127+ <property name="yscale">0</property>
128+ <child>
129+ <object class="GtkCheckButton" id="touchscreen-pointer">
130+ <property name="label" translatable="yes">_Touchscreen pointer</property>
131+ <property name="use_action_appearance">False</property>
132+ <property name="visible">True</property>
133+ <property name="can_focus">True</property>
134+ <property name="receives_default">False</property>
135+ <property name="tooltip_text" translatable="yes">When selected, no mouse pointer is displayed for this device and gtk TouchscreenMode is activated</property>
136+ <property name="use_underline">True</property>
137+ <property name="draw_indicator">True</property>
138+ </object>
139+ </child>
140+ </object>
141+ <packing>
142+ <property name="right_attach">2</property>
143+ <property name="top_attach">3</property>
144+ <property name="bottom_attach">4</property>
145+ </packing>
146+ </child>
147 </object>
148 </child>
149 </object>
150--
1511.7.6.5
152