Skip to content

Commit

Permalink
Merge #9556
Browse files Browse the repository at this point in the history
9556: IDE: Temporary disable adding imports after pasting code r=dima74 a=dima74

Looks like ["Insert imports on paste"](#7597) may be slow (https://youtrack.jetbrains.com/issue/VIM-2769, #9441 (comment)), so lets disable it by default for now


Co-authored-by: Dmitry Murzin <diralik@yandex.ru>
  • Loading branch information
bors[bot] and dima74 committed Oct 17, 2022
2 parents 8c9d70b + ca7c879 commit cec1216
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 2 deletions.
Expand Up @@ -18,7 +18,7 @@ class RsCodeInsightSettings : PersistentStateComponent<RsCodeInsightSettings> {
var importOutOfScopeItems: Boolean = true
var suggestOutOfScopeItems: Boolean = true
var addUnambiguousImportsOnTheFly: Boolean = false
var importOnPaste: Boolean = true
var importOnPaste: Boolean = false

override fun getState(): RsCodeInsightSettings = this

Expand Down
Expand Up @@ -9,6 +9,7 @@ import com.intellij.openapi.actionSystem.IdeActions
import org.intellij.lang.annotations.Language
import org.rust.RsTestBase
import org.rust.fileTreeFromText
import org.rust.ide.settings.RsCodeInsightSettings

class RsAddImportOnCopyPasteTest : RsTestBase() {
fun `test type reference`() = doCopyPasteTest("""
Expand Down Expand Up @@ -612,7 +613,7 @@ class RsAddImportOnCopyPasteTest : RsTestBase() {
private fun doCopyPasteTest(
@Language("Rust") before: String,
@Language("Rust") after: String
) {
) = withImportOnPaste {
val testProject = fileTreeFromText(before).create()
myFixture.configureFromTempProjectFile(testProject.fileWithSelection)
myFixture.performEditorAction(IdeActions.ACTION_COPY)
Expand All @@ -622,4 +623,15 @@ class RsAddImportOnCopyPasteTest : RsTestBase() {

fileTreeFromText(after).assertEquals(myFixture.findFileInTempDir("."))
}

private fun withImportOnPaste(action: () -> Unit) {
val settings = RsCodeInsightSettings.getInstance()
val oldValue = settings.importOnPaste
settings.importOnPaste = true
try {
action()
} finally {
settings.importOnPaste = oldValue
}
}
}

0 comments on commit cec1216

Please sign in to comment.