Skip to content

Fix informing the underlying widget when leaving SplitterProxy

Fabian Vogt requested to merge work/kde436473 into master

While the SplitterProxy is active, it intercepts all relevant events, so that the underlying widget still thinks it's in the same "on splitter" state. When the SplitterProxy is left, the underlying widget is sent a HoverLeave/HoverMove event to make it aware of the new current cursor position. Without this, it doesn't know that it's not supposed to be in the "on splitter" state, and when it regains focus it just re-activates the SplitterProxy at the current cursor position.

This was broken by accident in d201a1f1 ("Fix SplitterProxy not clearing when above another QSplitterHandle"), which moved the hide() call past the call to QCoreApplication::sendEvent. Previously that made isVisible() false, which also prevented the interception of the HoverLeave/HoverMove events.

BUG: 436473

Merge request reports