[401838] Filter property tester bothers non-StructuredTextEditors
diff --git a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/propertytester/CustomFilterPropertyTester.java b/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/propertytester/CustomFilterPropertyTester.java
index d1cd362..41b7d3c 100644
--- a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/propertytester/CustomFilterPropertyTester.java
+++ b/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/internal/propertytester/CustomFilterPropertyTester.java
@@ -12,7 +12,9 @@
import org.eclipse.core.expressions.PropertyTester;
import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.texteditor.ITextEditor;
import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
+import org.eclipse.wst.sse.ui.StructuredTextEditor;
import org.eclipse.wst.sse.ui.internal.contentoutline.ConfigurableContentOutlinePage;
public class CustomFilterPropertyTester extends PropertyTester {
@@ -23,9 +25,12 @@
* java.lang.String, java.lang.Object[], java.lang.Object)
*/
public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
- if (receiver instanceof IEditorPart){
- IContentOutlinePage outlinePage = (IContentOutlinePage) ((IEditorPart) receiver).getAdapter(IContentOutlinePage.class);
- return (outlinePage instanceof ConfigurableContentOutlinePage && outlinePage.getControl() != null && !outlinePage.getControl().isDisposed());
+ if (receiver instanceof IEditorPart) {
+ Object textEditor = ((IEditorPart) receiver).getAdapter(ITextEditor.class);
+ if (textEditor instanceof StructuredTextEditor) {
+ IContentOutlinePage outlinePage = (IContentOutlinePage) ((IEditorPart) receiver).getAdapter(IContentOutlinePage.class);
+ return (outlinePage instanceof ConfigurableContentOutlinePage && outlinePage.getControl() != null && !outlinePage.getControl().isDisposed());
+ }
}
return false;
}