Bug 434720 - Touchpad applet can be shown under conditions where its only possible purpose is to make your laptop unusable
Summary: Touchpad applet can be shown under conditions where its only possible purpose...
Status: RESOLVED FIXED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Touchpad (show other bugs)
Version: 5.21.0
Platform: Other Linux
: NOR critical
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-21 13:37 UTC by Nate Graham
Modified: 2021-11-06 19:26 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.23


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2021-03-21 13:37:39 UTC
The only thing this applet can do is disable and re-enable a touchpad. So when the system has only a touchpad and no external mouse, the only thing it can do is allow the user to disable the touchpad with no means to re-enable it, which can make the computer unusable (see Bug 434718).

Accordingly, this applet should be an auto-load applet that is unloaded and disabled by default, and only auto-loads when the system has both a touchpad and a mouse connected. This is the only circumstance under which the applet can possibly serve a useful, non-destructive function.
Comment 1 Nate Graham 2021-03-21 13:41:35 UTC
For laptops with dedicated "toggle touchpad" keys, we could do one of two things:

1. Auto-load the applet because there is a hardware means of recovering from disabling your touchpad without a mouse handy.

2. Still keep it unloaded and accept the consequence that nothing would handle the "toggle touchpad" keyboard button, because being able to disable your touchpad from hardware when you don't have a mouse as an alternative input device is completely pointless and still scary.
Comment 2 Alois Wohlschlager 2021-03-21 14:31:06 UTC
I have a laptop with a semi-dedicated "toggle touchpad" key which seems to work at a very low level (it toggles the touchpad without even having the touchpad applet loaded). So I'm not sure even a dedicated key would be able to rescue the situation when the user activates the very questionable functionality of the applet.
Comment 3 Nate Graham 2021-05-07 20:37:09 UTC
Hmm, darn. Maybe it would be safest to just delete the whole applet.
Comment 4 Bug Janitor Service 2021-05-07 20:56:14 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-desktop/-/merge_requests/455
Comment 5 Nate Graham 2021-05-18 18:16:56 UTC
Git commit 3b4026641454c02ad3030c8cd2134a672995ffa9 by Nate Graham.
Committed on 18/05/2021 at 18:15.
Pushed by ngraham into branch 'master'.

Delete the Touchpad applet

Ths only thing this applet can do is disable or re-enable your
touchpad. If you have no touchpad, it is pointless. If you have only a
touchpad and no mouse, then the only thing it can do is give you a way
to brick your laptop until you find a mouse you can use to re-enable
the touchpad.

The only conceivable non-catastrophic usage of this applet is to
manually disable a laptop's touchpad when a mouse is plugged in. This is
an extremely niche use case that can already be accomplished by using
the "Toggle Touchpad" keyboard shortcut which is exported by the KCM,
and would be better served by a setting in the touchpad KCM itself to
automatically disable the touchpad when a mouse is plugged in and
re-enable it when unplugged, should such a feature be deemed useful. I
have my doubts, as Libinput has gotten very good at ignoring false input
these days, so I think there is no longer much of a use case for
disabling a touchpad at all.

Overall, this applet is not worth the bugs and degradation of the user
experience that it can cause. It is too dangerous to exist. Let's delete
it.
Related: bug 434718, bug 397210, bug 378879, bug 430029, bug 434717
FIXED-IN: 5.23

M  +1    -1    kcms/touchpad/CMakeLists.txt
D  +0    -155  kcms/touchpad/applet/qml/contents/ui/touchpad.qml
D  +0    -160  kcms/touchpad/applet/qml/metadata.desktop
D  +0    -30   kcms/touchpad/applet/touchpad.svg
R  +4    -12   kcms/touchpad/dataengine/CMakeLists.txt [from: kcms/touchpad/applet/CMakeLists.txt - 065% similarity]
R  +0    -0    kcms/touchpad/dataengine/plasma-dataengine-touchpad.desktop [from: kcms/touchpad/applet/plasma-dataengine-touchpad.desktop - 100% similarity]
R  +0    -0    kcms/touchpad/dataengine/touchpad.operations [from: kcms/touchpad/applet/touchpad.operations - 100% similarity]
R  +0    -0    kcms/touchpad/dataengine/touchpadengine.cpp [from: kcms/touchpad/applet/touchpadengine.cpp - 100% similarity]
R  +0    -0    kcms/touchpad/dataengine/touchpadengine.h [from: kcms/touchpad/applet/touchpadengine.h - 100% similarity]
R  +0    -0    kcms/touchpad/dataengine/touchpadservice.cpp [from: kcms/touchpad/applet/touchpadservice.cpp - 100% similarity]
R  +0    -0    kcms/touchpad/dataengine/touchpadservice.h [from: kcms/touchpad/applet/touchpadservice.h - 100% similarity]

https://invent.kde.org/plasma/plasma-desktop/commit/3b4026641454c02ad3030c8cd2134a672995ffa9
Comment 6 Ben Johnson 2021-11-06 19:26:38 UTC
I really need this applet back. Is it getting uploaded somewhere? Is there an alternate implementation?
I have a laptop with a touch screen and a very overly sensitive touchpad. I can barely type with the touch pad enabled. I had the applet set to enable/disable the touchpad with cntrl-alt-t and I could toggle it with the System tray icon. The system tray icon also gave me the feedback to see if the touchpad was enabled/disabled. It was easy enough to go into the system tray config and enable/disable the entry if someone didn't want it, so I don't understand why this was removed instead of just making the default "always hidden" or "shown when relevant" like some of the others.