From e52eb353395f0751b4004910cfcaa5cc0c6a0e23 Mon Sep 17 00:00:00 2001 From: Pavel Dolgov Date: Tue, 5 Apr 2016 16:26:00 +0300 Subject: [PATCH] Javafx: In FXML completion for event handler show methods from controller's superclasses (IDEA-154115) --- .../plugins/javaFX/fxml/JavaFxCompletionTest.java | 5 +++++ .../javaFX/fxml/refs/JavaFxEventHandlerReference.java | 4 +++- .../javaFX/testData/completion/EventHandlerMethod.java | 8 ++++++++ .../testData/completion/EventHandlerMethodSuper.java | 8 ++++++++ .../javaFX/testData/completion/eventHandlerMethod.fxml | 5 +++++ 5 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 plugins/javaFX/testData/completion/EventHandlerMethod.java create mode 100644 plugins/javaFX/testData/completion/EventHandlerMethodSuper.java create mode 100644 plugins/javaFX/testData/completion/eventHandlerMethod.fxml diff --git a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFxCompletionTest.java b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFxCompletionTest.java index 3c533d836b6b..d19584f4f3e3 100644 --- a/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFxCompletionTest.java +++ b/plugins/javaFX/javaFX-CE/testSrc/org/jetbrains/plugins/javaFX/fxml/JavaFxCompletionTest.java @@ -217,6 +217,11 @@ public class JavaFxCompletionTest extends LightFixtureCompletionTestCase { doTest("ColumnConstraints"); } + public void testEventHandlerMethod() throws Exception { + configureAndComplete("EventHandlerMethod.java", "EventHandlerMethodSuper.java"); + assertSameElements(myFixture.getLookupElementStrings(), "onMyKeyTyped", "onSuperKeyTyped"); + } + public void testRawCollectionItem() throws Exception { configureAndComplete(); assertDoesntContain(myFixture.getLookupElementStrings(), "T", "Object", "java.lang.Object"); diff --git a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/refs/JavaFxEventHandlerReference.java b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/refs/JavaFxEventHandlerReference.java index fc2ab665c1b4..c1b52557d8b1 100644 --- a/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/refs/JavaFxEventHandlerReference.java +++ b/plugins/javaFX/src/org/jetbrains/plugins/javaFX/fxml/refs/JavaFxEventHandlerReference.java @@ -57,7 +57,7 @@ public class JavaFxEventHandlerReference extends PsiReferenceBase availableHandlers = new ArrayList(); - for (PsiMethod psiMethod : myController.getMethods()) { + for (PsiMethod psiMethod : myController.getAllMethods()) { if (isHandlerMethodSignature(psiMethod) && JavaFxPsiUtil.isVisibleInFxml(psiMethod)) { availableHandlers.add(psiMethod); } @@ -66,6 +66,8 @@ public class JavaFxEventHandlerReference extends PsiReferenceBase + + + +