Skip to content

Introduce a lock that blocks relayouts and config writes

Marco Martin requested to merge work/mart/layoutfix into master

The resize of the layout area can happen either by screen resolution change or available screen area change (a panel appears or is resized) This is not an atomic operation, as width and height are usually set in 2 different operations, and even worse the layout area is resized to match the available one with an animation, so many intermediate resizes that should never cause a relayout happen.

In normal operation an event compression timer limits the actual relayouts to hopefully one, but if the system is really slowed down (for instance, startup) the timer may expire and cause relayouts in non useful sizes, losing the needed configuration.

In combination with plasma-desktop!1150 (merged)

The lock blocks all relayout and config writes when the size of the layout area doesn't correspond to corona availablescreenrect, which are the only "settled" cases.

BUG:413645

Edited by Marco Martin

Merge request reports