diff options
Diffstat (limited to '')
-rw-r--r-- | ui/qt/widgets/filter_expression_toolbar.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ui/qt/widgets/filter_expression_toolbar.cpp b/ui/qt/widgets/filter_expression_toolbar.cpp index caf91cf..84dabc4 100644 --- a/ui/qt/widgets/filter_expression_toolbar.cpp +++ b/ui/qt/widgets/filter_expression_toolbar.cpp @@ -305,8 +305,10 @@ bool FilterExpressionToolBar::eventFilter(QObject *obj, QEvent *event) QContextMenuEvent *ctx = static_cast<QContextMenuEvent *>(event); QAction * filterAction = qm->actionAt(ctx->pos()); - if (filterAction) - customMenu(this, filterAction, ctx->pos()); + if (filterAction) { + QPoint tb_pos = this->mapFromGlobal(ctx->globalPos()); + customMenu(this, filterAction, tb_pos); + } return true; } else if (event->type() == QEvent::ToolTip) @@ -324,7 +326,7 @@ bool FilterExpressionToolBar::eventFilter(QObject *obj, QEvent *event) } } - return QToolBar::eventFilter(obj, event); + return DragDropToolBar::eventFilter(obj, event); } void FilterExpressionToolBar::closeMenu(QAction * /*sender*/) |