Debian Bug report logs - #583864
gnome-settings-daemon: XF86TouchpadToggle gets out of sync on hibernation

version graph

Package: gnome-settings-daemon; Maintainer for gnome-settings-daemon is Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>; Source for gnome-settings-daemon is src:gnome-settings-daemon.

Reported by: Kalle Olavi Niemitalo <kon@iki.fi>

Date: Mon, 31 May 2010 08:21:05 UTC

Severity: normal

Found in version gnome-settings-daemon/2.30.1-1

Reply or subscribe to this bug.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>:
Bug#583864; Package gnome-settings-daemon. (Mon, 31 May 2010 08:21:07 GMT) Full text and rfc822 format available.

Acknowledgement sent to Kalle Olavi Niemitalo <kon@iki.fi>:
New Bug report received and forwarded. Copy sent to Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>. (Mon, 31 May 2010 08:21:07 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Kalle Olavi Niemitalo <kon@iki.fi>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: gnome-settings-daemon: XF86TouchpadToggle gets out of sync on hibernation
Date: Mon, 31 May 2010 09:57:22 +0300
[Message part 1 (text/plain, inline)]
Package: gnome-settings-daemon
Version: 2.30.1-1
Severity: normal

This Acer Aspire 5536G laptop has a button for disabling the
touch pad.  The button has a light that shows whether the touch
pad is disabled.  This works whether X is running or not.

In X, the button generates XF86TouchpadToggle key events.  It
seems gnome-settings-daemon grabs this key; on such an event, it
toggles the /desktop/gnome/peripherals/touchpad/touchpad_enabled
GConf key, and apparently then notices that change and enables or
disables the corresponding X input device.  (If I kill
gnome-settings-daemon and toggle the key with gconf-editor, it
does not take effect.)

http://git.gnome.org/browse/gnome-settings-daemon/tree/plugins/media-keys/gsd-media-keys-manager.c?id=GNOME_SETTINGS_DAEMON_2_30_1#n639
http://git.gnome.org/browse/gnome-settings-daemon/tree/plugins/mouse/gsd-mouse-manager.c?id=GNOME_SETTINGS_DAEMON_2_30_1#n769

Now, the problem is that these two mechanisms sometimes get out
of sync: ACPI or Linux thinks the touch pad should be disabled,
while GNOME or X11 thinks it should be enabled.  No events can
get through.  Then I press the button, and the states turn
around: ACPI or Linux thinks the touch pad should be enabled,
while GNOME or X11 thinks it should be disabled, and still no
events can get through.  Thus, no matter how many times I press
the button, the touch pad still won't work.  This seems to happen
especially if I have first disabled the touch pad by pressing the
button and then shut the laptop lid and had the system suspend to
disk.

Workarounds include:

* When the problem occurs, press Ctrl+Alt+F1 to switch out of
  X, then press the touchpad-toggle button once, and press Alt+F7
  to switch back; ACPI notices that button press but X doesn't, so
  the states will then be in sync again.

* I suppose another workaround would be to toggle the
  touchpad_enabled key with gconf-editor, so ACPI wouldn't know
  about the change.

* Change /apps/gnome_settings_daemon/keybindings/touchpad to
  empty, so gnome-settings-daemon ignores XF86TouchpadToggle.

Regardless, with this model of laptop, I think it would be safest
to automatically disable the XF86TouchpadToggle support in
gnome-settings-daemon, because the firmware and Linux can handle
the button on their own.

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-trunk-amd64 (SMP w/2 CPU cores)
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages gnome-settings-daemon depends on:
ii  gconf2                        2.28.1-3   GNOME configuration database syste
ii  libc6                         2.10.2-9   Embedded GNU C Library: Shared lib
ii  libcairo2                     1.8.10-4   The Cairo 2D vector graphics libra
ii  libdbus-1-3                   1.2.24-1   simple interprocess messaging syst
ii  libdbus-glib-1-2              0.86-1     simple interprocess messaging syst
ii  libfontconfig1                2.8.0-2.1  generic font configuration library
ii  libgconf2-4                   2.28.1-3   GNOME configuration database syste
ii  libglib2.0-0                  2.24.1-1   The GLib library of C routines
ii  libgnome-desktop-2-17         2.30.0-2   Utility library for loading .deskt
ii  libgnome2-common              2.30.0-1   The GNOME library - common files
ii  libgnomekbd4                  2.30.1-2   GNOME library to manage keyboard c
ii  libgstreamer-plugins-base0.10 0.10.29-1  GStreamer libraries from the "base
ii  libgstreamer0.10-0            0.10.29-1  Core GStreamer libraries and eleme
ii  libgtk2.0-0                   2.20.1-1   The GTK+ graphical user interface 
ii  libnotify1 [libnotify1-gtk2.1 0.4.5-1    sends desktop notifications to a n
ii  libx11-6                      2:1.3.3-3  X11 client-side library
ii  libxi6                        2:1.3-4    X11 Input extension library
ii  libxklavier16                 5.0-2      X Keyboard Extension high-level AP

gnome-settings-daemon recommends no packages.

Versions of packages gnome-settings-daemon suggests:
ii  gnome-screensaver             2.30.0-1   GNOME screen saver and locker
ii  metacity [x-window-manager]   1:2.30.1-1 lightweight GTK+ window manager
ii  openbox [x-window-manager]    3.4.11.1-1 standards compliant, fast, light-w
ii  twm [x-window-manager]        1:1.0.4-2  Tab window manager
ii  x11-xserver-utils             7.5+1      X server utilities

-- no debconf information
[Message part 2 (application/pgp-signature, inline)]

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Mon Apr 21 15:56:51 2014; Machine Name: beach.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.