From a4bdb59ae771223c2b0b14062b62cfb06cfe9246 Mon Sep 17 00:00:00 2001 From: Anton Lobov Date: Thu, 17 Oct 2024 11:01:52 +0200 Subject: [PATCH] [amper] AMPER-3571 Cursor jumps into existing configuration after toggling nested completion GitOrigin-RevId: 3cc359151926932a360cfa05cb1d2e5dc11c66fb --- .../impl/nestedCompletions/NestedCompletions.kt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/json/src/com/jetbrains/jsonSchema/impl/nestedCompletions/NestedCompletions.kt b/json/src/com/jetbrains/jsonSchema/impl/nestedCompletions/NestedCompletions.kt index 1f038273c0be..9bde687f3706 100644 --- a/json/src/com/jetbrains/jsonSchema/impl/nestedCompletions/NestedCompletions.kt +++ b/json/src/com/jetbrains/jsonSchema/impl/nestedCompletions/NestedCompletions.kt @@ -241,12 +241,12 @@ private fun addBeforeOrAfter(value: JsonValueAdapter, fakeProperty: PsiElement?): PsiElement { val properties = value.asObject?.propertyList.orEmpty() val firstProperty = properties.firstOrNull() - val lastProperty = properties.lastOrNull() - return if (lastProperty != null && element.startOffset >= lastProperty.delegate.endOffset) { - val newElement = value.delegate.addAfter(elementToAdd, lastProperty.delegate) - if (lastProperty.delegate != fakeProperty) { + val lastPropertyBefore = properties.lastOrNull { element.startOffset >= it.delegate.endOffset } + return if (lastPropertyBefore != null) { + val newElement = value.delegate.addAfter(elementToAdd, lastPropertyBefore.delegate) + if (lastPropertyBefore.delegate != fakeProperty) { JsonLikePsiWalker.getWalker(newElement)?.getSyntaxAdapter(newElement.project)?.ensureComma( - lastProperty.delegate, newElement + lastPropertyBefore.delegate, newElement ) } newElement