mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
don't overwrite reference by Tab if it starts exactly after reference being completed (PY-6095)
This commit is contained in:
+2
-1
@@ -208,7 +208,8 @@ public class CompletionProgressIndicator extends ProgressIndicatorBase implement
|
||||
try {
|
||||
final int selectionEndOffset = initContext.getSelectionEndOffset();
|
||||
final PsiReference reference = initContext.getFile().findReferenceAt(selectionEndOffset);
|
||||
if (reference != null) {
|
||||
if (reference != null &&
|
||||
reference.getElement().getTextRange().getStartOffset() + reference.getRangeInElement().getStartOffset() != selectionEndOffset) {
|
||||
initContext.setReplacementOffset(findReplacementOffset(selectionEndOffset, reference));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -587,12 +587,18 @@ public class PythonCompletionTest extends PyTestCase {
|
||||
|
||||
public void testOverwriteEqualsSign() { // PY-1337
|
||||
doTestByText("def foo(school=None, kiga=None): pass\n" +
|
||||
"\n" +
|
||||
"foo(<caret>school=None)");
|
||||
myFixture.type("sch");
|
||||
myFixture.finishLookup(Lookup.REPLACE_SELECT_CHAR);
|
||||
myFixture.checkResult("def foo(school=None, kiga=None): pass\n" +
|
||||
"\n" +
|
||||
"foo(school=None)");
|
||||
}
|
||||
|
||||
public void testOverwriteBracket() { // PY-6095
|
||||
doTestByText("bar = {'a': '1'}\n" +
|
||||
"print ba<caret>['a']");
|
||||
myFixture.finishLookup(Lookup.REPLACE_SELECT_CHAR);
|
||||
myFixture.checkResult("bar = {'a': '1'}\n" +
|
||||
"print bar<caret>['a']");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user