diff --git a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java index ff6658c16dd..b7df44d6817 100644 --- a/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java +++ b/idea/src/org/jetbrains/jet/plugin/codeInsight/OverrideImplementMethodsHandler.java @@ -271,6 +271,9 @@ public abstract class OverrideImplementMethodsHandler implements LanguageCodeIns if (visibility == JavaDescriptorResolver.PACKAGE_VISIBILITY) { return "internal "; } + if (visibility == JavaDescriptorResolver.PROTECTED_AND_PACKAGE) { + return "protected "; + } return visibility.toString() + " "; } diff --git a/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt new file mode 100644 index 00000000000..bfe41a2f9d3 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt @@ -0,0 +1,7 @@ +package foo + +import foo.Intf + +class Impl(): Intf() { + +} diff --git a/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt.after b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt.after new file mode 100644 index 00000000000..9619b14ac14 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Impl.kt.after @@ -0,0 +1,10 @@ +package foo + +import foo.Intf + +class Impl(): Intf() { + + protected override fun getFooBar(): String? { + return super.getFooBar() + } +} diff --git a/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Intf.java b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Intf.java new file mode 100644 index 00000000000..63d29e0d477 --- /dev/null +++ b/idea/testData/codeInsight/overrideImplement/javaMethodWithPackageProtectedVisibility/foo/Intf.java @@ -0,0 +1,7 @@ +package foo; + +public class Intf { + protected String getFooBar() { + return "OK"; + } +} diff --git a/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java b/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java index 0514f14883e..8ba064bbfaa 100644 --- a/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java +++ b/idea/tests/org/jetbrains/jet/plugin/codeInsight/OverrideImplementTest.java @@ -142,6 +142,10 @@ public class OverrideImplementTest extends LightCodeInsightFixtureTestCase { doOverrideDirectoryTest("getFooBar"); } + public void testJavaMethodWithPackageProtectedVisibility() { + doOverrideDirectoryTest("getFooBar"); + } + public void testInheritVisibilities() { doMultiOverrideFileTest(); }