https://bugs.kde.org/show_bug.cgi?id=387775
--- Comment #35 from Chris Holland <zrenf...@gmail.com> --- I tried using `xprop` and `xwininfo` then clicking the bottom left corner to find out it's properties. $ xprop XdndAware(ATOM) = ATOM $ xwininfo xwininfo: Window id: 0xbfaa2f8 (has no name) Absolute upper-left X: 0 Absolute upper-left Y: -16255 Relative upper-left X: 0 Relative upper-left Y: -16255 Width: 1 Height: 33590 Depth: 0 Visual: 0x21 Visual Class: TrueColor Border width: 0 Class: InputOnly Colormap: 0x0 (not installed) Bit Gravity State: ForgetGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: yes Corners: +0+-16255 -1919+-16255 -1919--16255 +0--16255 -geometry 1x33590+0+-16255 A 1x33590 window? Oh: 33590-16255-16255=1080 $ xwininfo -root -tree | grep 33590 -B10 -A10 0x1800004 "Qt Selection Owner for xembedsniproxy": () 3x3+0+0 +0+0 0x1a00004 "Qt Selection Owner for kaccess": () 3x3+0+0 +0+0 0xa00004 "Qt Selection Owner for kwalletd5": () 3x3+0+0 +0+0 0x1600005 (has no name): () 1x1+0+0 +0+0 0x1600004 "Qt Selection Owner for ksmserver": () 3x3+0+0 +0+0 0x1200004 "Qt Selection Owner for kglobalaccel5": () 3x3+0+0 +0+0 0xe00005 (has no name): () 1x1+0+0 +0+0 0xe00004 "Qt Selection Owner for kactivitymanagerd": () 3x3+0+0 +0+0 0xc00004 "Qt Selection Owner for kded5": () 3x3+0+0 +0+0 0xbe00007 "KWin": () 1x1+0+0 +0+0 0xbfaa2f8 (has no name): () 1x33590+0+-16255 +0+-16255 0xbfaaf6e (has no name): () 1920x525+0+0 +0+0 1 child: 0xbfaaf6f (has no name): () 1920x525+0+0 +0+0 1 child: 0x2600007 "kwin : bash — Yakuake": ("yakuake" "yakuake") 1920x525+0+0 +0+0 0xbe00036 (has no name): () 1920x30+0+1050 +0+1050 1 child: 0xbe00037 (has no name): () 1920x30+0+0 +0+1050 1 child: 0x1e00034 "Plasma": ("plasmashell" "plasmashell") 1920x30+0+0 +0+1050 Testing an old neon-testing-20200512-1045.iso (Plasma 5.18.5?), the bug doesn't exist. The Bottom Left corner works. Also, by hiding the titlebar in breeze deco, I confirmed that kwin isn't treating titlebars special, the dead zone just doesn't cover the top corners. Here's `xwininfo` from clicking the middle-left of the screen from the ISO: $ xwininfo xwininfo: Window id: 0x2600024 (has no name) Absolute upper-left X: 0 Absolute upper-left Y: 32 Relative upper-left X: 0 Relative upper-left Y: 32 Width: 1 Height: 1016 Depth: 0 Visual: 0x21 Visual Class: TrueColor Border width: 0 Class: InputOnly Colormap: 0x0 (not installed) Bit Gravity State: ForgetGravity Window Gravity State: NorthWestGravity Backing Store State: NotUseful Save Under State: no Map State: IsViewable Override Redirect State: yes Corners: +0+32 -1919+32 -1919-32 +0-32 -geometry 1x1016+0+32 So calculating 1080-1016 = 64. 64/2 = 32. $ xwininfo -root -tree | grep 0x2600024 -B10 -A10 ... 0x2600007 "KWin": () 1x1+0+0 +0+0 0x260002f (has no name): () 1x1+0+0 +0+0 0x2600030 (has no name): () 32x32+0+0 +0+0 0x2600024 (has no name): () 1x1016+0+32 +0+32 The 1x1 is probably the "screen edge" click hotspot. 32x32+0+0 could be the default top-left "screen edge" hover effect, as it disappears when disable screenedge in system settings. It only appears for the "Toggle Window Switching" option. The 32x32 window isn't created for the "Show Desktop" option, even though the hover/glow effect is still drawn. So it's **not** the glow. So lets git clone kwin, then checkout the `Plasma/5.19` branch. * https://invent.kde.org/plasma/kwin/-/blob/master/screenedge.cpp * https://invent.kde.org/plasma/kwin/-/blob/master/screens.cpp * https://invent.kde.org/plasma/kwin/-/blob/master/outputscreens.cpp Looking at the logic of `m_cornerOffset`, this is what is intended assuming dpi is the default `96`: ScreenEdges::ScreenEdges(...) m_cornerOffset = (Screens::self()->physicalDpiX(0) + Screens::self()->physicalDpiX(0) + 5) / 6 m_cornerOffset = (96 + 96 + 5) / 6 m_cornerOffset = (int)32.83333333333333 m_cornerOffset = 32 Adding some logging to `screenedge.cpp` and `screens.cpp` and `outputscreens.cpp`, we get: kwin.screens: size(screen) QSize(1920, 1080) kwin.outputscreens: OutputScreens::physicalSize output KWin::X11Output(0x5645237ce1a0) kwin.outputscreens: OutputScreens::physicalSize return output->physicalSize() QSize(-1, -1) kwin.screens: physicalSize(screen) QSizeF(-1, -1) kwin.screenedge: Screens::self()->physicalDpiX(0) -48768 kwin.screenedge: Screens::self()->physicalDpiY(0) -27432 kwin.screenedge: ScreenEdge::m_cornerOffset -16255 TLDR: So `X11Output::physicalSize()` is returning `(-1,-1)`. This calculates a `m_cornerOffset` of `-16255`. So the 1px Left ScreenEdge "dead zone" is scaled into where the top-left and bottom-left corners should be. -- You are receiving this mail because: You are watching all bug changes.