From 97109b524652909714849e913d407ad056076183 Mon Sep 17 00:00:00 2001 From: Till Brychcy Date: Thu, 31 Jul 2025 17:10:40 +0200 Subject: [PATCH 1/2] Make "Compare with Clipboard" work in active editor of FormEditor e.g. m2e's MavenPomEditor or PDE's ManifestEditor Signed-off-by: Till Brychcy --- .../org/eclipse/compare/internal/ClipboardCompare.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardCompare.java b/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardCompare.java index 02e8b1e0ac1..22284abac94 100644 --- a/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardCompare.java +++ b/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardCompare.java @@ -43,6 +43,7 @@ import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.IWorkbenchPart; import org.eclipse.ui.PlatformUI; +import org.eclipse.ui.forms.editor.FormEditor; import org.eclipse.ui.texteditor.ITextEditor; public class ClipboardCompare extends BaseCompareAction implements IObjectActionDelegate { @@ -88,6 +89,9 @@ private void processComparison(IFile file, Shell parentShell) throws IOException return; } final String selectionContents; + if (editor instanceof FormEditor fromEditor) { + editor = fromEditor.getActiveEditor(); + } if (editor instanceof ITextEditor txtEditor) { ISelection selection = txtEditor.getSelectionProvider().getSelection(); if (selection instanceof ITextSelection textSelection) { From 9234bd48fa929d478d21e496f321cf2b70bcd3cc Mon Sep 17 00:00:00 2001 From: Till Brychcy Date: Fri, 1 Aug 2025 08:55:36 +0200 Subject: [PATCH 2/2] Make "Replace with Clipboard" work in active editor of FormEditor e.g. m2e's MavenPomEditor or PDE's ManifestEditor Signed-off-by: Till Brychcy --- .../org/eclipse/compare/internal/ClipboardReplace.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardReplace.java b/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardReplace.java index 638547796a4..065fb97d38a 100644 --- a/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardReplace.java +++ b/team/bundles/org.eclipse.compare/compare/org/eclipse/compare/internal/ClipboardReplace.java @@ -31,6 +31,7 @@ import org.eclipse.ui.IFileEditorInput; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.PlatformUI; +import org.eclipse.ui.forms.editor.FormEditor; import org.eclipse.ui.texteditor.ITextEditor; public class ClipboardReplace extends BaseCompareAction { @@ -42,6 +43,9 @@ protected void run(ISelection selection) { try { IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); IEditorPart editor = page.getActiveEditor(); + if (editor instanceof FormEditor fromEditor) { + editor = fromEditor.getActiveEditor(); + } IEditorInput input = editor.getEditorInput(); if (input instanceof IFileEditorInput ed) { IFile file2 = ed.getFile();