Commit Graph

309 Commits

Author SHA1 Message Date
peter 0112b8aaa8 IDEA-206386 Stream.toUnmodifiableList autocompletion (and mockJDK-11 to test it) 2019-02-01 11:42:45 +01:00
peter 70a719c87a java completion: don't insert method type arguments if they weren't inferred (IDEA-198368) 2019-01-10 15:22:42 +01:00
peter 7486e9b9ef IDEA-202262 Wrong cursor position, when IDEA autocompletes List.of(), Set.of() and other Java 9 factory methods for Collections 2019-01-03 12:40:08 +01:00
Tagir Valeev 36fee2ff50 Fix ExpectedTypesProvider for completion inside switch expressions (IDEA-204680)
Review ID: IDEA-CR-41558
2018-12-25 12:50:07 +07:00
Anna.Kozlova 17814f726e revert testdata change 2018-12-19 19:20:55 +01:00
Anna.Kozlova a72e208a09 completion for older java versions: allow boxing even to specify explicit type arguments later when needed
fixing SmartTypeCompletionTest#testIfConditionExpectedType, consequence of changing expected type for condition from boxed to primitive
2018-12-19 14:53:41 +01:00
Tagir Valeev 5406243e49 TailTypes#CASE_ARROW: do not add if arrow is present even with different spacing (IDEA-204074) 2018-12-12 13:08:18 +07:00
Tagir Valeev 6ea7ea44c2 Code completion updates for enhanced switches (IDEA-202340)
- Support inside switch expression
- Support rule-based labels
- Support break inside expression
- Suggest 'switch' keyword in expressions
- Insert ':' or '->' depending on the switch type
2018-12-08 16:30:42 +07:00
peter 12db18b111 java completion: don't suggest overridden members if they match by middle of the name (IDEA-195106) 2018-11-22 15:30:03 +01:00
Roman Shevchenko a6338c60ec [java] value breaks: completion fixes (IDEA-196643) 2018-11-21 18:30:44 +01:00
peter 03fd1b00f5 disable completion after enum constant (IDEA-199935) 2018-10-05 18:22:23 +02:00
peter f0ca8898ab IDEA-199491 PsiInvalidElementAccessException on completion 2018-09-26 13:25:41 +02:00
Dmitry Jemerov 8d906207d4 Allow passing additional prefix to CompletionServiceImpl.handleCompletionItemSelected() 2018-07-02 19:19:56 +02:00
Tagir Valeev d6225c87b7 TypeConstraint#union: fixed possible inconvertibility with inconsistent hierarchy
Fixes EA-123372 - NPE: AbstractStreamEx.lambda$foldLeft$
2018-06-26 15:38:48 +07:00
peter 1da11d0a35 java completion: enable package suggestions inside type arguments (IDEA-193049) 2018-06-04 15:45:38 +02:00
peter b2d683fcd4 IDEA-192382 Override unused imports when adding class with same name 2018-06-01 13:57:35 +02:00
peter 987368ccfd IDEA-191883 "Tab" completion doesn't work as expected for inner classes 2018-05-16 18:35:13 +02:00
peter df915d8685 IDEA-188425 Add getInstance option in completion popup 2018-05-02 11:37:04 +02:00
Dmitry Jemerov e5ddee0216 API for handling selected completion item actually works; added test
IDEA-CR-31904
2018-04-19 15:18:31 +02:00
Tagir Valeev 5fe4a9b691 GuessManagerImpl: box values on fast-path; disable DFA on primitive types at all
Fixes IDEA-189340 Does not show Number methods during auto completion
2018-04-05 11:46:42 +07:00
Tagir Valeev f566678742 TypeConstraint#withSupers: fixed SOE on circular hierarchy (IDEA-CR-31134) 2018-04-03 10:02:14 +07:00
Tagir Valeev ea96b276bb TypeConstraint: fix deep hierarchy union (IDEA-CR-31134) 2018-03-30 13:30:43 +07:00
Tagir Valeev c7f7093a96 IDEA-86242 Code completion do not suggest members of known common supertype 2018-03-28 10:33:02 +07:00
peter f8b88fec42 java completion: don't always cast qualifier when return type is narrowed (IDEA-186652, IDEA-186609)
only when that narrowed type is expected
2018-02-14 22:12:48 +01:00
peter d8762e94d8 cast qualifier when return type is narrowed (IDEA-185364) 2018-02-05 19:07:26 +01:00
Tagir Valeev 1e0612c56a AssignmentTwicePreciseTypeDfa test fixed (imports restored) 2018-01-30 09:54:02 +07:00
Tagir Valeev d0f2bde3a8 GuessManagerImpl: type inference fixes 2018-01-29 16:40:51 +07:00
Tagir Valeev 97aa63f410 GuessManagerImpl: do not run DFA if all assignments/initializations have the same r-value type
Fixes IDEA-185290 Too long time takes filling of Ctrl+Space list. (fast code insertion)
2018-01-29 16:12:55 +07:00
Tagir Valeev 6cb1553fdf JavaCompletionUtil: do not add an unnecessary cast if hierarchy signature has several levels
Fixes IDEA-185554 Redundant cast on autocompletion
2018-01-26 15:07:46 +07:00
Tagir Valeev af97567674 IDEA-184733 Better array access tracking in DFA 2018-01-10 12:26:47 +07:00
peter d4ab5f0efb java completion: don't delete everything if class name coincides with package (IDEA-180284) 2018-01-08 20:52:44 +01:00
Tagir Valeev 390cec4927 TypeConstraint#union: smarter merge of supertypes
union("is X, Y; not SubX", "is SubX, Y") now produces "is X, Y"; before it was "is Y".
Fixes IDEA-184153 Smart-cast completion fails
2017-12-22 12:42:40 +07:00
Tagir Valeev 6c4367b679 Revert "JavaCompletionUtil: use findMethodInSuperClassBySignatureInDerived" (e9f00a8) + test
It appears that findMethodInSuperClassBySignatureInDerived does not substitute recursively, at least in some cases.
2017-12-11 11:46:41 +07:00
Tagir Valeev af2f419e5f ExpressionTypeMemoryState:isSuperStateOf to check additional field
Fixes IDEA-183267 Completion based on instanceof is gone
2017-12-06 17:19:53 +07:00
Tagir Valeev f38a359e18 IDEA-182988 Spurious collection cast on completion Set -> HashSet 2017-12-04 11:58:51 +07:00
peter 20cee42f50 migrate NormalCompletionTest to use jdk 9, add test for IDEA-88939 2017-12-02 08:47:00 +01:00
Tagir Valeev 8673ad67aa IDEA-182822 Raw type completion options are suggested when actual expression type is inferred 2017-11-29 17:59:35 +07:00
Tagir Valeev d47671a183 Test for IDEA-181794 Suggest completion items with type casts in stream chains
The functionality was implemented automatically after a combination of earlier commits: 9fedf66f and 80e63e2
2017-11-22 14:33:42 +07:00
peter 724e2c37e5 IDEA-182417 Smart cast completion fails on a specific declarations 2017-11-21 12:18:12 +01:00
Tagir Valeev 9fedf66ff5 GuessManagerImpl: support type constrains from DFA, various improvements
Partially fixes IDEA-181794 Suggest completion items with type casts in stream chains if there exists 'filter(x -> x instanceof Foo)' call
Fixes IDEA-182455 Code completion: resolve actual value type assigned to local variable
2017-11-21 11:00:54 +07:00
Tagir Valeev 0dbef4cc6b GuessManagerImpl: minimal assignment handling 2017-11-20 16:11:26 +07:00
peter fbbb381483 IDEA-181657 Completion items with type casts derived from control flow are not suggested if there are several nested checks from different paths of hierarchy 2017-11-08 10:01:07 +01:00
peter 30867ebca3 java: don't complete non-annotation-methods inside incorrect annotation 2017-11-03 17:28:26 +01:00
peter 969a93d5a8 IDEA-179864 Autocomplete does not handle generics when method has parameters 2017-10-04 16:12:59 +02:00
peter bbc6baa91e IDEA-178535 Duplicate class suggestions in cast 2017-09-16 19:11:43 +02:00
peter 0f8897cacb IDEA-178141 Case sensitive completion: First Letter - doesn't work correctly if class starts with special symbol 2017-09-13 10:31:21 +02:00
peter ee3d96da1a IDEA-177895 Completion items with type casts derived from control flow are not suggested for 'this' 2017-08-31 17:39:08 +02:00
peter d562896618 a test for IDEA-174819 Following annotation is removed on autocomplete 2017-08-16 19:57:19 +02:00
peter 75179fcfef IDEA-177034 A qualified class name should be suggested when there's a shadowing type parameter 2017-08-14 19:13:11 +02:00
peter d78fe7b18f IDEA-177166 Unexpected call completion in package statement 2017-08-14 19:13:11 +02:00