polonium
polonium copied to clipboard
[Bug]: KDE desktop crash after adding vertical tile to vertical monitor if an active window exists
Before you make the issue, confirm that
- [X] You are running the master build from GitHub actions
- [X] You have read the FAQ and the usage instructions
- [X] You have searched pull requests and issues and have found none similar to your issue
- [X] This problem comes from a failure in the tiling system and not a missing feature
Describe the bug
From a fresh reboot.
Polonium causes the KDE desktop/windows to crash after adding vertical tile on vertical monitor if an active window exists. In addition, vertical tiling does not seem to work on a vertical monitor.
To reproduce
main monitor display = landscape secondary monitor = vertical
- have an active window on the secondary monitor.
- press meta+T
- split vertically
Result = All windows crash
Vertical tiles don't seem to work in the vertical monitor, windows only align horizontally.
Expected behavior
ability to split vertical monitors in half where windows automatically scale and adjust to the vertical split.
Log output
journalctl --user --no-pager -e | grep -i "polonium"
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium INF: Polonium started!
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Config is {"debug":true,"tilePopups":false,"filterProcess":["krunner","yakuake","kded","polkit","plasmashell"],"filterCaption":[""],"timerDelay":10,"keepTiledBelow":true,"borders":1,"maximizeSingle":false,"resizeAmount":10,"saveOnTileEdit":true,"engineType":1,"insertionPoint":0,"rotateLayout":false}
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:03 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:04 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:05 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Restarting init timer
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"f56bdcd6-2028-4ceb-ad64-6dc8be6d403c","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:06 epoch kwin_wayland[1069]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"f56bdcd6-2028-4ceb-ad64-6dc8be6d403c","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:07 epoch kwin_wayland[1069]: qml: Polonium DBG: Window plasmashell hooked into script
Apr 20 11:22:07 epoch kwin_wayland[1069]: qml: Polonium DBG: Not tiling window plasmashell
Apr 20 11:22:11 epoch kwin_wayland[1069]: qml: Polonium DBG: Window kitty hooked into script
Apr 20 11:22:11 epoch kwin_wayland[1069]: qml: Polonium DBG: Window kitty added
Apr 20 11:22:11 epoch kwin_wayland[1069]: qml: Polonium DBG: Adding window kitty to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:11 epoch kwin_wayland[1069]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:17 epoch kwin_wayland[1069]: qml: Polonium DBG: Window plasmashell hooked into script
Apr 20 11:22:17 epoch kwin_wayland[1069]: qml: Polonium DBG: Not tiling window plasmashell
Apr 20 11:22:18 epoch kwin_wayland[1069]: qml: Polonium DBG: Window plasmashell removed
Apr 20 11:22:18 epoch kwin_wayland[1069]: qml: Polonium DBG: Removing window plasmashell from desktops
Apr 20 11:22:21 epoch kwin_wayland[1069]: qml: Polonium DBG: Layout modified for tile QRectF(3440, 0, 1440, 2560)
Apr 20 11:22:21 epoch kwin_wayland[1069]: qml: Polonium ERR: Tile QRectF(3440, 0, 1440, 1280) not registered
Apr 20 11:22:21 epoch kwin_wayland[1069]: qml: Polonium ERR: Tile QRectF(3440, 1280, 1440, 1280) not registered
Apr 20 11:22:26 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser hooked into script
Apr 20 11:22:26 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser added
Apr 20 11:22:26 epoch kwin_wayland[1069]: qml: Polonium DBG: Adding window Thorium-browser to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:26 epoch kwin_wayland[1069]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:28 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser hooked into script
Apr 20 11:22:28 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser added
Apr 20 11:22:28 epoch kwin_wayland[1069]: qml: Polonium DBG: Adding window Thorium-browser to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:28 epoch kwin_wayland[1069]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:30 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser removed
Apr 20 11:22:30 epoch kwin_wayland[1069]: qml: Polonium DBG: Removing window Thorium-browser from desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:30 epoch kwin_wayland[1069]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:35 epoch kwin_wayland[1069]: qml: Polonium DBG: Window Thorium-browser moved into an unmanaged tile
Apr 20 11:22:35 epoch kwin_wayland[1069]: qml: Polonium DBG: Untiling window Thorium-browser on desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:35 epoch kwin_wayland[1069]: qml: Polonium DBG: Putting client Thorium-browser in tile QRectF(3440, 0, 1440, 1280) with direction 2 on desktop {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:35 epoch kwin_wayland[1069]: qml: Polonium ERR: Tile QRectF(3440, 0, 1440, 1280) not registered
Apr 20 11:22:35 epoch kwin_wayland[1069]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium INF: Polonium started!
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Config is {"debug":true,"tilePopups":false,"filterProcess":["krunner","yakuake","kded","polkit","plasmashell"],"filterCaption":[""],"timerDelay":10,"keepTiledBelow":true,"borders":1,"maximizeSingle":false,"resizeAmount":10,"saveOnTileEdit":true,"engineType":1,"insertionPoint":0,"rotateLayout":false}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"f56bdcd6-2028-4ceb-ad64-6dc8be6d403c","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Creating new engine for desktop {"desktop":"f56bdcd6-2028-4ceb-ad64-6dc8be6d403c","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Window plasmashell hooked into script
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Not tiling window plasmashell
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Window plasmashell hooked into script
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Not tiling window plasmashell
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Window org.kde.polkit-kde-authentication-agent-1 hooked into script
Apr 20 11:22:37 epoch kwin_wayland[2495]: qml: Polonium DBG: Not tiling window org.kde.polkit-kde-authentication-agent-1
Apr 20 11:22:38 epoch kwin_wayland[2495]: qml: Polonium DBG: Window plasmashell hooked into script
Apr 20 11:22:38 epoch kwin_wayland[2495]: qml: Polonium DBG: Not tiling window plasmashell
Apr 20 11:22:43 epoch kwin_wayland[2495]: qml: Polonium DBG: Window org.kde.polkit-kde-authentication-agent-1 removed
Apr 20 11:22:43 epoch kwin_wayland[2495]: qml: Polonium DBG: Removing window org.kde.polkit-kde-authentication-agent-1 from desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:47 epoch kwin_wayland[2495]: qml: Polonium DBG: Window org.kde.drkonqi hooked into script
Apr 20 11:22:47 epoch kwin_wayland[2495]: qml: Polonium DBG: Window org.kde.drkonqi added
Apr 20 11:22:47 epoch kwin_wayland[2495]: qml: Polonium DBG: Adding window org.kde.drkonqi to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:22:47 epoch kwin_wayland[2495]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:23:40 epoch kwin_wayland[2495]: qml: Polonium DBG: Window org.kde.drkonqi removed
Apr 20 11:23:40 epoch kwin_wayland[2495]: qml: Polonium DBG: Removing window org.kde.drkonqi from desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:23:40 epoch kwin_wayland[2495]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:23:45 epoch kwin_wayland[2495]: qml: Polonium DBG: Window Thorium-browser hooked into script
Apr 20 11:23:45 epoch kwin_wayland[2495]: qml: Polonium DBG: Window Thorium-browser added
Apr 20 11:23:45 epoch kwin_wayland[2495]: qml: Polonium DBG: Adding window Thorium-browser to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:23:45 epoch kwin_wayland[2495]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Apr 20 11:23:51 epoch kwin_wayland[2495]: qml: Polonium DBG: Window kitty hooked into script
Apr 20 11:23:51 epoch kwin_wayland[2495]: qml: Polonium DBG: Window kitty added
Apr 20 11:23:51 epoch kwin_wayland[2495]: qml: Polonium DBG: Adding window kitty to desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"}
Apr 20 11:23:51 epoch kwin_wayland[2495]: qml: Polonium DBG: Rebuilding layout for desktops {"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-1"},{"desktop":"ba32a5b2-6a2c-4fd1-9176-0daccced10e1","activity":"d72c72f1-4763-476c-a2f3-f48d926cdc4f","output":"DP-2"}
Screenshots and videos
Split vertically with active window on vertical monitor
everything crashes
unable to tile windows vertically
script settings
Additional context
No response
Crashes almost as expected. Why would you edit the actual layout with Meta+T unless you're using the KWin layout? If you are, please specify, if not, don't change the amount of tiles on screen through KWin.
What's the alternative to using Meta+T here? This crash is exactly why I stopped using it. A crash should never be an expected result. Should be handled somehow.
@smithmd Handled by what? The script? The amount of control that the script has over KWin and its tiling is heavily limited. There's no exception to catch that when uncaught causes a crash, just random and unpredictable undefined behavior. One such undefined behavior is editing the layout when it is already being managed by the engine. While the script should just ignore the edits, sometimes KWin doesn't and throws a fit.
Then again I ask, "What's the alternative to using Meta+T here?" Is the answer just that there's no way to manually edit the layout without potential crashes?