mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
fixed PY-9260 Unwrap/Remove action is not available inside statement with caret on indented space
This commit is contained in:
@@ -1177,7 +1177,7 @@ public class PyUtil {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static PsiElement findNonWhitespaceAtOffset(PsiFile psiFile, int caretOffset) {
|
||||
public static PsiElement findPrevNonWhitespaceAtOffset(PsiFile psiFile, int caretOffset) {
|
||||
PsiElement element = psiFile.findElementAt(caretOffset);
|
||||
if (element == null) {
|
||||
return null;
|
||||
@@ -1195,6 +1195,14 @@ public class PyUtil {
|
||||
return element instanceof PsiWhiteSpace ? null : element;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static PsiElement findNonWhitespaceAtOffset(PsiFile psiFile, int caretOffset) {
|
||||
PsiElement element = findNextNonWhitespaceAtOffset(psiFile, caretOffset);
|
||||
if (element == null)
|
||||
element = findPrevNonWhitespaceAtOffset(psiFile, caretOffset);
|
||||
return element;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static PsiElement findNextNonWhitespaceAtOffset(@NotNull final PsiFile psiFile, int caretOffset) {
|
||||
PsiElement element = psiFile.findElementAt(caretOffset);
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
print 1
|
||||
print 2
|
||||
@@ -0,0 +1,4 @@
|
||||
|
||||
if True:
|
||||
<caret> print 1
|
||||
print 2
|
||||
@@ -50,6 +50,8 @@ public class PyUnwrapperTest extends PyTestCase {
|
||||
|
||||
public void testIfInElifBranchUnwrap() throws Throwable {doNegativeTest(PyBundle.message("unwrap.if"));}
|
||||
|
||||
public void testWhitespaceAtCaretUnwrap() throws Throwable {doTest();}
|
||||
|
||||
private void doTest() {
|
||||
doTest(0);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user