Bug 506622 - Losing one of the custom tiling location at restart or logout
Summary: Losing one of the custom tiling location at restart or logout
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: Custom Tiling (other bugs)
Version First Reported In: 6.4.0
Platform: Fedora RPMs Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-07-05 09:07 UTC by Bruno
Modified: 2026-06-01 20:32 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bruno 2025-07-05 09:07:53 UTC
SUMMARY
When creating a custom tiling layout, one of the zones consistently disappears after logout or restart.  Zones are created using Meta+T, it works as expected during the session but one zone at the bottom of the secondary monitor in portrait mode always disappears after logout or restart.

STEPS TO REPRODUCE
1. Create a custom tiling layout.
2. Restart or logout.
3. Meta+T shows one zone missing from before restart.

OBSERVED RESULT
One zone at the bottom is missing.

EXPECTED RESULT
All 3 zones from before should be there.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Fedora KDE 6.4.2
KDE Plasma Version: 6.4.2
KDE Frameworks Version: 6.15.0
Qt Version: 6.9.1

ADDITIONAL INFORMATION
Comment 1 D Mitsuki 2025-07-05 16:26:12 UTC
I'm observing the same behavior, and it's also happening to my monitor in portrait mode. It's my leftmost monitor and I'm on plasma 6.4.1
Comment 2 i 2025-08-01 09:07:41 UTC
Exact same situation here - left-hand portrait monitor constantly loses the tile layout, happening since KDE 6.4.x.
Comment 3 dajake1337 2025-08-03 13:26:19 UTC
I too experience this. Same setup. Left hand portrait Monitor doesn't save tiling config. Also since 6.4.x
Comment 4 Bug Janitor Service 2026-05-31 11:24:12 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/kwin/-/merge_requests/9310
Comment 5 Vlad Zahorodnii 2026-06-01 07:42:12 UTC
Git commit 9de61e188c6b583386a3734b7f51d3658b9fbf1c by Vlad Zahorodnii, on behalf of Hynek Schlindenbuch.
Committed on 01/06/2026 at 07:22.
Pushed by vladz into branch 'master'.

tiles: fix incorrect split of single tile

The bug could be reproduced like this:

- Load the 3 column custom tiling layout.
- Delete 2 of the columns.
- Split the remaining column into top/bottom.
- Reload kwin.
- There is only one tile remaining.

The issue was that the second tile was created as a sibling of the
originally split tile (i.e. 2 tiles both with the root tile as parent),
but the root tile's layout wasn't changed. So it remained horizontal and
as a result it was saved incorrectly to JSON (2 horizontal tiles with
width = 1, instead of 2 vertical tiles with height = 0.5).

When the layout was loaded from the JSON, the second tile was dropped,
because it didn't fit.
Related: bug 514355

M  +27   -0    autotests/integration/tiles_test.cpp
M  +1    -0    src/tiles/customtile.cpp

https://invent.kde.org/plasma/kwin/-/commit/9de61e188c6b583386a3734b7f51d3658b9fbf1c
Comment 6 Vlad Zahorodnii 2026-06-01 08:33:47 UTC
Git commit 04e43bd9afbb75985c3e0b9617243d9070f84d30 by Vlad Zahorodnii.
Committed on 01/06/2026 at 08:15.
Pushed by vladz into branch 'Plasma/6.7'.

tiles: fix incorrect split of single tile

The bug could be reproduced like this:

- Load the 3 column custom tiling layout.
- Delete 2 of the columns.
- Split the remaining column into top/bottom.
- Reload kwin.
- There is only one tile remaining.

The issue was that the second tile was created as a sibling of the
originally split tile (i.e. 2 tiles both with the root tile as parent),
but the root tile's layout wasn't changed. So it remained horizontal and
as a result it was saved incorrectly to JSON (2 horizontal tiles with
width = 1, instead of 2 vertical tiles with height = 0.5).

When the layout was loaded from the JSON, the second tile was dropped,
because it didn't fit.
Related: bug 514355


(cherry picked from commit 9de61e188c6b583386a3734b7f51d3658b9fbf1c)

Co-authored-by: Hynek Schlindenbuch <schlindenbuch.h@seznam.cz>

M  +27   -0    autotests/integration/tiles_test.cpp
M  +1    -0    src/tiles/customtile.cpp

https://invent.kde.org/plasma/kwin/-/commit/04e43bd9afbb75985c3e0b9617243d9070f84d30
Comment 7 Hynek Schlindenbuch 2026-06-01 20:32:10 UTC
Git commit 59dfbab76378b2b6c4df39c75ce0b75d9b1d26de by Hynek Schlindenbuch.
Committed on 01/06/2026 at 18:02.
Pushed by vladz into branch 'Plasma/6.6'.

tiles: fix incorrect split of single tile

The bug could be reproduced like this:

- Load the 3 column custom tiling layout.
- Delete 2 of the columns.
- Split the remaining column into top/bottom.
- Reload kwin.
- There is only one tile remaining.

The issue was that the second tile was created as a sibling of the
originally split tile (i.e. 2 tiles both with the root tile as parent),
but the root tile's layout wasn't changed. So it remained horizontal and
as a result it was saved incorrectly to JSON (2 horizontal tiles with
width = 1, instead of 2 vertical tiles with height = 0.5).

When the layout was loaded from the JSON, the second tile was dropped,
because it didn't fit.
Related: bug 514355

M  +27   -0    autotests/integration/tiles_test.cpp
M  +1    -0    src/tiles/customtile.cpp

https://invent.kde.org/plasma/kwin/-/commit/59dfbab76378b2b6c4df39c75ce0b75d9b1d26de