[gnome-control-center/gnome-3-8] mouse: show enable trackpad slider button even if mouse is not present.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center/gnome-3-8] mouse: show enable trackpad slider button even if mouse is not present.
- Date: Wed, 10 Jul 2013 13:33:01 +0000 (UTC)
commit 8032f1109334eb9428e45b34b9fae491fc77043e
Author: Srinivasa Ragavan <srinivasa ragavan venkateswaran intel com>
Date: Wed Jul 10 18:42:07 2013 +0530
mouse: show enable trackpad slider button even if mouse is not present.
On touchscreen machine, if the trackpad was previously disabled using mouse
which isn't present now, there is no way to enable it. It now shows the slider
when trackpad is disable or if mouse/touchscreen is present.
Fixes bug #703946
panels/mouse/gnome-mouse-properties.c | 26 ++++++++++++++++++++++++--
1 files changed, 24 insertions(+), 2 deletions(-)
---
diff --git a/panels/mouse/gnome-mouse-properties.c b/panels/mouse/gnome-mouse-properties.c
index 00e4f48..a31758c 100644
--- a/panels/mouse/gnome-mouse-properties.c
+++ b/panels/mouse/gnome-mouse-properties.c
@@ -153,6 +153,26 @@ pointer_speed_scale_event (GtkRange *scale, GtkBuilder *dialog)
g_settings_set_int (settings, "motion-threshold", value);
}
+static gboolean
+show_touchpad_enabling_switch (GSettings *touchpad_settings)
+{
+ gboolean enabled;
+
+ if (!touchpad_is_present())
+ return FALSE;
+
+ /* Lets show the button when the mouse/touchscreen is present */
+ if (mouse_is_present() || touchscreen_is_present())
+ return TRUE;
+
+ /* Lets also show when touch pad is disabled. */
+ enabled = g_settings_get_boolean (touchpad_settings, "touchpad-enabled");
+ if (!enabled)
+ return TRUE;
+
+ return FALSE;
+}
+
/* Set up the property editors in the dialog. */
static void
setup_dialog (GtkBuilder *dialog)
@@ -188,7 +208,8 @@ setup_dialog (GtkBuilder *dialog)
/* Trackpad page */
touchpad_present = touchpad_is_present ();
gtk_widget_set_visible (WID ("touchpad_vbox"), touchpad_present);
- gtk_widget_set_visible (WID ("touchpad_enabled_switch"), mouse_present);
+ gtk_widget_set_visible (WID ("touchpad_enabled_switch"),
+ show_touchpad_enabling_switch (touchpad_settings));
g_settings_bind (touchpad_settings, "touchpad-enabled",
WID ("touchpad_enabled_switch"), "active",
@@ -269,7 +290,8 @@ device_changed (GdkDeviceManager *device_manager,
present = mouse_is_present ();
gtk_widget_set_visible (WID ("mouse_vbox"), present);
- gtk_widget_set_visible (WID ("touchpad_enabled_switch"), present);
+ gtk_widget_set_visible (WID ("touchpad_enabled_switch"),
+ show_touchpad_enabling_switch (touchpad_settings));
}
GtkWidget *
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]