Commit Graph

173 Commits

Author SHA1 Message Date
Roman Golyshev 2c12d26d28 KT-18538 Unwrap fake override in ShortenReferences
- Fake override prevents reference shortener from shortening of static
methods declared in the class bases when they are located not in
direct parent of the class (for example, in grand-
or grand-grand-parent)
- The completion uses descriptor with unwrapped fake override when it
performs the insertion. It leads to inserting the name of the base which
actually contains the static method instead of the direct parent class.
Now, when reference shortener compares unwrapped descriptors, this
problem should be fixed during insertion handling
2020-06-01 08:59:37 +00:00
Dmitry Gridin 11a3482970 tests: apply official code style
#KT-38632 Fixed
2020-05-07 12:36:44 +00:00
Roman Golyshev 90750483ee KT-36860 Collect extensions from object on first completion
- This should not affect the performance of the completion, since all
object extensions are collected on the last step, when all main variants
are already collected
- Add more tests
- Also, disable completion of extensions from objects as callable
references (^KT-37395 Fixed)
- ^KT-36860 Fixed
2020-03-11 13:31:56 +03:00
Roman Golyshev 3461effd47 KT-33372 Remove renaming file reference to the contents of the file
- There is still a hack with returning null from `getLastFileReference`,
it is here to keep KT-25674 issue fixed
- Overrides of `bindToElement` are removed, they caused renames of the
file references to their contents
- Code of `KotlinFilePathReferenceContributor.kt` is refactored
- ^KT-33372 ^KT-32514 ^KT-36306 Fixed
2020-02-16 17:08:11 +03:00
Roman Golyshev 3112d70420 KT-35042 Fix InsertHandlerProvider.kt to work with suspend functional parameters
- ^KT-35042 Fixed
- Also, fix review suggestions for KOTLIN-CR-3495
2019-11-29 14:55:22 +03:00
Toshiaki Kameyama 4d9b19da82 Remove comments from function/property implementation template
#KT-18539 Fixed
2019-11-13 08:37:25 +09:00
Roman Golyshev e89a87b2e3 KT-29926: Support completion of suspend lambda body and parameters
- ^KT-29926 Fixed
2019-11-08 19:24:05 +03:00
Roman Golyshev da4097f488 KT-29926: Support completion of suspend lambda parameters in the body
- `suspendLambdaSignature` directory is just a copy of `lambdaSignature`
2019-11-08 19:24:05 +03:00
Alexander Podkhalyuzin d2ae39489f SmartPointers in Smart Completion for anonymous object generation
#KT-32615 Fixed
2019-11-05 17:51:34 +03:00
Roman Golyshev 6560ecc82b KT-15286: Provide object member extensions in the completion
- Add extensions only when completion of static members is enabled (double ctrl + space and nonempty prefix)
- Add full import for callables with receiver in `LookupElement.decorateAsStaticMember`
2019-10-18 17:17:28 +03:00
Nikolay Krasko 2ec231f381 Minor: fix CompletionMultiFileHandlerTest test 2019-09-30 13:38:27 +03:00
Dmitry Gridin c185cecb40 Completion: fix shortening of fully qualified name for case of conflicts between property and function
#KT-31902 Fixed
#KT-33937 Fixed
2019-09-27 17:52:11 +07:00
Alexander Podkhalyuzin 9a2da67919 ShortenReferences: cleanup code & add tests for property-function conflicts 2019-09-27 17:52:11 +07:00
Alexander Podkhalyuzin cdebd6bc05 Fixed testdata as Enter shouldn't override completion 2019-09-26 16:25:50 +03:00
Dmitry Gridin 5dddc464a5 Completion: add tests for case with overloaded function with lambda with receiver parameter
Relates to #KT-31073
2019-09-23 23:20:26 +07:00
Dmitry Gridin a843c23f20 Completion: add root prefix support
#KT-10340 Fixed
2019-09-05 18:01:23 +07:00
Vladimir Dolzhenko 2d5a1e19d0 Perform GC between performance test runs, add geometric mean calculation and close stats in the end 2019-07-30 11:59:33 +02:00
Vladimir Dolzhenko 022275b781 Do not invalidate package caches on generic events, KT-25264 2019-07-19 09:14:26 +02:00
Toshiaki Kameyama 3a77b63c85 Completion: don't propose the same name for arguments of lambda (KT-9792)
#KT-9792 Fixed
2019-06-29 20:36:55 +03:00
Mikhail Zarechenskiy c03dfd1522 [IDE-NI-MIGRATE] Migrate completion tests for new inference 2019-05-06 13:59:26 +03:00
Toshiaki Kameyama fd262bcd8d Smart completion: fix anonymous object code style (KT-29572)
#KT-29572 Fixed
2019-03-14 15:35:44 +03:00
Toshiaki Kameyama ed9d53acaa Keyword completion: do not add braces after 'companion object' (KT-27915)
^KT-27915 Fixed
2019-01-05 19:00:25 +03:00
Toshiaki Kameyama 18ed031e7e Fix completion for back-ticked name (KT-19863, KT-19864)
^KT-19863 Fixed
^KT-19864 Fixed
2019-01-05 18:52:26 +03:00
Alexander Podkhalyuzin ed8aad6149 Override completion right after override modifier
#KT-25312 Fixed
2018-09-17 12:23:59 +03:00
Alexander Podkhalyuzin baa0f2dc1b Override completion in expect class should behave differently
Caret placement is at the end of new fun/property

