diff --git a/idea/src/org/jetbrains/kotlin/idea/editor/wordSelection/KotlinClassMemberSelectioner.kt b/idea/src/org/jetbrains/kotlin/idea/editor/wordSelection/KotlinClassMemberSelectioner.kt index 32feac4b452..7c00edde4cf 100644 --- a/idea/src/org/jetbrains/kotlin/idea/editor/wordSelection/KotlinClassMemberSelectioner.kt +++ b/idea/src/org/jetbrains/kotlin/idea/editor/wordSelection/KotlinClassMemberSelectioner.kt @@ -24,7 +24,10 @@ class KotlinClassMemberSelectioner : ExtendWordSelectionHandlerBase() { val lastChild = parent.lastChild ?: return null val startElement = firstChild.getNextSiblingIgnoringWhitespace() ?: firstChild val endElement = lastChild.getPrevSiblingIgnoringWhitespace() ?: lastChild - val textRange = TextRange(startElement.textRange.startOffset, endElement.textRange.endOffset) + val startOffset = startElement.textRange.startOffset + val endOffset = endElement.textRange.endOffset + if (startOffset >= endOffset) return null + val textRange = TextRange(startOffset, endOffset) return expandToWholeLinesWithBlanks(editorText, textRange) } } \ No newline at end of file diff --git a/idea/testData/wordSelection/Class/0.kt b/idea/testData/wordSelection/Class/0.kt new file mode 100644 index 00000000000..50b547b5120 --- /dev/null +++ b/idea/testData/wordSelection/Class/0.kt @@ -0,0 +1,3 @@ +class SimpleClass { + +} \ No newline at end of file diff --git a/idea/testData/wordSelection/Class/1.kt b/idea/testData/wordSelection/Class/1.kt new file mode 100644 index 00000000000..137138ff46b --- /dev/null +++ b/idea/testData/wordSelection/Class/1.kt @@ -0,0 +1,3 @@ +class SimpleClass { + +} \ No newline at end of file diff --git a/idea/testData/wordSelection/Class/2.kt b/idea/testData/wordSelection/Class/2.kt new file mode 100644 index 00000000000..a0e07bf6186 --- /dev/null +++ b/idea/testData/wordSelection/Class/2.kt @@ -0,0 +1,3 @@ +class SimpleClass { + +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/WordSelectionTest.java b/idea/tests/org/jetbrains/kotlin/idea/WordSelectionTest.java index 7f31fdaffa5..99139690080 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/WordSelectionTest.java +++ b/idea/tests/org/jetbrains/kotlin/idea/WordSelectionTest.java @@ -112,6 +112,10 @@ public class WordSelectionTest extends KotlinLightCodeInsightFixtureTestCase { doTest(); } + public void testClass() { + doTest(); + } + public void testDeclarationWithComment1() { doTest(); } public void testDeclarationWithComment2() { doTest(); } public void testDeclarationWithComment3() { doTest(); }