diff --git a/analyzers/cppcheck/plugin.h b/analyzers/cppcheck/plugin.h --- a/analyzers/cppcheck/plugin.h +++ b/analyzers/cppcheck/plugin.h @@ -47,7 +47,7 @@ ~Plugin() override; - KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context) override; + KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; int configPages() const override { return 1; } KDevelop::ConfigPage* configPage(int number, QWidget* parent) override; diff --git a/analyzers/cppcheck/plugin.cpp b/analyzers/cppcheck/plugin.cpp --- a/analyzers/cppcheck/plugin.cpp +++ b/analyzers/cppcheck/plugin.cpp @@ -220,9 +220,9 @@ updateActions(); } -KDevelop::ContextMenuExtension Plugin::contextMenuExtension(KDevelop::Context* context) +KDevelop::ContextMenuExtension Plugin::contextMenuExtension(KDevelop::Context* context, QWidget* parent) { - KDevelop::ContextMenuExtension extension = KDevelop::IPlugin::contextMenuExtension(context); + KDevelop::ContextMenuExtension extension = KDevelop::IPlugin::contextMenuExtension(context, parent); if (context->hasType(KDevelop::Context::EditorContext) && m_currentProject && !isRunning()) { auto eContext = static_cast(context); diff --git a/debuggers/common/midebuggerplugin.h b/debuggers/common/midebuggerplugin.h --- a/debuggers/common/midebuggerplugin.h +++ b/debuggers/common/midebuggerplugin.h @@ -56,7 +56,7 @@ ~MIDebuggerPlugin() override; void unload() override; - KDevelop::ContextMenuExtension contextMenuExtension( KDevelop::Context* ) override; + KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; virtual MIDebugSession *createSession() = 0; diff --git a/debuggers/common/midebuggerplugin.cpp b/debuggers/common/midebuggerplugin.cpp --- a/debuggers/common/midebuggerplugin.cpp +++ b/debuggers/common/midebuggerplugin.cpp @@ -169,9 +169,9 @@ } } -ContextMenuExtension MIDebuggerPlugin::contextMenuExtension(Context* context) +ContextMenuExtension MIDebuggerPlugin::contextMenuExtension(Context* context, QWidget* parent) { - ContextMenuExtension menuExt = IPlugin::contextMenuExtension(context); + ContextMenuExtension menuExt = IPlugin::contextMenuExtension(context, parent); if (context->type() != KDevelop::Context::EditorContext) return menuExt; @@ -186,16 +186,16 @@ { QString squeezed = KStringHandler::csqueeze(contextIdent, 30); - QAction* action = new QAction(this); + QAction* action = new QAction(parent); action->setText(i18n("Evaluate: %1", squeezed)); action->setWhatsThis(i18n("Evaluate expression" "

Shows the value of the expression under the cursor.

")); connect(action, &QAction::triggered, this, [this, contextIdent](){ emit addWatchVariable(contextIdent); }); menuExt.addAction(ContextMenuExtension::DebugGroup, action); - action = new QAction(this); + action = new QAction(parent); action->setText(i18n("Watch: %1", squeezed)); action->setWhatsThis(i18n("Watch expression" "

Adds the expression under the cursor to the Variables/Watch list.

")); diff --git a/languages/clang/clangsupport.h b/languages/clang/clangsupport.h --- a/languages/clang/clangsupport.h +++ b/languages/clang/clangsupport.h @@ -64,7 +64,7 @@ KDevelop::ICreateClassHelper* createClassHelper() const override; void createActionsForMainWindow(Sublime::MainWindow* window, QString& xmlFile, KActionCollection& actions) override; - KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context) override; + KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; KTextEditor::Range specialLanguageObjectRange(const QUrl &url, const KTextEditor::Cursor& position) override; QPair specialLanguageObjectJumpCursor(const QUrl &url, const KTextEditor::Cursor& position) override; diff --git a/languages/clang/clangsupport.cpp b/languages/clang/clangsupport.cpp --- a/languages/clang/clangsupport.cpp +++ b/languages/clang/clangsupport.cpp @@ -289,14 +289,14 @@ m_refactoring, &ClangRefactoring::executeMoveIntoSourceAction); } -KDevelop::ContextMenuExtension ClangSupport::contextMenuExtension(KDevelop::Context* context) +KDevelop::ContextMenuExtension ClangSupport::contextMenuExtension(KDevelop::Context* context, QWidget* parent) { ContextMenuExtension cm; EditorContext *ec = dynamic_cast(context); if (ec && ICore::self()->languageController()->languagesForUrl(ec->url()).contains(this)) { // It's a C++ file, let's add our context menu. - m_refactoring->fillContextMenu(cm, context); + m_refactoring->fillContextMenu(cm, context, parent); } return cm; } diff --git a/languages/clang/codegen/clangrefactoring.h b/languages/clang/codegen/clangrefactoring.h --- a/languages/clang/codegen/clangrefactoring.h +++ b/languages/clang/codegen/clangrefactoring.h @@ -42,7 +42,7 @@ public: explicit ClangRefactoring(QObject* parent = nullptr); - void fillContextMenu(KDevelop::ContextMenuExtension& extension, KDevelop::Context* context) override; + void fillContextMenu(KDevelop::ContextMenuExtension& extension, KDevelop::Context* context, QWidget* parent) override; QString moveIntoSource(const KDevelop::IndexedDeclaration& iDecl); diff --git a/languages/clang/codegen/clangrefactoring.cpp b/languages/clang/codegen/clangrefactoring.cpp --- a/languages/clang/codegen/clangrefactoring.cpp +++ b/languages/clang/codegen/clangrefactoring.cpp @@ -75,7 +75,7 @@ qRegisterMetaType(); } -void ClangRefactoring::fillContextMenu(ContextMenuExtension& extension, Context* context) +void ClangRefactoring::fillContextMenu(ContextMenuExtension& extension, Context* context, QWidget* parent) { auto declContext = dynamic_cast(context); if (!declContext) { @@ -94,7 +94,7 @@ return; } - auto action = new QAction(i18n("Rename %1", declaration->qualifiedIdentifier().toString()), this); + auto action = new QAction(i18n("Rename %1", declaration->qualifiedIdentifier().toString()), parent); action->setData(QVariant::fromValue(IndexedDeclaration(declaration))); action->setIcon(QIcon::fromTheme(QStringLiteral("edit-rename"))); connect(action, &QAction::triggered, this, &ClangRefactoring::executeRenameAction); @@ -106,7 +106,7 @@ } action = new QAction( - i18n("Create separate definition for %1", declaration->qualifiedIdentifier().toString()), this); + i18n("Create separate definition for %1", declaration->qualifiedIdentifier().toString()), parent); action->setData(QVariant::fromValue(IndexedDeclaration(declaration))); connect(action, &QAction::triggered, this, &ClangRefactoring::executeMoveIntoSourceAction); extension.addAction(ContextMenuExtension::RefactorGroup, action); diff --git a/languages/qmljs/kdevqmljsplugin.h b/languages/qmljs/kdevqmljsplugin.h --- a/languages/qmljs/kdevqmljsplugin.h +++ b/languages/qmljs/kdevqmljsplugin.h @@ -39,7 +39,7 @@ KDevelop::ICodeHighlighting* codeHighlighting() const override; KDevelop::BasicRefactoring* refactoring() const override; - KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context) override; + KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; QWidget* specialLanguageObjectNavigationWidget(const QUrl& url, const KTextEditor::Cursor& position) override; private: diff --git a/languages/qmljs/kdevqmljsplugin.cpp b/languages/qmljs/kdevqmljsplugin.cpp --- a/languages/qmljs/kdevqmljsplugin.cpp +++ b/languages/qmljs/kdevqmljsplugin.cpp @@ -108,14 +108,14 @@ return m_refactoring; } -ContextMenuExtension KDevQmlJsPlugin::contextMenuExtension(Context* context) +ContextMenuExtension KDevQmlJsPlugin::contextMenuExtension(Context* context, QWidget* parent) { ContextMenuExtension cm; EditorContext *ec = dynamic_cast(context); if (ec && ICore::self()->languageController()->languagesForUrl(ec->url()).contains(this)) { // It's a QML/JS file, let's add our context menu. - m_refactoring->fillContextMenu(cm, context); + m_refactoring->fillContextMenu(cm, context, parent); } return cm; diff --git a/projectmanagers/qmake/qmakemanager.h b/projectmanagers/qmake/qmakemanager.h --- a/projectmanagers/qmake/qmakemanager.h +++ b/projectmanagers/qmake/qmakemanager.h @@ -42,7 +42,7 @@ static QMakeProjectManager* self(); - KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context) override; + KDevelop::ContextMenuExtension contextMenuExtension(KDevelop::Context* context, QWidget* parent) override; //BEGIN AbstractFileManager KDevelop::ProjectFolderItem* import( KDevelop::IProject* project ) override; diff --git a/projectmanagers/qmake/qmakemanager.cpp b/projectmanagers/qmake/qmakemanager.cpp --- a/projectmanagers/qmake/qmakemanager.cpp +++ b/projectmanagers/qmake/qmakemanager.cpp @@ -468,8 +468,10 @@ return nullptr; } -ContextMenuExtension QMakeProjectManager::contextMenuExtension(Context* context) +ContextMenuExtension QMakeProjectManager::contextMenuExtension(Context* context, QWidget* parent) { + Q_UNUSED(parent); + ContextMenuExtension ext; if (context->hasType(Context::ProjectItemContext)) { diff --git a/utils/okteta/oktetaplugin.h b/utils/okteta/oktetaplugin.h --- a/utils/okteta/oktetaplugin.h +++ b/utils/okteta/oktetaplugin.h @@ -48,7 +48,7 @@ ~OktetaPlugin() override; public: // KDevelop::IPlugin API - ContextMenuExtension contextMenuExtension( Context* context ) override; + ContextMenuExtension contextMenuExtension(Context* context, QWidget* parent) override; public: Kasten::ByteArrayViewProfileManager* viewProfileManager() const { return mViewProfileManager; } diff --git a/utils/okteta/oktetaplugin.cpp b/utils/okteta/oktetaplugin.cpp --- a/utils/okteta/oktetaplugin.cpp +++ b/utils/okteta/oktetaplugin.cpp @@ -104,13 +104,13 @@ documentController->registerDocumentForMimetype(QStringLiteral("application/octet-stream"), mDocumentFactory); } -ContextMenuExtension OktetaPlugin::contextMenuExtension( Context* context ) +ContextMenuExtension OktetaPlugin::contextMenuExtension(Context* context, QWidget* parent) { OpenWithContext* openWithContext = dynamic_cast( context ); if( openWithContext && !openWithContext->mimeType().inherits(QStringLiteral("inode/directory"))) { - QAction* openAction = new QAction( i18n("Hex Editor"), this ); + QAction* openAction = new QAction(i18n("Hex Editor"), parent); openAction->setIcon( QIcon::fromTheme(QStringLiteral("document-open")) ); openAction->setData( QVariant::fromValue(openWithContext->urls()) ); connect( openAction, &QAction::triggered, this, &OktetaPlugin::onOpenTriggered ); @@ -120,7 +120,7 @@ return contextMenuExtension; } - return KDevelop::IPlugin::contextMenuExtension( context ); + return KDevelop::IPlugin::contextMenuExtension(context, parent); } void OktetaPlugin::onOpenTriggered()