← Back to team overview

desktop-packages team mailing list archive

[Bug 1454950] Re: It needs to press touchpad hotkey twice to re-enable touchpad

 

I add some debug message in unity-settings-daemon/plugins/mouse module, and run tests.
Here are my founds:


1-a) Press Fn+F9, function touchpad_callback disables the touchpad.
1-b) However after touchpad is disabled, device_removed_cb is invoked, and it then calls ensure_touchpad_active.
1-c) The ensure_touchpad_active checks if toucpad is the only one pointer device on the platform, it will make touchpad always enabled.
1-d) However ensure_touchpad_active only changes the gsettings entries but leave the device disabled.

* Press Fn+F9 to disable touchpad

=============================== 1st TOUCHPAD HOTKEY TRIGGER START
===============================

(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: +++(1) gsettings KEY_TOUCHPAD_ENABLED value: 0
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Trying to set device disabled for "ETPS/2 Elantech Touchpad" (12)
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Disabled device "ETPS/2 Elantech Touchpad" (12)
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: +++(2) KEY_TOUCHPAD_ENABLED, value=0 +++
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback EXIT ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG device_removed_cb ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG ensure_touchpad_active ENTER ===, gsettings key: 0
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: +++(2) KEY_TOUCHPAD_ENABLED, value=1 +++
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback EXIT ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG ensure_touchpad_active EXIT ===, gsettings key: 1
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG device_removed_cb EXIT ===

=============================== 1st TOUCHPAD HOTKEY TRIGGER END
===============================

2-a) Press Fn+F9 again the touchpad is still disabled.
2-b) The gsettings KEY_TOUCHPAD_ENABLED is set to 0 (FALSE), I think it is changed by usd-media-key.
2-c) I think because device is removed from the list, nothing happend in this stage.

* Press Fn+F9 to enable touchpad
=============================== 2nd TOUCHPAD HOTKEY TRIGGER START ===============================

(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: +++(2) KEY_TOUCHPAD_ENABLED, value=0 +++
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback EXIT ===

=============================== 2nd TOUCHPAD HOTKEY TRIGGER END
===============================

3-a) Press Fn+F9 again, the gsettings KEY_TOUCHPAD_ENABLED is set to 1(TRUE), it should be set by usd-media-key
3-b) The touchpad_callback eanbles touchpad. 

* Press Fn+F9 to enable touchpad
=============================== 3rd TOUCHPAD HOTKEY TRIGGER START ===============================

(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: +++(2) KEY_TOUCHPAD_ENABLED, value=1 +++
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: @@@ set_toucpad_enabled :12 @@@
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Trying to set device enabled for 12
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Enabled device 12
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG touchpad_callback EXIT ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG device_added_cb ENTER ===
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting handedness on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting tap to click on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting motion on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Setting accel -1/-1, threshold -1 for device 'ETPS/2 Elantech Touchpad'
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting tap to click on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting edge scroll on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: setting horiz scroll on ETPS/2 Elantech Touchpad
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: Trying to set normal scroll for "ETPS/2 Elantech Touchpad"
(lt-usd-test-mouse:16396): mouse-plugin-DEBUG: === DEBUG device_added_cb EXIT ===

=============================== 3rd TOUCHPAD HOTKEY TRIGGER END
===============================


According to my analysis, the touchpad disable hotkey should work fine if ensure_touchpad_active does nothing.
I looks the changelog in unity-settings-daemon, this function is added because of the issue:
  https://bugzilla.gnome.org/show_bug.cgi?id=685941

I think users should be able to disable the touchpad if there has control keys.
Should we keep ensure_touchpad_active this function?


** Bug watch added: GNOME Bug Tracker #685941
   https://bugzilla.gnome.org/show_bug.cgi?id=685941

** Attachment added: "run-usd-test.log"
   https://bugs.launchpad.net/ubuntu/+source/unity-settings-daemon/+bug/1454950/+attachment/4397228/+files/run-usd-test.log

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to unity-settings-daemon in Ubuntu.
https://bugs.launchpad.net/bugs/1454950

Title:
  It needs to press touchpad hotkey twice to re-enable touchpad

Status in unity-settings-daemon package in Ubuntu:
  New

Bug description:
  I have a laptop: ASUS P452L and it has a hotkey (Fn+F9) to disable touchpad function.
  I found when I use the hotkey to disable the touchpat and then I have to press the hotkey
  twice to re-enable it.

  This is symptom cannot be found if:
  1) using Kubuntu.
  2) plug the usb mouse (any port is ok)

  Because it can't be reproduced in Kubuntu, I think it should be an
  issue of unity-settings-daemon.

  Platform: ASUS P451L
  Ubuntu: 14.04-LTS
  Unity-setting-daemon version: 14.04.0+14.04.20140606-0ubuntu2
  Touchpad vendor: Elantech

  Note: This issue can be reproduced in Ubuntu 15.04.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/unity-settings-daemon/+bug/1454950/+subscriptions


References