From 491333aaa41b4395e5a399790fc21af7085ad815 Mon Sep 17 00:00:00 2001 From: Dominic Scharfe Date: Tue, 26 Apr 2022 14:56:54 +0200 Subject: [PATCH] Bug 579758 - Codan marker resolution doesn't work with CEditor embedded in a multi page editor Adapt editorPart to ITextEditor to support more use cases Change-Id: I21e367e793bc17da263775b22ed13e82742be10f Signed-off-by: Dominic Scharfe --- .../cdt/codan/ui/AbstractCodanCMarkerResolution.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java b/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java index a4380223c53..4a6c5b4f2ba 100644 --- a/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java +++ b/codan/org.eclipse.cdt.codan.ui.cxx/src/org/eclipse/cdt/codan/ui/AbstractCodanCMarkerResolution.java @@ -35,6 +35,7 @@ import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.Adapters; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.jface.text.BadLocationException; @@ -177,12 +178,8 @@ public abstract class AbstractCodanCMarkerResolution implements ICodanMarkerReso * @return the document of that part */ protected IDocument openDocument(IEditorPart editorPart) { - if (editorPart instanceof ITextEditor) { - ITextEditor editor = (ITextEditor) editorPart; - IDocument doc = editor.getDocumentProvider().getDocument(editor.getEditorInput()); - return doc; - } - return null; + ITextEditor textEditor = Adapters.adapt(editorPart, ITextEditor.class); + return textEditor == null ? null : textEditor.getDocumentProvider().getDocument(textEditor.getEditorInput()); } /**