fix: item menu may be empty due to error

Parsing item context menu may fail, always check context menu in
mousePressEvent.

Log: fix item menu may be empty due to error
This commit is contained in:
Yixue Wang 2024-01-10 10:30:37 +08:00 committed by Tsic
parent 01e2377d86
commit a222173da6

View File

@ -829,8 +829,9 @@ void QuickDockItem::mousePressEvent(QMouseEvent *event)
if (event->button() != Qt::RightButton)
return QWidget::mousePressEvent(event);
static std::once_flag contextMenuInitialized;
std::call_once(contextMenuInitialized, &QuickDockItem::updateContextMenu, this);
if (m_contextMenu->actions().isEmpty()) {
updateContextMenu();
}
if (!m_contextMenu->actions().isEmpty()) {
m_contextMenu->exec(QCursor::pos());