Bug 390654 - KWin erroneously always enables the left touch screen edge
Summary: KWin erroneously always enables the left touch screen edge
Status: RESOLVED NOT A BUG
Alias: None
Product: kwin
Classification: Plasma
Component: input (show other bugs)
Version: git master
Platform: Neon Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-02-18 02:19 UTC by Nate Graham
Modified: 2018-02-18 16:23 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
KWin has a left touch screen edge, but kwinrc doesn't know about it (324.44 KB, image/png)
2018-02-18 02:19 UTC, Nate Graham
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nate Graham 2018-02-18 02:19:02 UTC
Created attachment 110768 [details]
KWin has a left touch screen edge, but kwinrc doesn't know about it

The following issue is a significant generator of online support requests and user complaints. People complain about "missed clicks" or a "dead pixel" on the left edge of the screen when using Xorg. For example, see Bug 380476 and Bug 387775. The issue is caused by KWin's left touch screen edge; turning it off resolves the issue.

The fact that the left touch screen edge is always on by default appears to be a bug, which can be seen by doing the following:

1. $ rm ~/.config/kwinrc
2. Go to System Settings > Desktop Behavior > Touch Screen
3. Click the button corresponding to the right edge and set it to something
4. $ tail -n 5 ~/.config/kwinrc

Kwinrc has the following:

[TouchEdges]
Bottom=None
Left=None
Right=ShowDesktop
Top=None

kwinrc knows about the right touch screen edge that you set, but thinks that there's no left touch screen edge. Yet, there is! See attached screenshot.

If I have misinterpreted the situation that the left touch screen edge is enabled deliberately, then please ignore the above and instead consider this Bugzilla ticket to be a request to turn off left touch screen edge by default on X11 as it generates a steady stream of user complaints.
Comment 1 Martin Flöser 2018-02-18 16:05:37 UTC
The left touch edge is enabled by default. I know it because I implemented it.

For any key not present in the config file, the hardcoded default is used. This is a standard feature of KConfig API.

In this particular case we have the following piece of code:
touchConfig(QStringLiteral("TouchBorderActivate"), m_touchActivate, TabBoxWindowsMode, QStringList{QString::number(int(ElectricLeft))});

Deleting the config file while KWin is running has 0 effect.

The setting will stay enabled by default. This is a maintainer decision! This is a useful feature and we seem to have conflicts here between users expecting it to work exactly like that and users not having a touch screen and having issues with that. In today's world we need to support touch screens by default in a sensible way (e.g. for notebooks) without looking like yesterdays thing. Thus this will stay on.
Comment 2 Martin Flöser 2018-02-18 16:23:28 UTC
> Kwinrc has the following:
> 
> [TouchEdges]
> Bottom=None
> Left=None
> Right=ShowDesktop
> Top=None

Btw. that's not how the screen/touch edges work. The settings exist multiple times. You need to look into the TabBox settings group to find it enabled.