krohnkite: Krohnkite does not manage new windows

Symptom After restarting the system yesterday, any window I open is floating. Hitting the usual “toggle float” shortcut does not do anything. Therefore I assume the newly started windows are somehow not “managed” by krohnkite. If I disable the script in “Kwin-Scripts” and enable it again, all currently opened windows become tiled and behave as expected (toggle float works). Any windows afterwards are again unaffected.

I reset the configuration. Reinstalled krohnkite. Rebooted the system. But nothing changed.

It seems to also affect the tiling scripts “Tiling Extension”

I can’t remember installing any new packages or changing any settings. Pacman logs does not show anything either.

If I enable debugging in the krohnkite options and restart Kwin kwin_x11 --replace I see the following messages:

qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 2243, resource id: 144703533, major code: 18 (ChangeProperty), minor code: 0
kwin_core: Compositing is not possible
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 2337, resource id: 144703536, major code: 3 (GetWindowAttributes), minor code: 0
qt.qpa.xcb: QXcbConnection: XCB error: 9 (BadDrawable), sequence: 2338, resource id: 144703536, major code: 14 (GetGeometry), minor code: 0

But I don’t know if they are related. Opening any new windows does not produce new ouput.

How to Reproduce Most likely won’t work be reproducible.

Expected behavior Windows being tiled (or controllable with the krohnkite shortcuts)

Environment

  • Distro: Manjaro
  • KWin version: 5.16.4
  • Krohnkite version: 5a7b64d
  • List of KWin scripts in use: “Enforce window decoration for GTK+ windows”

Notes This is probably not a lot of information to work with, but maybe you have an idea where I could start looking or how to get more debug output.

About this issue

  • Original URL
  • State: open
  • Created 5 years ago
  • Reactions: 1
  • Comments: 15 (1 by maintainers)

Commits related to this issue

Most upvoted comments

Hmm I think I fixed it by launching KWin compositor settings. There was a warning dialog there, saying that compositing has crashed in the past. After hitting the whatever button it displayed, krohnkite started managing new windows again 👨‍🔬

Thank you very much for sharing this. I had given up on krohnkite, but now I can use it again 😃

For me it wasn’t enough to hit the button though, I had to change some option and apply it. Then tiling started working again (even after reverting that option)

Issue seems to be with OpenGL Choosing XRender as Rendering backend in KDE’s Compositor settings fixes the problem

Alternatively, with OpenGL, one has to minimize and re-open the newly created window to let krohnkite tile it

I’m getting the same behaviour. New windows aren’t tiled. ~Moving the newly created window~ Switching to another virtual desktop (and back) makes it tile properly.

Arch, KWin 5.17.3-1, Krohnkite r307.577fc7f-1

Same issue here - switching compositor to OpenGL 3.1 from 2.0 fixed the error. Before that, windows got tiled properly only after switching virtual desktops, moving the window to another screen, or minimizing and maximizing the window again.

Hi, everyone.

Thanks @aerosol for figuring out the source of the problem.

My uneducated guess is that client.windowShown signal is not emitted, or is, but races with the handler connecting on workspace.ClientAdded, so the handler is never executed

You’re basically right with that. Sometimes KWin just refuses to emit events. I also found that this happens if compositor is disabled by some apps, though I’m not sure if this is a consistent behaviour.

It’s clear that this is an upstream issue, and the only solution is to make sure the compositor is running correctly, I guess.