From f247b3141cc61928bc5f38ed64be2f92b5d4e10a Mon Sep 17 00:00:00 2001 From: Nathan Ridge Date: Sat, 31 Dec 2016 03:31:26 -0500 Subject: [PATCH] Bug 509798 - Use CElementHyperlinkDetector for assembly editors Change-Id: Ie9bf16f00f8ae8c3f5cd1a51c441392fed4fc491 --- .../ui/editor/CElementHyperlinkDetector.java | 3 ++- .../cdt/ui/text/AsmSourceViewerConfiguration.java | 14 +++++++++++--- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java index d6eb83cba25..15b49eff20b 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/editor/CElementHyperlinkDetector.java @@ -38,6 +38,7 @@ import org.eclipse.cdt.core.model.ICLanguageKeywords; import org.eclipse.cdt.core.model.ILanguage; import org.eclipse.cdt.core.model.IWorkingCopy; import org.eclipse.cdt.ui.CUIPlugin; +import org.eclipse.cdt.ui.ICModelBasedEditor; import org.eclipse.cdt.ui.text.ICPartitions; import org.eclipse.cdt.internal.core.model.ASTCache.ASTRunnable; @@ -54,7 +55,7 @@ public class CElementHyperlinkDetector extends AbstractHyperlinkDetector { @Override public IHyperlink[] detectHyperlinks(final ITextViewer textViewer, final IRegion region, boolean canShowMultipleHyperlinks) { ITextEditor textEditor= getAdapter(ITextEditor.class); - if (region == null || !(textEditor instanceof CEditor)) + if (region == null || !(textEditor instanceof ICModelBasedEditor)) return null; final IAction openAction= textEditor.getAction("OpenDeclarations"); //$NON-NLS-1$ diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/AsmSourceViewerConfiguration.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/AsmSourceViewerConfiguration.java index 1bde5ba0c7b..e2b88444ea9 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/AsmSourceViewerConfiguration.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/text/AsmSourceViewerConfiguration.java @@ -12,8 +12,11 @@ package org.eclipse.cdt.ui.text; +import java.util.Map; + import org.eclipse.core.resources.IFile; import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IAdaptable; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.runtime.content.IContentType; @@ -377,6 +380,11 @@ public class AsmSourceViewerConfiguration extends TextSourceViewerConfiguration } }; } -} - - + + @Override + protected Map getHyperlinkDetectorTargets(ISourceViewer sourceViewer) { + Map targets= super.getHyperlinkDetectorTargets(sourceViewer); + targets.put("org.eclipse.cdt.ui.cCode", fTextEditor); //$NON-NLS-1$ + return targets; + } +} \ No newline at end of file