#KT-25313 Fixed
2018-09-10 14:23:48 +03:00
Alexander Podkhalyuzin 04fd4ef9de Do not stop recursive visitor with return
#KT-23627 Fixed
2018-07-09 15:19:38 +03:00
Simon Ogorodnik 48fb3db7ba Fix inserting variable name suggestion on non-enter char typing
#KT-21933 fixed
2018-03-13 12:51:29 +03:00
Kirill Rakhman b567817d1f Make completion for overriding functions respect suspend modifier
Fixes #KT-22200
2018-01-16 15:42:03 +01:00
Toshiaki Kameyama 27e7f13335 Fix AssertionError on completing after template in string literal
#KT-16402 Fixed
2017-11-13 16:01:34 +03:00
Simon Ogorodnik 5778ace6b0 KT-20166: Replace type name when caret is at the end of param name
When caret is at the end ('f<caret>: Foo'), tokenAt was COLON,
not IDENTIFIER

#KT-20166 fixed
2017-10-25 18:07:01 +03:00
Valentin Kipyatkov 998814b1a1 Support for import aliases in both resolve and completion in KDoc 2017-08-08 22:06:04 +03:00
Valentin Kipyatkov 9361cd895c Support for import aliases in code completion
#KT-8848 Fixed
2017-08-08 22:06:04 +03:00
Simon Ogorodnik 33c22b8251 KT-8208: Support static members completion when receiver not-imported
#KT-8208 fixed
2017-07-04 16:41:50 +03:00
Denis Zharkov bc564af2fc Regenerate mockJDK using openJDK 7 2017-06-24 17:26:01 +03:00
Toshiaki Kameyama af941bfdf5 KT-18158 Expand selection should select the comment after expression getter on the same line (#1122)
* Expand selection should select the comment after expression getter on the same line #KT-18158 Fixed

* Fixed expand selection behavior for the declaration with comment #KT-18158

* Remove redundant code #KT-18158
2017-06-14 12:28:56 +02:00
Simon Ogorodnik bd2ad6a089 Tweak keyword completion for lateinit and companion object
#KT-13673 fixed
 #KT-12293 fixed
2017-04-25 14:42:50 +03:00
Simon Ogorodnik 02fec6e4a5 Add fine check of type inference when adding <> in completion
Add check if type inferred via type parameter of upper bound
 of extension receiver or value argument
 #KT-16161 fixed
2017-04-19 21:27:31 +03:00
Kirill Rakhman d44bf27ec3 Completion of keywords (like constructor) doesn't insert parentheses/braces if they're already there
#KT-15603 Fixed
 #KT-13524 Fixed
2017-04-13 13:41:41 +03:00
Valentin Kipyatkov f00ab135d6 Do not insert redundant space 2017-03-20 19:08:03 +03:00
Valentin Kipyatkov b5dd2cc540 Completion of lambda parameters
Also changed policy for sorting of smart completion items in basic completion

 #KT-16800 Fixed
 #KT-12002 Fixed
2017-03-20 19:08:02 +03:00
Simon Ogorodnik 2490318f93 KT-16076 Completion inserts FQN kotlin.text.String
KT-14831 Don't add import statement and FQN on converting lambda to reference if typealias is used
KT-16088 Completion wrongly inserts FQN for `kotlin` package
 #KT-16076 fixed
 #KT-14831 fixed
 #KT-16088 fixed
2017-02-13 16:48:14 +03:00
Simon Ogorodnik c2ba4e3ab9 KT-14252 Completion could suggest constructors available via typealiases
#KT-14252 fixed
2017-01-31 15:14:18 +03:00
Denis Zharkov f611e39a69 Fix return keyword completetion tests
Now suspendOrReturn is toplevel, so we should explicitly choose "return" item
2017-01-14 13:24:53 +03:00
Nikolay Krasko 2bb48fc802 Allow empty single-line bodies in property accessors 2016-12-14 13:40:44 +03:00
Ilya Gorbunov e787930673 Fix completion handler tests: use tail specifier to select one of multiple completion variants (eg 'kotlin.collections.ArrayList' vs 'java.util.ArrayList').
Replace aliased types imported by default with something else.
2016-11-16 18:47:42 +03:00
Ilya Gorbunov a62cda8365 Replace types that are imported by default via typealiases such as java.util.ArrayList with something else as it conflicts now with kotlin.collections.ArrayList and has to imported explicitly. 2016-11-16 18:47:42 +03:00
Valentin Kipyatkov 9b55ad82a0 KT-14370 Completion inserts fully qualified name for any Java interface with single abstract method (SAM-interface)
#KT-14370 Fixed
2016-11-08 19:14:41 +03:00
Valentin Kipyatkov a2ebf07a93 KT-14386 Smart completion: add "<parameter name> = true/false" choices
#KT-14386 Fixed
2016-11-07 18:28:23 +03:00
Valentin Kipyatkov 7ab2d0c951 KT-13810 Kotlin code completion missing last character
#KT-13810 Fixed
2016-10-18 11:56:59 +03:00
Valentin Kipyatkov f335f32b48 Some use of parameter names in completion 2016-10-11 23:38:48 +03:00