Smart completion: more correct Tab key handling

#KT-4954 Fixed
This commit is contained in:
Valentin Kipyatkov
2014-04-25 22:17:13 +04:00
parent 5f931be39b
commit 9ae59db329
22 changed files with 248 additions and 43 deletions
@@ -0,0 +1,8 @@
package sample
fun foo(s: String){
val s1: String = <caret>
}
//ELEMENT: s
//CHAR: \t
@@ -0,0 +1,8 @@
package sample
fun foo(s: String){
val s1: String = s<caret>
}
//ELEMENT: s
//CHAR: \t
@@ -0,0 +1,7 @@
fun foo(p: Int): Int = p
fun f(p: Int): Int {
return <caret>foo(1)
}
//ELEMENT: p
@@ -0,0 +1,7 @@
fun foo(p: Int): Int = p
fun f(p: Int): Int {
return p<caret>foo(1)
}
//ELEMENT: p
@@ -0,0 +1,10 @@
fun foo(s: String, c: Char){ }
fun takeString(p: Int): String? = null
fun bar() {
foo(<caret>qqq(1, 2, 3))
}
// ELEMENT_TEXT: "!! takeString"
// CHAR: \t
@@ -0,0 +1,10 @@
fun foo(s: String, c: Char){ }
fun takeString(p: Int): String? = null
fun bar() {
foo(takeString(<caret>1, 2, 3)!!, )
}
// ELEMENT_TEXT: "!! takeString"
// CHAR: \t
@@ -0,0 +1,8 @@
fun foo(s: String){ }
fun bar(sss: String) {
foo(<caret>x())
}
//ELEMENT: sss
//CHAR: \t
@@ -0,0 +1,8 @@
fun foo(s: String){ }
fun bar(sss: String) {
foo(sss)<caret>
}
//ELEMENT: sss
//CHAR: \t
@@ -0,0 +1,9 @@
fun foo(p: Int): Int = p
fun bar(p: Int): Int = p
fun f(): Int {
return <caret>foo(1)
}
//ELEMENT: bar
//CHAR: \t
@@ -0,0 +1,9 @@
fun foo(p: Int): Int = p
fun bar(p: Int): Int = p
fun f(): Int {
return bar(<caret>1)
}
//ELEMENT: bar
//CHAR: \t
@@ -0,0 +1,9 @@
fun foo(p: Int): Int = p
fun bar(): Int = p
fun f(): Int {
return <caret>foo(1)
}
//ELEMENT: bar
//CHAR: \t
@@ -0,0 +1,9 @@
fun foo(p: Int): Int = p
fun bar(): Int = p
fun f(): Int {
return bar()<caret>
}
//ELEMENT: bar
//CHAR: \t
@@ -0,0 +1,10 @@
fun foo(s: String, i: Int){ }
fun takeString(p: Int): String = ""
fun bar() {
foo(<caret>x(1))
}
//ELEMENT: takeString
//CHAR: \t
@@ -0,0 +1,10 @@
fun foo(s: String, i: Int){ }
fun takeString(p: Int): String = ""
fun bar() {
foo(takeString(<caret>1), )
}
//ELEMENT: takeString
//CHAR: \t