Hello community,
here is the log from the commit of package cinnamon-settings-daemon for
openSUSE:Factory checked in at 2020-03-17 13:10:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cinnamon-settings-daemon (Old)
and /work/SRC/openSUSE:Factory/.cinnamon-settings-daemon.new.3160 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cinnamon-settings-daemon"
Tue Mar 17 13:10:47 2020 rev:22 rq:785763 version:4.4.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/cinnamon-settings-daemon/cinnamon-settings-daemon.changes
2019-07-29 17:29:06.874241727 +0200
+++
/work/SRC/openSUSE:Factory/.cinnamon-settings-daemon.new.3160/cinnamon-settings-daemon.changes
2020-03-17 13:10:59.985838331 +0100
@@ -1,0 +2,16 @@
+Mon Mar 16 14:51:11 UTC 2020 - Marguerite Su <[email protected]>
+
+- update version 4.4.0
+ * power helper - Try to use logind, then fallback to using
+ consolekit, instead of using a gsettings key to decide
+ * csd-input-helper.c: Use correct error_trap_pop function
+ * mouse manager: set the 'disable touchpad with mouse' on
+ devices at startup
+ * mouse manager: Simplify previous commit - get/set
+ properties here already check for support, there's no
+ need to pre-check
+ * mouse manager: Expose libinput option to disable the
+ touchpad when an external mouse is attached
+ * automount: Add autorun dialog tester
+
+-------------------------------------------------------------------
Old:
----
cinnamon-settings-daemon-4.2.2.tar.gz
New:
----
cinnamon-settings-daemon-4.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ cinnamon-settings-daemon.spec ++++++
--- /var/tmp/diff_new_pack.LyQrDk/_old 2020-03-17 13:11:00.973839090 +0100
+++ /var/tmp/diff_new_pack.LyQrDk/_new 2020-03-17 13:11:00.977839093 +0100
@@ -1,7 +1,7 @@
#
# spec file for package cinnamon-settings-daemon
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
Name: cinnamon-settings-daemon
-Version: 4.2.2
+Version: 4.4.0
Release: 0
Summary: The settings Daemon for the Cinnamon Desktop
License: GPL-2.0-or-later AND LGPL-2.1-only
++++++ cinnamon-settings-daemon-4.2.2.tar.gz ->
cinnamon-settings-daemon-4.4.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/cinnamon-settings-daemon/cinnamon-settings-session.c
new/cinnamon-settings-daemon-4.4.0/cinnamon-settings-daemon/cinnamon-settings-session.c
---
old/cinnamon-settings-daemon-4.2.2/cinnamon-settings-daemon/cinnamon-settings-session.c
2019-07-25 10:22:55.000000000 +0200
+++
new/cinnamon-settings-daemon-4.4.0/cinnamon-settings-daemon/cinnamon-settings-session.c
2019-11-16 16:38:35.000000000 +0100
@@ -375,24 +375,24 @@
static void
cinnamon_settings_session_init (CinnamonSettingsSession *session)
{
- GSettings *session_settings;
-
session->priv = CINNAMON_SETTINGS_SESSION_GET_PRIVATE (session);
- session_settings = g_settings_new ("org.cinnamon.desktop.session");
- gboolean use_logind = g_settings_get_boolean (session_settings,
"settings-daemon-uses-logind");
- g_object_unref (session_settings);
-
- if (use_logind) {
#ifdef HAVE_LOGIND
+ if (access("/run/systemd/system/", F_OK) == 0) { // sd_booted ()
sd_pid_get_session (getpid(), &session->priv->session_id);
session->priv->sd_source = sd_source_new ();
g_source_set_callback (session->priv->sd_source, sessions_changed,
session, NULL);
g_source_attach (session->priv->sd_source, NULL);
sessions_changed (session);
-#endif
+
+ g_debug ("Using logind");
}
- else {
+ else
+#endif /* HAVE_LOGIND */
+
+ {
+ g_debug ("Using consolekit");
+
session->priv->cancellable = g_cancellable_new ();
/* connect to ConsoleKit */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cinnamon-settings-daemon-4.2.2/configure.ac
new/cinnamon-settings-daemon-4.4.0/configure.ac
--- old/cinnamon-settings-daemon-4.2.2/configure.ac 2019-07-25
10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/configure.ac 2019-11-16
16:38:35.000000000 +0100
@@ -1,7 +1,7 @@
AC_PREREQ([2.60])
AC_INIT([cinnamon-settings-daemon],
- [4.2.2],
+ [4.4.0],
[https://github.com/linuxmint/cinnamon-settings-daemon/issues])
AC_CONFIG_MACRO_DIR([m4])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/data/org.cinnamon.settings-daemon.peripherals.gschema.xml.in.in
new/cinnamon-settings-daemon-4.4.0/data/org.cinnamon.settings-daemon.peripherals.gschema.xml.in.in
---
old/cinnamon-settings-daemon-4.2.2/data/org.cinnamon.settings-daemon.peripherals.gschema.xml.in.in
2019-07-25 10:22:55.000000000 +0200
+++
new/cinnamon-settings-daemon-4.4.0/data/org.cinnamon.settings-daemon.peripherals.gschema.xml.in.in
2019-11-16 16:38:35.000000000 +0100
@@ -45,6 +45,11 @@
<_summary>Enable touchpad</_summary>
<_description>Set this to TRUE to enable all touchpads.</_description>
</key>
+ <key name="disable-with-external-mouse" type="b">
+ <default>false</default>
+ <_summary>Disable the touchpad when an external mouse is
connected</_summary>
+ <_description>Set this to TRUE to disable the touchpad when an external
mouse is connected (only available with libinput)</_description>
+ </key>
<key name="left-handed"
enum="org.cinnamon.settings-daemon.CsdTouchpadHandedness">
<default>'mouse'</default>
<summary>Touchpad button orientation</summary>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/cinnamon-settings-daemon-4.2.2/debian/changelog
new/cinnamon-settings-daemon-4.4.0/debian/changelog
--- old/cinnamon-settings-daemon-4.2.2/debian/changelog 2019-07-25
10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/debian/changelog 2019-11-16
16:38:35.000000000 +0100
@@ -1,3 +1,15 @@
+cinnamon-settings-daemon (4.4.0) tricia; urgency=medium
+
+ [ Michael Webster ]
+ * automount: Add autorun dialog tester. (#263)
+ * mouse manager: Expose libinput option to disable the touchpad when an
external mouse is attached.
+ * mouse manager: Simplify previous commit - get/set properties here already
check for support, there's no need to pre-check.
+ * mouse manager: set the 'disable touchpad with mouse' on devices at startup.
+ * csd-input-helper.c: Use correct error_trap_pop function.
+ * power helper - Try to use logind, then fallback to using consolekit,
instead of using a gsettings key to decide.
+
+ -- Clement Lefebvre <[email protected]> Sat, 16 Nov 2019 16:37:55 +0100
+
cinnamon-settings-daemon (4.2.2) tina; urgency=medium
[ Corbin Auriti ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/automount/Makefile.am
new/cinnamon-settings-daemon-4.4.0/plugins/automount/Makefile.am
--- old/cinnamon-settings-daemon-4.2.2/plugins/automount/Makefile.am
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/automount/Makefile.am
2019-11-16 16:38:35.000000000 +0100
@@ -34,6 +34,22 @@
$(AUTOMOUNT_LIBS) \
$(NULL)
+
+
+test_automount_dialog_SOURCES = test-automount-dialog.c \
+ csd-autorun.c \
+ $(NULL)
+test_automount_dialog_LDADD = $(AUTOMOUNT_LIBS) \
+ $(SETTINGS_PLUGIN_LIBS) \
+ $(NULL)
+test_automount_dialog_CFLAGS = $(AUTOMOUNT_CFLAGS) \
+ $(SETTINGS_PLUGIN_CFLAGS) \
+ $(NULL)
+
+
+noinst_PROGRAMS=test-automount-dialog
+
+
desktopdir = $(sysconfdir)/xdg/autostart
desktop_in_files = cinnamon-settings-daemon-automount.desktop.in
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/automount/csd-autorun.c
new/cinnamon-settings-daemon-4.4.0/plugins/automount/csd-autorun.c
--- old/cinnamon-settings-daemon-4.2.2/plugins/automount/csd-autorun.c
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/automount/csd-autorun.c
2019-11-16 16:38:35.000000000 +0100
@@ -980,3 +980,12 @@
return !ignore_autorun;
}
+
+void
+csd_autorun_for_content_type (GMount *mount,
+ const gchar *content_type,
+ CsdAutorunOpenWindow *callback,
+ gpointer user_data)
+{
+ do_autorun_for_content_type (mount, content_type, callback, user_data);
+}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/automount/csd-autorun.h
new/cinnamon-settings-daemon-4.4.0/plugins/automount/csd-autorun.h
--- old/cinnamon-settings-daemon-4.2.2/plugins/automount/csd-autorun.h
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/automount/csd-autorun.h
2019-11-16 16:38:35.000000000 +0100
@@ -47,6 +47,11 @@
CsdAutorunOpenWindow open_window_func,
gpointer user_data);
+void csd_autorun_for_content_type (GMount *mount,
+ const gchar *content_type,
+ CsdAutorunOpenWindow *callback,
+ gpointer user_data);
+
void csd_allow_autorun_for_volume (GVolume *volume);
void csd_allow_autorun_for_volume_finish (GVolume *volume);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/automount/test-automount-dialog.c
new/cinnamon-settings-daemon-4.4.0/plugins/automount/test-automount-dialog.c
---
old/cinnamon-settings-daemon-4.2.2/plugins/automount/test-automount-dialog.c
1970-01-01 01:00:00.000000000 +0100
+++
new/cinnamon-settings-daemon-4.4.0/plugins/automount/test-automount-dialog.c
2019-11-16 16:38:35.000000000 +0100
@@ -0,0 +1,78 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+ * save-session.c - Small program to talk to session manager.
+
+ Copyright (C) 1998 Tom Tromey
+ Copyright (C) 2008 Red Hat, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street - Suite 500, Boston, MA
+ 02110-1335, USA.
+*/
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+
+#include <gtk/gtk.h>
+#include <gio/gio.h>
+#include <glib.h>
+
+#include "csd-autorun.h"
+
+static void
+autorun_show_window (GMount *mount, gpointer user_data)
+{
+ gtk_main_quit ();
+}
+
+int
+main (int argc, char *argv[])
+{
+ GVolumeMonitor *monitor;
+ GError *error;
+ GList *mounts, *l;
+ int conflicting_options;
+
+ error = NULL;
+ if (! gtk_init_with_args (&argc, &argv, NULL, NULL, NULL, &error)) {
+ g_warning ("Unable to start: %s", error->message);
+ g_error_free (error);
+ exit (1);
+ }
+
+ if (argc != 2)
+ {
+ g_print ("Need one argument as content type\n");
+ exit (1);
+ }
+
+ monitor = g_volume_monitor_get ();
+ mounts = g_volume_monitor_get_mounts (monitor);
+
+ if (mounts)
+ {
+ GMount *mount = G_MOUNT (mounts->data);
+
+ csd_autorun_for_content_type (mount,
+ argv[1],
+ (CsdAutorunOpenWindow)
autorun_show_window,
+ NULL);
+ }
+
+ gtk_main ();
+
+ gtk_main_quit ();
+ return 0;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-input-helper.c
new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-input-helper.c
--- old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-input-helper.c
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-input-helper.c
2019-11-16 16:38:35.000000000 +0100
@@ -577,5 +577,5 @@
{
gdk_x11_display_error_trap_push (gdk_display_get_default ());
XCloseDevice (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), xdevice);
- gdk_error_trap_pop_ignored();
+ gdk_x11_display_error_trap_pop_ignored(gdk_display_get_default ());
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-power-helper.c
new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-power-helper.c
--- old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-power-helper.c
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-power-helper.c
2019-11-16 16:38:35.000000000 +0100
@@ -32,6 +32,33 @@
#define CONSOLEKIT_DBUS_PATH_MANAGER
"/org/freedesktop/ConsoleKit/Manager"
#define CONSOLEKIT_DBUS_INTERFACE_MANAGER
"org.freedesktop.ConsoleKit.Manager"
+#ifdef HAVE_LOGIND
+
+static gboolean
+use_logind (void)
+{
+ static gboolean should_use_logind = FALSE;
+ static gsize once_init_value = 0;
+
+ if (g_once_init_enter (&once_init_value)) {
+ should_use_logind = access("/run/systemd/system/", F_OK) == 0; //
sd_booted ()
+
+ g_once_init_leave (&once_init_value, 1);
+ }
+
+ return should_use_logind;
+}
+
+#else /* HAVE_LOGIND */
+
+static gboolean
+use_logind (void)
+{
+ return FALSE;
+}
+
+#endif /* HAVE_LOGIND */
+
static void
logind_stop (void)
{
@@ -293,10 +320,9 @@
}
void
-csd_power_suspend (gboolean use_logind,
- gboolean try_hybrid)
+csd_power_suspend (gboolean try_hybrid)
{
- if (use_logind) {
+ if (use_logind ()) {
if (try_hybrid && can_hybrid_sleep ()) {
logind_hybrid_suspend ();
}
@@ -315,9 +341,9 @@
}
void
-csd_power_poweroff (gboolean use_logind)
+csd_power_poweroff (void)
{
- if (use_logind) {
+ if (use_logind ()) {
logind_stop ();
}
else {
@@ -326,9 +352,9 @@
}
void
-csd_power_hibernate (gboolean use_logind)
+csd_power_hibernate (void)
{
- if (use_logind) {
+ if (use_logind ()) {
logind_hibernate ();
}
else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-power-helper.h
new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-power-helper.h
--- old/cinnamon-settings-daemon-4.2.2/plugins/common/csd-power-helper.h
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/common/csd-power-helper.h
2019-11-16 16:38:35.000000000 +0100
@@ -24,9 +24,9 @@
G_BEGIN_DECLS
-void csd_power_suspend (gboolean use_logind, gboolean try_hybrid);
-void csd_power_hibernate (gboolean use_logind);
-void csd_power_poweroff (gboolean use_logind);
+void csd_power_suspend (gboolean try_hybrid);
+void csd_power_hibernate (void);
+void csd_power_poweroff (void);
G_END_DECLS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/media-keys/csd-media-keys-manager.c
new/cinnamon-settings-daemon-4.4.0/plugins/media-keys/csd-media-keys-manager.c
---
old/cinnamon-settings-daemon-4.2.2/plugins/media-keys/csd-media-keys-manager.c
2019-07-25 10:22:55.000000000 +0200
+++
new/cinnamon-settings-daemon-4.4.0/plugins/media-keys/csd-media-keys-manager.c
2019-11-16 16:38:35.000000000 +0100
@@ -169,7 +169,6 @@
gint inhibit_keys_fd;
GSettings *desktop_session_settings;
GSettings *cinnamon_session_settings;
- gboolean use_logind;
/* Multihead stuff */
GdkScreen *current_screen;
@@ -1477,16 +1476,16 @@
;
gboolean hybrid = g_settings_get_boolean
(manager->priv->cinnamon_session_settings,
"prefer-hybrid-sleep");
- csd_power_suspend (manager->priv->use_logind, hybrid);
+ csd_power_suspend (hybrid);
break;
case CSD_POWER_ACTION_INTERACTIVE:
cinnamon_session_shutdown (manager);
break;
case CSD_POWER_ACTION_SHUTDOWN:
- csd_power_poweroff (manager->priv->use_logind);
+ csd_power_poweroff ();
break;
case CSD_POWER_ACTION_HIBERNATE:
- csd_power_hibernate (manager->priv->use_logind);
+ csd_power_hibernate ();
break;
case CSD_POWER_ACTION_BLANK:
execute (manager, "cinnamon-screensaver-command --lock",
FALSE);
@@ -1840,8 +1839,6 @@
NULL);
manager->priv->desktop_session_settings =
g_settings_new("org.cinnamon.desktop.session");
- manager->priv->use_logind = g_settings_get_boolean
(manager->priv->desktop_session_settings, "settings-daemon-uses-logind");
-
manager->priv->cinnamon_session_settings =
g_settings_new("org.cinnamon.SessionManager");
/* for the power plugin interface code */
manager->priv->power_settings = g_settings_new (SETTINGS_POWER_DIR);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/mouse/csd-mouse-manager.c
new/cinnamon-settings-daemon-4.4.0/plugins/mouse/csd-mouse-manager.c
--- old/cinnamon-settings-daemon-4.2.2/plugins/mouse/csd-mouse-manager.c
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/mouse/csd-mouse-manager.c
2019-11-16 16:38:35.000000000 +0100
@@ -74,6 +74,7 @@
#define KEY_TOUCHPAD_ENABLED "touchpad-enabled"
#define KEY_NATURAL_SCROLL_ENABLED "natural-scroll"
+#define KEY_TOUCHPAD_DISABLE_WITH_MOUSE "disable-with-external-mouse"
/* Mouse settings */
#define KEY_LOCATE_POINTER "locate-pointer"
@@ -420,6 +421,47 @@
}
}
+static gboolean
+property_get_bool (GdkDevice *device,
+ XDevice *xdevice,
+ const char * property_name,
+ int property_index)
+{
+ int rc;
+ Atom act_type, property;
+ int act_format;
+ unsigned long nitems, bytes_after;
+ unsigned char *data;
+
+ gboolean ret = FALSE;
+
+ property = property_from_name (property_name);
+ if (!property) {
+ return FALSE;
+ }
+
+ g_debug ("Getting %s on %s", property_name, gdk_device_get_name
(device));
+
+ gdk_x11_display_error_trap_push (gdk_display_get_default ());
+ rc = XGetDeviceProperty (GDK_DISPLAY_XDISPLAY (gdk_display_get_default
()), xdevice,
+ property, 0, 1, False,
+ XA_INTEGER, &act_type, &act_format, &nitems,
+ &bytes_after, &data);
+ if (rc == Success && act_type == XA_INTEGER && act_format == 8 &&
nitems > property_index) {
+ ret = data[property_index];
+ }
+
+ if (rc == Success) {
+ XFree (data);
+ }
+
+ if (gdk_x11_display_error_trap_pop (gdk_display_get_default ())) {
+ g_warning ("Error while getting %s on \"%s\"", property_name,
gdk_device_get_name (device));
+ }
+
+ return ret;
+}
+
static void
touchpad_set_bool (GdkDevice *device, const char * property_name, int
property_index, gboolean enable)
{
@@ -435,6 +477,24 @@
xdevice_close (xdevice);
}
+static gboolean
+touchpad_get_bool (GdkDevice *device, const char * property_name, int
property_index)
+{
+ XDevice *xdevice;
+ gboolean ret = FALSE;
+
+ xdevice = open_gdk_device (device);
+ if (xdevice == NULL)
+ return ret;
+
+ if (device_is_touchpad (xdevice))
+ ret = property_get_bool (device, xdevice, property_name,
property_index);
+
+ xdevice_close (xdevice);
+
+ return ret;
+}
+
static void
set_left_handed_legacy_driver (CsdMouseManager *manager,
GdkDevice *device,
@@ -932,6 +992,39 @@
return 0;
}
+static int
+set_disable_w_mouse_attached_libinput (CsdMouseManager *manager, gboolean
state)
+{
+ GList *devices, *l;
+
+ /* This is only called once for synaptics but for libinput we need
+ * to loop through the list of devices
+ */
+ devices = gdk_device_manager_list_devices
(manager->priv->device_manager, GDK_DEVICE_TYPE_SLAVE);
+
+ for (l = devices; l != NULL; l = l->next) {
+ GdkDevice *device = l->data;
+
+ if (device_is_ignored (manager, device))
+ continue;
+
+ if (touchpad_get_bool (device, "libinput Send Events Modes
Available", 1)) {
+ touchpad_set_bool (device, "libinput Send Events Mode
Enabled", 1, state);
+ }
+
+ }
+ g_list_free (devices);
+
+ return 0;
+}
+
+static void
+set_disable_w_mouse_attached (CsdMouseManager *manager, gboolean state)
+{
+
+ set_disable_w_mouse_attached_libinput (manager, state);
+}
+
static void
set_tap_to_click_synaptics (GdkDevice *device,
gboolean state,
@@ -1528,6 +1621,11 @@
return;
}
+ if (g_str_equal (key, KEY_TOUCHPAD_DISABLE_WITH_MOUSE)) {
+ set_disable_w_mouse_attached (manager, g_settings_get_boolean
(manager->priv->touchpad_settings, key));
+ return;
+ }
+
devices = gdk_device_manager_list_devices
(manager->priv->device_manager, GDK_DEVICE_TYPE_SLAVE);
for (l = devices; l != NULL; l = l->next) {
@@ -1602,6 +1700,7 @@
/* If a touchpad was to appear... */
set_disable_w_typing (manager, g_settings_get_boolean
(manager->priv->touchpad_settings, KEY_TOUCHPAD_DISABLE_W_TYPING));
+ set_disable_w_mouse_attached (manager, g_settings_get_boolean
(manager->priv->touchpad_settings, KEY_TOUCHPAD_DISABLE_WITH_MOUSE));
}
}
@@ -1676,6 +1775,8 @@
g_settings_get_boolean
(manager->priv->mouse_a11y_settings, KEY_DWELL_CLICK_ENABLED),
g_settings_get_boolean
(manager->priv->mouse_a11y_settings, KEY_SECONDARY_CLICK_ENABLED));
set_disable_w_typing (manager, g_settings_get_boolean
(manager->priv->touchpad_settings, KEY_TOUCHPAD_DISABLE_W_TYPING));
+ set_disable_w_mouse_attached (manager, g_settings_get_boolean
(manager->priv->touchpad_settings, KEY_TOUCHPAD_DISABLE_WITH_MOUSE));
+
devices = gdk_device_manager_list_devices
(manager->priv->device_manager, GDK_DEVICE_TYPE_SLAVE);
for (l = devices; l != NULL; l = l->next) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/cinnamon-settings-daemon-4.2.2/plugins/power/csd-power-manager.c
new/cinnamon-settings-daemon-4.4.0/plugins/power/csd-power-manager.c
--- old/cinnamon-settings-daemon-4.2.2/plugins/power/csd-power-manager.c
2019-07-25 10:22:55.000000000 +0200
+++ new/cinnamon-settings-daemon-4.4.0/plugins/power/csd-power-manager.c
2019-11-16 16:38:35.000000000 +0100
@@ -138,7 +138,6 @@
GSettings *settings_xrandr;
GSettings *settings_desktop_session;
GSettings *settings_cinnamon_session;
- gboolean use_logind;
UpClient *up_client;
GDBusConnection *connection;
GCancellable *bus_cancellable;
@@ -1936,7 +1935,7 @@
gboolean hybrid = g_settings_get_boolean
(manager->priv->settings_cinnamon_session,
"prefer-hybrid-sleep");
- csd_power_suspend (manager->priv->use_logind, hybrid);
+ csd_power_suspend (hybrid);
break;
case CSD_POWER_ACTION_INTERACTIVE:
cinnamon_session_shutdown ();
@@ -1947,13 +1946,13 @@
}
turn_monitors_off (manager);
- csd_power_hibernate (manager->priv->use_logind);
+ csd_power_hibernate ();
break;
case CSD_POWER_ACTION_SHUTDOWN:
/* this is only used on critically low battery where
* hibernate is not available and is marginally better
* than just powering down the computer mid-write */
- csd_power_poweroff (manager->priv->use_logind);
+ csd_power_poweroff ();
break;
case CSD_POWER_ACTION_BLANK:
/* Lock first or else xrandr might reconfigure stuff and the
ss's coverage
@@ -4081,7 +4080,6 @@
manager->priv->settings_xrandr = g_settings_new
(CSD_XRANDR_SETTINGS_SCHEMA);
manager->priv->settings_desktop_session = g_settings_new
(CSD_SESSION_SETTINGS_SCHEMA);
manager->priv->settings_cinnamon_session = g_settings_new
(CSD_CINNAMON_SESSION_SCHEMA);
- manager->priv->use_logind = g_settings_get_boolean
(manager->priv->settings_desktop_session, "settings-daemon-uses-logind");
manager->priv->inhibit_lid_switch_enabled =
g_settings_get_boolean (manager->priv->settings,
"inhibit-lid-switch");