fix: hide tooltip on window leave event (#5309)
This commit is contained in:
@@ -257,6 +257,20 @@ SplitHeader::SplitHeader(Split *split)
|
||||
getSettings()->headerStreamTitle.connect(_, this->managedConnections_);
|
||||
getSettings()->headerGame.connect(_, this->managedConnections_);
|
||||
getSettings()->headerUptime.connect(_, this->managedConnections_);
|
||||
|
||||
auto *window = dynamic_cast<BaseWindow *>(this->window());
|
||||
if (window)
|
||||
{
|
||||
// Hack: In some cases Qt doesn't send the leaveEvent the "actual" last mouse receiver.
|
||||
// This can happen when quickly moving the mouse out of the window and right clicking.
|
||||
// To prevent the tooltip from getting stuck, we use the window's leaveEvent.
|
||||
this->managedConnections_.managedConnect(window->leaving, [this] {
|
||||
if (this->tooltipWidget_->isVisible())
|
||||
{
|
||||
this->tooltipWidget_->hide();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
void SplitHeader::initializeLayout()
|
||||
|
||||
Reference in New Issue
Block a user