Skip to content

screenedge: Don't unhide panel from old edges

screenedge: Don't unhide panel from old edges

The panel is unhided when the screen is rotated, which is not convenient for 2-in-1 laptop users.

x11client: Use QTimer::singleShot in m_edgeGeometryTrackingConnection

frameGeometryChanged will be emitted before and after the panel is moved to the edge, but we don't want to call reserve(...) before the panel is moved.

xdgshellclient: Add a small delay before calling updateShowOnScreenEdge from frameGeometryChanged

On Wayland, frameGeometryChanged is emitted only once after a screen is rotated and before the panel is moved to any edge, so set a small delay to get the correct geometry of a screen.

This is hacky because the required delay could vary on different devices. I don't know if it's intended not to emit frameGeometryChanged again after the panel is moved (which changes the geometry of a screen).

BUG: 448420

Merge request reports